@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,384 @@
1
+ /**
2
+ * Copyright 2025 The Artinet Project
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { A2A } from "../types/index.js";
6
+ import { v4 as uuidv4 } from "uuid";
7
+ import { getCurrentTimestamp } from "../utils/common/utils.js";
8
+ import { isMessageParams, Message,
9
+ // type BuilderMessageParams,
10
+ } from "./message-builder.js";
11
+ export const isArtifactParams = (params) => {
12
+ return (typeof params === "string" ||
13
+ (typeof params === "object" && params !== null && "parts" in params));
14
+ };
15
+ export class Artifact {
16
+ _artifact;
17
+ constructor(artifact_params = {}) {
18
+ this._artifact = {
19
+ artifactId: uuidv4(),
20
+ parts: [],
21
+ ...artifact_params,
22
+ };
23
+ }
24
+ get artifact() {
25
+ return this._artifact;
26
+ }
27
+ static create(params = {}) {
28
+ return new Artifact(typeof params === "string"
29
+ ? { parts: [{ text: params, kind: "text" }] }
30
+ : params).artifact;
31
+ }
32
+ }
33
+ export const artifact = Artifact.create;
34
+ export const isStatusParams = (params) => {
35
+ return (typeof params === "string" ||
36
+ (typeof params === "object" &&
37
+ params !== null &&
38
+ "state" in params &&
39
+ params.state in A2A.TaskState) ||
40
+ (typeof params === "object" &&
41
+ params !== null &&
42
+ "message" in params &&
43
+ isMessageParams(params.message)));
44
+ };
45
+ export class TaskStatus {
46
+ _status;
47
+ constructor(params = {}) {
48
+ const timestamp = params.timestamp ?? getCurrentTimestamp();
49
+ this._status = {
50
+ ...params,
51
+ state: params.state ?? A2A.TaskState.working,
52
+ timestamp,
53
+ };
54
+ }
55
+ get status() {
56
+ return this._status;
57
+ }
58
+ static create(params = {}) {
59
+ if (typeof params === "string" && params in A2A.TaskState) {
60
+ return new TaskStatus({ state: params }).status;
61
+ }
62
+ else if (isMessageParams(params)) {
63
+ return new TaskStatus({
64
+ state: A2A.TaskState.working,
65
+ message: Message.create(params),
66
+ }).status;
67
+ }
68
+ return new TaskStatus(params).status;
69
+ }
70
+ }
71
+ /**
72
+ * Convenience factory function for creating a task status with default parameters.
73
+ *
74
+ * @returns New {@link A2A.TaskStatus} with default parameters
75
+ * @defaults {
76
+ * state: "working",
77
+ * timestamp: getCurrentTimestamp(),
78
+ * }
79
+ *
80
+ * @example
81
+ * ```typescript
82
+ * const status = status("working");
83
+ * ```
84
+ *
85
+ * @public
86
+ * @since 0.6.0
87
+ */
88
+ export const status = TaskStatus.create;
89
+ export class Task {
90
+ _task;
91
+ constructor(params = {}) {
92
+ const id = params.id ?? uuidv4();
93
+ this._task = {
94
+ ...params,
95
+ id,
96
+ contextId: params.contextId ?? id,
97
+ kind: A2A.Kind.task,
98
+ status: TaskStatus.create(params.status),
99
+ };
100
+ }
101
+ get task() {
102
+ return this._task;
103
+ }
104
+ static create(params = {}) {
105
+ if (isStatusParams(params)) {
106
+ return new Task({ status: TaskStatus.create(params) }).task;
107
+ }
108
+ return new Task(params).task;
109
+ }
110
+ }
111
+ /**
112
+ * Convenience factory function for creating a task with default parameters.
113
+ *
114
+ * @returns New {@link A2A.Task} with default parameters
115
+ * @defaults:
116
+ * - `id`: uuidv4()
117
+ * - `contextId`: id
118
+ * - `status`: { state: "working" }
119
+ * @example
120
+ * ```typescript
121
+ * const task = task({ status: { state: "working" } });
122
+ * ```
123
+ *
124
+ * @public
125
+ * @since 0.6.0
126
+ */
127
+ export const task = Task.create;
128
+ export class TaskStatusUpdateEvent {
129
+ _event;
130
+ constructor(params) {
131
+ const taskId = params.taskId ?? params.status.message?.taskId ?? uuidv4();
132
+ const contextId = params.contextId ?? params.status.message?.contextId ?? taskId;
133
+ this._event = {
134
+ ...params,
135
+ taskId,
136
+ contextId,
137
+ kind: A2A.Kind["status-update"],
138
+ final: params.final ?? false,
139
+ };
140
+ }
141
+ get event() {
142
+ return this._event;
143
+ }
144
+ static create(params) {
145
+ if (isStatusParams(params)) {
146
+ return new TaskStatusUpdateEvent({
147
+ /*allows for a mixture of Update & Status Params*/
148
+ ...(typeof params === "object" ? params : {}),
149
+ status: TaskStatus.create(params),
150
+ }).event;
151
+ }
152
+ return new TaskStatusUpdateEvent(params).event;
153
+ }
154
+ }
155
+ export class TaskArtifactUpdateEvent {
156
+ _event;
157
+ constructor(params) {
158
+ const taskId = params.taskId ?? uuidv4();
159
+ this._event = {
160
+ ...params,
161
+ taskId,
162
+ contextId: params.contextId ?? taskId,
163
+ kind: A2A.Kind["artifact-update"],
164
+ };
165
+ }
166
+ get event() {
167
+ return this._event;
168
+ }
169
+ static create(params) {
170
+ if (isArtifactParams(params)) {
171
+ return new TaskArtifactUpdateEvent({
172
+ artifact: Artifact.create(params),
173
+ }).event;
174
+ }
175
+ return new TaskArtifactUpdateEvent({
176
+ ...params,
177
+ artifact: Artifact.create(params.artifact),
178
+ }).event;
179
+ }
180
+ }
181
+ const strict_update = (params) => {
182
+ return TaskStatusUpdateEvent.create(params);
183
+ };
184
+ function _buildUpdate(state, params, final) {
185
+ return strict_update({
186
+ taskId: params.taskId,
187
+ contextId: params.contextId,
188
+ status: {
189
+ state: state,
190
+ message: params.message,
191
+ timestamp: params.timestamp,
192
+ },
193
+ final: final ?? params.final,
194
+ metadata: params.metadata,
195
+ });
196
+ }
197
+ function _working(params) {
198
+ return _buildUpdate(A2A.TaskState.working, params);
199
+ }
200
+ function _canceled(params) {
201
+ return _buildUpdate(A2A.TaskState.canceled, params, true);
202
+ }
203
+ function _submitted(params) {
204
+ return _buildUpdate(A2A.TaskState.submitted, params);
205
+ }
206
+ function _failed(params) {
207
+ return _buildUpdate(A2A.TaskState.failed, params, true);
208
+ }
209
+ function _completed(params) {
210
+ return _buildUpdate(A2A.TaskState.completed, params, true);
211
+ }
212
+ function _inputRequired(params) {
213
+ return _buildUpdate(A2A.TaskState["input-required"], params);
214
+ }
215
+ function _rejected(params) {
216
+ return _buildUpdate(A2A.TaskState.rejected, params);
217
+ }
218
+ function _authRequired(params) {
219
+ return _buildUpdate(A2A.TaskState["auth-required"], params);
220
+ }
221
+ function _unknown(params) {
222
+ return _buildUpdate(A2A.TaskState["unknown"], params);
223
+ }
224
+ /**
225
+ * Convenience factory function for creating a task status and artifact update events with default parameters.
226
+ *
227
+ * @returns New {@link A2A.TaskStatusUpdateEvent} and {@link A2A.TaskArtifactUpdateEvent} with default parameters
228
+ *
229
+ * @example
230
+ * ```typescript
231
+ * const artifactEvent = update.artifact({
232
+ * artifact: "result"
233
+ * });
234
+ * const statusEvent = update.status({
235
+ * status: "working"
236
+ * });
237
+ * ```
238
+ *
239
+ * @public
240
+ * @since 0.6.0
241
+ */
242
+ export const update = {
243
+ /**
244
+ * Convenience factory function for creating a task artifact update event.
245
+ * @returns New {@link A2A.TaskArtifactUpdateEvent}
246
+ * @example
247
+ * ```typescript
248
+ * const event = update.artifact({
249
+ * artifact: "result"
250
+ * });
251
+ * ```
252
+ */
253
+ artifact: TaskArtifactUpdateEvent.create,
254
+ /**
255
+ * Convenience factory function for creating a task status update event.
256
+ * @returns New {@link A2A.TaskStatusUpdateEvent}
257
+ * @example
258
+ * ```typescript
259
+ * const event = update.status({
260
+ * message: "Working on the task"
261
+ * });
262
+ * ```
263
+ */
264
+ status: TaskStatusUpdateEvent.create,
265
+ /**
266
+ * Convenience factory function for creating a task status update event with the working state.
267
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.working} state
268
+ * @example
269
+ * ```typescript
270
+ * const event = update.working({
271
+ * message: "Working on the task"
272
+ * });
273
+ * ```
274
+ */
275
+ working: _working,
276
+ /**
277
+ * Convenience factory function for creating a task status update event with the canceled state.
278
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.canceled} state
279
+ * @example
280
+ * ```typescript
281
+ * const event = update.canceled({
282
+ * message: "Task canceled"
283
+ * });
284
+ * ```
285
+ */
286
+ canceled: _canceled,
287
+ /**
288
+ * Convenience factory function for creating a task status update event with the submitted state.
289
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.submitted} state
290
+ * @example
291
+ * ```typescript
292
+ * const event = update.submitted({
293
+ * message: "Task submitted"
294
+ * });
295
+ * ```
296
+ */
297
+ submitted: _submitted,
298
+ /**
299
+ * Convenience factory function for creating a task status update event with the failed state.
300
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.failed} state
301
+ * @example
302
+ * ```typescript
303
+ * const event = update.failed({
304
+ * message: "Task failed"
305
+ * });
306
+ * ```
307
+ */
308
+ failed: _failed,
309
+ /**
310
+ * Convenience factory function for creating a task status update event with the completed state.
311
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.completed} state
312
+ * @example
313
+ * ```typescript
314
+ * const event = update.completed({
315
+ * message: "Task completed"
316
+ * });
317
+ * ```
318
+ */
319
+ completed: _completed,
320
+ /**
321
+ * Convenience factory function for creating a task status update event with the input required state.
322
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState["input-required"]} state
323
+ * @example
324
+ * ```typescript
325
+ * const event = update.inputRequired({
326
+ * message: "Task input required"
327
+ * });
328
+ * ```
329
+ */
330
+ inputRequired: _inputRequired,
331
+ /**
332
+ * Convenience factory function for creating a task status update event with the rejected state.
333
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.rejected} state
334
+ * @example
335
+ * ```typescript
336
+ * const event = update.rejected({
337
+ * message: "Task rejected"
338
+ * });
339
+ * ```
340
+ */
341
+ rejected: _rejected,
342
+ /**
343
+ * Convenience factory function for creating a task status update event with the auth required state.
344
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState["auth-required"]} state
345
+ * @example
346
+ * ```typescript
347
+ * const event = update.authRequired({
348
+ * message: {
349
+ * role: "agent"
350
+ * parts: [
351
+ * {
352
+ * text: "Task auth required"
353
+ * }
354
+ * ]
355
+ * kind: "message"
356
+ * });
357
+ * ```
358
+ */
359
+ authRequired: _authRequired,
360
+ /**
361
+ * Convenience factory function for creating a task status update event with the unknown state.
362
+ * @returns New {@link A2A.TaskStatusUpdateEvent} with the {@link A2A.TaskState.unknown} state
363
+ * @example
364
+ * ```typescript
365
+ * const event = update.unknown({
366
+ * message: "Task unknown"
367
+ * });
368
+ * ```
369
+ */
370
+ unknown: _unknown,
371
+ };
372
+ /**
373
+ * @description A temporary compatibility function for updating a task status, purely for migration purposes.
374
+ * @deprecated Use {@link update.status} instead
375
+ * @since 0.6.0
376
+ */
377
+ export const update_compat = (taskId, contextId, state, message, timestamp, final = false) => {
378
+ return _buildUpdate(state, {
379
+ taskId: taskId,
380
+ contextId: contextId,
381
+ message: message,
382
+ timestamp: timestamp,
383
+ }, final);
384
+ };
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright 2025 The Artinet Project
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { A2A } from "../types/index.js";
6
+ import * as Builder from "./agent-builder.js";
7
+ import { MessageParams } from "./message-builder.js";
8
+ import { StatusUpdateParams, ArtifactUpdateParams, TaskParams } from "./task-builder.js";
9
+ export declare function hasCarry<Ret extends Builder.AcceptedReturnValues, Carried extends Builder.BaseArgs>(ret: Builder.Reply<Ret, Carried>): ret is Builder.ReturnAndCarry<Ret, Carried>;
10
+ export declare function hasReply<Ret extends Builder.AcceptedReturnValues, Carried extends Builder.BaseArgs>(ret: Builder.Reply<Ret, Carried>): ret is Builder.ReturnValue<Ret>;
11
+ export declare function Parts(kind: "text" | "file" | "data"): Builder.Transform<Builder.AcceptedParts>;
12
+ export declare function Message(): Builder.Transform<Builder.Stateless<MessageParams>>;
13
+ export declare function Artifact(): Builder.Transform<Builder.Stateless<ArtifactUpdateParams>>;
14
+ export declare function Status(): Builder.Transform<Builder.Stateless<StatusUpdateParams>>;
15
+ export declare function Task(): Builder.Transform<Builder.Stateless<TaskParams>>;
16
+ export declare function Reply<Ret extends Builder.AcceptedReturnValues, Carried extends Builder.BaseArgs>(ret: Builder.Reply<Ret, Carried>, context: A2A.Context, transform: Builder.Transform<Ret>): AsyncGenerator<A2A.Update, Carried | undefined, unknown>;
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Copyright 2025 The Artinet Project
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { describe } from "./index.js";
6
+ import { TaskStatus, } from "./task-builder.js";
7
+ export function hasCarry(ret) {
8
+ return (ret !== null && typeof ret === "object" && "reply" in ret && "args" in ret);
9
+ }
10
+ export function hasReply(ret) {
11
+ return ret !== null && typeof ret === "object" && "reply" in ret;
12
+ }
13
+ function messagePart(params) {
14
+ switch (params.kind) {
15
+ case "text": {
16
+ return describe.part.text(params.part);
17
+ }
18
+ case "file": {
19
+ return describe.part.file(params.part);
20
+ }
21
+ case "data": {
22
+ return describe.part.data(params.part);
23
+ }
24
+ default:
25
+ throw new Error("Invalid part detected", { cause: params });
26
+ }
27
+ }
28
+ export function Parts(kind) {
29
+ return async function* (payload, { taskId, contextId }) {
30
+ const parts = (Array.isArray(payload) ? payload : [payload]).map((part) => messagePart({ kind, part }));
31
+ yield describe.update.working({
32
+ taskId,
33
+ contextId,
34
+ message: describe.message({ role: "agent", parts }),
35
+ });
36
+ return;
37
+ };
38
+ }
39
+ export function Message() {
40
+ return async function* (payload, { taskId, contextId }) {
41
+ if (Array.isArray(payload)) {
42
+ throw new Error("Array of messages is not supported");
43
+ }
44
+ const message = typeof payload === "string" ? describe.message(payload) : payload;
45
+ yield describe.message({
46
+ ...message,
47
+ taskId,
48
+ contextId,
49
+ });
50
+ return;
51
+ };
52
+ }
53
+ export function Artifact() {
54
+ return async function* (payload, { taskId, contextId }) {
55
+ const updates = Array.isArray(payload) ? payload : [payload];
56
+ for (const update of updates) {
57
+ const artifact = typeof update === "string" ? describe.artifact(update) : update;
58
+ yield describe.update.artifact({
59
+ ...artifact,
60
+ taskId,
61
+ contextId,
62
+ });
63
+ }
64
+ return;
65
+ };
66
+ }
67
+ export function Status() {
68
+ return async function* (payload, { taskId, contextId }) {
69
+ const updates = Array.isArray(payload) ? payload : [payload];
70
+ for (const update of updates) {
71
+ const status = typeof update === "string" ? TaskStatus.create(update) : update;
72
+ yield describe.update.status({
73
+ ...status,
74
+ taskId,
75
+ contextId,
76
+ });
77
+ }
78
+ return;
79
+ };
80
+ }
81
+ export function Task() {
82
+ return async function* (payload, { taskId, contextId }) {
83
+ if (Array.isArray(payload)) {
84
+ throw new Error("Array of tasks is not supported");
85
+ }
86
+ const task = typeof payload === "string" ? describe.task(payload) : payload;
87
+ yield describe.task({ ...task, taskId, contextId });
88
+ return;
89
+ };
90
+ }
91
+ export async function* Reply(ret, context, transform) {
92
+ if (Array.isArray(ret)) {
93
+ yield* transform(ret, context);
94
+ }
95
+ else if (hasCarry(ret)) {
96
+ yield* transform(ret.reply, context);
97
+ return ret.args;
98
+ }
99
+ else if (hasReply(ret)) {
100
+ yield* transform(ret.reply, context);
101
+ }
102
+ else {
103
+ yield* transform(ret, context);
104
+ }
105
+ return;
106
+ }
@@ -0,0 +1,98 @@
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, Tracer, Span, Context } from "@opentelemetry/api";
27
+ import type { ILogger } from "../config/observability.js";
28
+ /**
29
+ * Options for configuring the OTel-aware logger.
30
+ */
31
+ export interface OtelLoggerOptions {
32
+ /**
33
+ * Base logger to wrap (logs go here AND to spans).
34
+ * If not provided, logs only go to spans.
35
+ */
36
+ baseLogger?: ILogger;
37
+ /**
38
+ * Log level.
39
+ * @default 'info'
40
+ */
41
+ level?: "trace" | "verbose" | "debug" | "info" | "warn" | "error" | "silent";
42
+ }
43
+ /**
44
+ * Create a logger that adds log events to the current span.
45
+ *
46
+ * This logger optionally wraps a base logger and adds all log messages
47
+ * as span events in the current trace context.
48
+ *
49
+ * @param options - Logger options
50
+ * @returns ILogger implementation
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * import { configure } from '@artinet/sdk';
55
+ * import { configureOtel } from '@artinet/sdk/otel';
56
+ * import { configurePino } from '@artinet/sdk/pino';
57
+ * import pino from 'pino';
58
+ *
59
+ * // Logs go to both Pino AND span events
60
+ * configure({
61
+ * logger: configureOtel({
62
+ * baseLogger: configurePino(pino()),
63
+ * level: 'debug'
64
+ * })
65
+ * });
66
+ * ```
67
+ */
68
+ export declare function configureOtel(options?: OtelLoggerOptions): ILogger;
69
+ /**
70
+ * Execute a function within a new span.
71
+ *
72
+ * @param tracer - User's tracer instance
73
+ * @param name - Span name
74
+ * @param fn - Function to execute
75
+ * @param options - Optional span options
76
+ * @returns Result of the function
77
+ *
78
+ * @example
79
+ * ```typescript
80
+ * import { trace } from '@opentelemetry/api';
81
+ * import { withSpan } from '@artinet/sdk/otel';
82
+ *
83
+ * const tracer = trace.getTracer('my-agent');
84
+ * const result = await withSpan(tracer, 'processTask', async (span) => {
85
+ * span.setAttribute('taskId', '123');
86
+ * return await doWork();
87
+ * });
88
+ * ```
89
+ */
90
+ export declare function withSpan<T>(tracer: Tracer, name: string, fn: (span: Span) => Promise<T>, options?: {
91
+ kind?: SpanKind;
92
+ attributes?: Record<string, string | number | boolean>;
93
+ }): Promise<T>;
94
+ /**
95
+ * Re-export OpenTelemetry API types for convenience.
96
+ */
97
+ export { trace, context, SpanKind, SpanStatusCode, type Tracer, type Span, type Context, };
98
+ export default configureOtel;