@mastra/server 1.0.0-beta.4 → 1.0.0-beta.5

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 (257) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/chunk-2NW6POYK.cjs +89 -0
  3. package/dist/chunk-2NW6POYK.cjs.map +1 -0
  4. package/dist/chunk-4JMHKKV3.cjs +201 -0
  5. package/dist/chunk-4JMHKKV3.cjs.map +1 -0
  6. package/dist/chunk-4O2QGUW3.js +354 -0
  7. package/dist/chunk-4O2QGUW3.js.map +1 -0
  8. package/dist/chunk-4W2SM6CG.js +294 -0
  9. package/dist/chunk-4W2SM6CG.js.map +1 -0
  10. package/dist/chunk-5W4RPVTK.cjs +49 -0
  11. package/dist/chunk-5W4RPVTK.cjs.map +1 -0
  12. package/dist/chunk-65Q7HO3Q.cjs +907 -0
  13. package/dist/chunk-65Q7HO3Q.cjs.map +1 -0
  14. package/dist/chunk-6KNI7VIX.js +1021 -0
  15. package/dist/chunk-6KNI7VIX.js.map +1 -0
  16. package/dist/chunk-A6MQQTHN.js +310 -0
  17. package/dist/chunk-A6MQQTHN.js.map +1 -0
  18. package/dist/chunk-AUQBEMDP.cjs +322 -0
  19. package/dist/chunk-AUQBEMDP.cjs.map +1 -0
  20. package/dist/chunk-CBDUTSTI.js +192 -0
  21. package/dist/chunk-CBDUTSTI.js.map +1 -0
  22. package/dist/{chunk-VEVU6EUO.js → chunk-EI2GXZE2.js} +735 -154
  23. package/dist/chunk-EI2GXZE2.js.map +1 -0
  24. package/dist/{chunk-TOCYBDP2.js → chunk-ER3QM7DD.js} +4 -4
  25. package/dist/{chunk-TOCYBDP2.js.map → chunk-ER3QM7DD.js.map} +1 -1
  26. package/dist/chunk-FCHN5M25.js +878 -0
  27. package/dist/chunk-FCHN5M25.js.map +1 -0
  28. package/dist/chunk-FPCGLPLJ.cjs +297 -0
  29. package/dist/chunk-FPCGLPLJ.cjs.map +1 -0
  30. package/dist/{chunk-D7T74TVR.js → chunk-G7BPNX2V.js} +4 -3
  31. package/dist/chunk-G7BPNX2V.js.map +1 -0
  32. package/dist/chunk-IMK7366C.cjs +346 -0
  33. package/dist/chunk-IMK7366C.cjs.map +1 -0
  34. package/dist/chunk-LGG3N3AV.js +116 -0
  35. package/dist/chunk-LGG3N3AV.js.map +1 -0
  36. package/dist/chunk-LZDCXQMX.js +164 -0
  37. package/dist/chunk-LZDCXQMX.js.map +1 -0
  38. package/dist/chunk-MH3A7RDQ.cjs +1064 -0
  39. package/dist/chunk-MH3A7RDQ.cjs.map +1 -0
  40. package/dist/chunk-MWQQRVQC.cjs +259 -0
  41. package/dist/chunk-MWQQRVQC.cjs.map +1 -0
  42. package/dist/{chunk-7HVY3D64.cjs → chunk-P6BEEW5J.cjs} +1767 -1183
  43. package/dist/chunk-P6BEEW5J.cjs.map +1 -0
  44. package/dist/{chunk-KJIDZQRA.cjs → chunk-PDVJ2TTM.cjs} +216 -23
  45. package/dist/chunk-PDVJ2TTM.cjs.map +1 -0
  46. package/dist/chunk-PKRHEXX7.js +74 -0
  47. package/dist/chunk-PKRHEXX7.js.map +1 -0
  48. package/dist/chunk-QVHQZUGJ.cjs +368 -0
  49. package/dist/chunk-QVHQZUGJ.cjs.map +1 -0
  50. package/dist/chunk-R4M3BSUG.js +226 -0
  51. package/dist/chunk-R4M3BSUG.js.map +1 -0
  52. package/dist/chunk-R6ZTXNN2.cjs +797 -0
  53. package/dist/chunk-R6ZTXNN2.cjs.map +1 -0
  54. package/dist/{chunk-FPBYKMIS.js → chunk-RCCWKKI3.js} +210 -23
  55. package/dist/chunk-RCCWKKI3.js.map +1 -0
  56. package/dist/chunk-S6DFGBDD.cjs +211 -0
  57. package/dist/chunk-S6DFGBDD.cjs.map +1 -0
  58. package/dist/chunk-SAQSK4AG.cjs +167 -0
  59. package/dist/chunk-SAQSK4AG.cjs.map +1 -0
  60. package/dist/chunk-UCRV7PD3.js +773 -0
  61. package/dist/chunk-UCRV7PD3.js.map +1 -0
  62. package/dist/{chunk-W2KMU354.cjs → chunk-UZ6CYAOG.cjs} +4 -3
  63. package/dist/chunk-UZ6CYAOG.cjs.map +1 -0
  64. package/dist/{chunk-QU6N55W6.cjs → chunk-V272B7RM.cjs} +11 -12
  65. package/dist/chunk-V272B7RM.cjs.map +1 -0
  66. package/dist/{chunk-X6C7BUWN.cjs → chunk-XQPJ63ZD.cjs} +4 -4
  67. package/dist/{chunk-X6C7BUWN.cjs.map → chunk-XQPJ63ZD.cjs.map} +1 -1
  68. package/dist/chunk-XWGAT2DA.js +44 -0
  69. package/dist/chunk-XWGAT2DA.js.map +1 -0
  70. package/dist/chunk-YLQHE2S5.js +204 -0
  71. package/dist/chunk-YLQHE2S5.js.map +1 -0
  72. package/dist/{chunk-SHWNNZBL.js → chunk-YP34EWWK.js} +9 -10
  73. package/dist/chunk-YP34EWWK.js.map +1 -0
  74. package/dist/chunk-Z7R7CFVF.cjs +125 -0
  75. package/dist/chunk-Z7R7CFVF.cjs.map +1 -0
  76. package/dist/chunk-ZPZSAJAR.js +328 -0
  77. package/dist/chunk-ZPZSAJAR.js.map +1 -0
  78. package/dist/server/handlers/a2a.cjs +15 -7
  79. package/dist/server/handlers/a2a.d.ts +482 -0
  80. package/dist/server/handlers/a2a.d.ts.map +1 -1
  81. package/dist/server/handlers/a2a.js +1 -1
  82. package/dist/server/handlers/agent-builder.cjs +37 -37
  83. package/dist/server/handlers/agent-builder.d.ts +600 -77
  84. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  85. package/dist/server/handlers/agent-builder.js +1 -1
  86. package/dist/server/handlers/agents.cjs +53 -37
  87. package/dist/server/handlers/agents.d.ts +3271 -125
  88. package/dist/server/handlers/agents.d.ts.map +1 -1
  89. package/dist/server/handlers/agents.js +1 -1
  90. package/dist/server/handlers/logs.cjs +7 -7
  91. package/dist/server/handlers/logs.d.ts +135 -27
  92. package/dist/server/handlers/logs.d.ts.map +1 -1
  93. package/dist/server/handlers/logs.js +1 -1
  94. package/dist/server/handlers/memory.cjs +65 -29
  95. package/dist/server/handlers/memory.d.ts +932 -96
  96. package/dist/server/handlers/memory.d.ts.map +1 -1
  97. package/dist/server/handlers/memory.js +1 -1
  98. package/dist/server/handlers/observability.cjs +21 -5
  99. package/dist/server/handlers/observability.d.ts +119 -12
  100. package/dist/server/handlers/observability.d.ts.map +1 -1
  101. package/dist/server/handlers/observability.js +1 -1
  102. package/dist/server/handlers/scores.cjs +13 -13
  103. package/dist/server/handlers/scores.d.ts +110 -141
  104. package/dist/server/handlers/scores.d.ts.map +1 -1
  105. package/dist/server/handlers/scores.js +1 -1
  106. package/dist/server/handlers/test-utils.cjs +15 -0
  107. package/dist/server/handlers/test-utils.cjs.map +1 -0
  108. package/dist/server/handlers/test-utils.d.ts +6 -0
  109. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  110. package/dist/server/handlers/test-utils.js +13 -0
  111. package/dist/server/handlers/test-utils.js.map +1 -0
  112. package/dist/server/handlers/tools.cjs +11 -11
  113. package/dist/server/handlers/tools.d.ts +69 -23
  114. package/dist/server/handlers/tools.d.ts.map +1 -1
  115. package/dist/server/handlers/tools.js +1 -1
  116. package/dist/server/handlers/utils.cjs +11 -3
  117. package/dist/server/handlers/utils.d.ts +5 -0
  118. package/dist/server/handlers/utils.d.ts.map +1 -1
  119. package/dist/server/handlers/utils.js +1 -1
  120. package/dist/server/handlers/vector.cjs +31 -7
  121. package/dist/server/handlers/vector.d.ts +93 -9
  122. package/dist/server/handlers/vector.d.ts.map +1 -1
  123. package/dist/server/handlers/vector.js +1 -1
  124. package/dist/server/handlers/voice.cjs +21 -9
  125. package/dist/server/handlers/voice.d.ts +81 -40
  126. package/dist/server/handlers/voice.d.ts.map +1 -1
  127. package/dist/server/handlers/voice.js +1 -1
  128. package/dist/server/handlers/workflows.cjs +65 -37
  129. package/dist/server/handlers/workflows.d.ts +919 -79
  130. package/dist/server/handlers/workflows.d.ts.map +1 -1
  131. package/dist/server/handlers/workflows.js +1 -1
  132. package/dist/server/handlers.cjs +22 -22
  133. package/dist/server/handlers.js +11 -11
  134. package/dist/server/schemas/a2a.d.ts +786 -0
  135. package/dist/server/schemas/a2a.d.ts.map +1 -0
  136. package/dist/server/schemas/agent-builder.d.ts +195 -0
  137. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  138. package/dist/server/schemas/agents.d.ts +1375 -0
  139. package/dist/server/schemas/agents.d.ts.map +1 -0
  140. package/dist/server/schemas/common.d.ts +165 -0
  141. package/dist/server/schemas/common.d.ts.map +1 -0
  142. package/dist/server/schemas/logs.d.ts +124 -0
  143. package/dist/server/schemas/logs.d.ts.map +1 -0
  144. package/dist/server/schemas/memory.d.ts +998 -0
  145. package/dist/server/schemas/memory.d.ts.map +1 -0
  146. package/dist/server/schemas/observability.d.ts +402 -0
  147. package/dist/server/schemas/observability.d.ts.map +1 -0
  148. package/dist/server/schemas/scores.d.ts +259 -0
  149. package/dist/server/schemas/scores.d.ts.map +1 -0
  150. package/dist/server/schemas/vectors.d.ts +107 -0
  151. package/dist/server/schemas/vectors.d.ts.map +1 -0
  152. package/dist/server/schemas/workflows.d.ts +608 -0
  153. package/dist/server/schemas/workflows.d.ts.map +1 -0
  154. package/dist/server/server-adapter/index.cjs +330 -0
  155. package/dist/server/server-adapter/index.cjs.map +1 -0
  156. package/dist/server/server-adapter/index.d.ts +52 -0
  157. package/dist/server/server-adapter/index.d.ts.map +1 -0
  158. package/dist/server/server-adapter/index.js +316 -0
  159. package/dist/server/server-adapter/index.js.map +1 -0
  160. package/dist/server/server-adapter/openapi-utils.d.ts +59 -0
  161. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  162. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  163. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  164. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  165. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  166. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  167. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  168. package/dist/server/server-adapter/routes/index.d.ts +41 -0
  169. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  170. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  171. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  172. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  173. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  174. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  175. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  176. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  177. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  178. package/dist/server/server-adapter/routes/route-builder.d.ts +52 -0
  179. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  180. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  181. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  182. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  183. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  184. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  185. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  186. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  187. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  188. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  189. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  190. package/dist/server/utils.d.ts.map +1 -1
  191. package/dist/token-GVZ7HRD7.js +62 -0
  192. package/dist/{token-C3IMNCC4.js.map → token-GVZ7HRD7.js.map} +1 -1
  193. package/dist/{token-C3IMNCC4.js → token-JGA3ZWAN.js} +5 -6
  194. package/dist/token-JGA3ZWAN.js.map +1 -0
  195. package/dist/token-VFONFWVS.cjs +64 -0
  196. package/dist/{token-375W3LEI.cjs.map → token-VFONFWVS.cjs.map} +1 -1
  197. package/dist/{token-375W3LEI.cjs → token-ZOD6YIQ3.cjs} +7 -8
  198. package/dist/token-ZOD6YIQ3.cjs.map +1 -0
  199. package/dist/token-util-7R2ZFIXO.js +7 -0
  200. package/dist/{token-util-E5QO2RCL.js.map → token-util-7R2ZFIXO.js.map} +1 -1
  201. package/dist/token-util-BLJZJDBZ.cjs +9 -0
  202. package/dist/{token-util-CV3RRG6K.cjs.map → token-util-BLJZJDBZ.cjs.map} +1 -1
  203. package/dist/token-util-VGZUWSNR.cjs +9 -0
  204. package/dist/token-util-VGZUWSNR.cjs.map +1 -0
  205. package/dist/token-util-VKTPZLSE.js +7 -0
  206. package/dist/token-util-VKTPZLSE.js.map +1 -0
  207. package/package.json +20 -7
  208. package/dist/chunk-2YZH5PH6.cjs +0 -200
  209. package/dist/chunk-2YZH5PH6.cjs.map +0 -1
  210. package/dist/chunk-3AMNUUZF.js +0 -124
  211. package/dist/chunk-3AMNUUZF.js.map +0 -1
  212. package/dist/chunk-3F52QCI4.js +0 -192
  213. package/dist/chunk-3F52QCI4.js.map +0 -1
  214. package/dist/chunk-4G5QBFEW.cjs +0 -681
  215. package/dist/chunk-4G5QBFEW.cjs.map +0 -1
  216. package/dist/chunk-73PAWDM5.js +0 -83
  217. package/dist/chunk-73PAWDM5.js.map +0 -1
  218. package/dist/chunk-7HVY3D64.cjs.map +0 -1
  219. package/dist/chunk-A24TSVEZ.cjs +0 -130
  220. package/dist/chunk-A24TSVEZ.cjs.map +0 -1
  221. package/dist/chunk-B3Z6J745.js +0 -122
  222. package/dist/chunk-B3Z6J745.js.map +0 -1
  223. package/dist/chunk-BTWIR2B7.cjs +0 -28
  224. package/dist/chunk-BTWIR2B7.cjs.map +0 -1
  225. package/dist/chunk-D7T74TVR.js.map +0 -1
  226. package/dist/chunk-FPBYKMIS.js.map +0 -1
  227. package/dist/chunk-GLAZTMX3.cjs +0 -128
  228. package/dist/chunk-GLAZTMX3.cjs.map +0 -1
  229. package/dist/chunk-KF3RI45U.cjs +0 -172
  230. package/dist/chunk-KF3RI45U.cjs.map +0 -1
  231. package/dist/chunk-KJIDZQRA.cjs.map +0 -1
  232. package/dist/chunk-KWH5QBXP.js +0 -123
  233. package/dist/chunk-KWH5QBXP.js.map +0 -1
  234. package/dist/chunk-ND5OKOMT.js +0 -165
  235. package/dist/chunk-ND5OKOMT.js.map +0 -1
  236. package/dist/chunk-PPMIB3FQ.cjs +0 -88
  237. package/dist/chunk-PPMIB3FQ.cjs.map +0 -1
  238. package/dist/chunk-QU6N55W6.cjs.map +0 -1
  239. package/dist/chunk-S54HNARD.cjs +0 -131
  240. package/dist/chunk-S54HNARD.cjs.map +0 -1
  241. package/dist/chunk-SHWNNZBL.js.map +0 -1
  242. package/dist/chunk-SZIFSF4T.js +0 -25
  243. package/dist/chunk-SZIFSF4T.js.map +0 -1
  244. package/dist/chunk-U7GLIXYO.cjs +0 -534
  245. package/dist/chunk-U7GLIXYO.cjs.map +0 -1
  246. package/dist/chunk-UGXW2KPL.js +0 -661
  247. package/dist/chunk-UGXW2KPL.js.map +0 -1
  248. package/dist/chunk-V6JYJS7O.js +0 -518
  249. package/dist/chunk-V6JYJS7O.js.map +0 -1
  250. package/dist/chunk-VEVU6EUO.js.map +0 -1
  251. package/dist/chunk-W2KMU354.cjs.map +0 -1
  252. package/dist/chunk-X3MICMI2.cjs +0 -620
  253. package/dist/chunk-X3MICMI2.cjs.map +0 -1
  254. package/dist/chunk-ZJ6KEY6H.js +0 -600
  255. package/dist/chunk-ZJ6KEY6H.js.map +0 -1
  256. package/dist/token-util-CV3RRG6K.cjs +0 -9
  257. package/dist/token-util-E5QO2RCL.js +0 -7
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/handlers/workflows.ts"],"names":["__export","getWorkflowInfo","handleError","HTTPException","WorkflowRegistry","TransformStream","ReadableStream"],"mappings":"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","file":"chunk-X3MICMI2.cjs","sourcesContent":["import { ReadableStream, TransformStream } from 'node:stream/web';\nimport type { RequestContext } from '@mastra/core/di';\nimport type { TracingOptions } from '@mastra/core/observability';\nimport type { WorkflowRuns } from '@mastra/core/storage';\nimport type { Workflow, WorkflowInfo, ChunkType, StreamEvent, WorkflowState } from '@mastra/core/workflows';\nimport { HTTPException } from '../http-exception';\nimport type { Context } from '../types';\nimport { getWorkflowInfo, WorkflowRegistry } from '../utils';\nimport { handleError } from './error';\n\nexport interface WorkflowContext extends Context {\n workflowId?: string;\n runId?: string;\n}\n\nexport async function listWorkflowsHandler({ mastra }: WorkflowContext) {\n try {\n const workflows = mastra.listWorkflows({ serialized: false });\n const _workflows = Object.entries(workflows).reduce<Record<string, WorkflowInfo>>((acc, [key, workflow]) => {\n acc[key] = getWorkflowInfo(workflow);\n return acc;\n }, {});\n return _workflows;\n } catch (error) {\n return handleError(error, 'Error getting workflows');\n }\n}\n\nasync function listWorkflowsFromSystem({ mastra, workflowId }: WorkflowContext) {\n const logger = mastra.getLogger();\n\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n let workflow;\n\n // First check registry for temporary workflows\n workflow = WorkflowRegistry.getWorkflow(workflowId);\n\n if (!workflow) {\n try {\n workflow = mastra.getWorkflowById(workflowId);\n } catch (error) {\n logger.debug('Error getting workflow, searching agents for workflow', error);\n }\n }\n\n if (!workflow) {\n logger.debug('Workflow not found, searching agents for workflow', { workflowId });\n const agents = mastra.listAgents();\n\n if (Object.keys(agents || {}).length) {\n for (const [_, agent] of Object.entries(agents)) {\n try {\n const workflows = await agent.listWorkflows();\n\n if (workflows[workflowId]) {\n workflow = workflows[workflowId];\n break;\n }\n break;\n } catch (error) {\n logger.debug('Error getting workflow from agent', error);\n }\n }\n }\n }\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n return { workflow };\n}\n\nexport async function getWorkflowByIdHandler({ mastra, workflowId }: WorkflowContext): Promise<WorkflowInfo> {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n return getWorkflowInfo(workflow);\n } catch (error) {\n return handleError(error, 'Error getting workflow');\n }\n}\n\nexport async function getWorkflowRunByIdHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>): Promise<ReturnType<Workflow['getWorkflowRunById']>> {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'Run ID is required' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n return run;\n } catch (error) {\n return handleError(error, 'Error getting workflow run');\n }\n}\n\nexport async function getWorkflowRunExecutionResultHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>): Promise<WorkflowState> {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'Run ID is required' });\n }\n\n const workflow = mastra.getWorkflow(workflowId);\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const executionResult = await workflow.getWorkflowRunExecutionResult(runId);\n\n if (!executionResult) {\n throw new HTTPException(404, { message: 'Workflow run execution result not found' });\n }\n\n return executionResult;\n } catch (error) {\n return handleError(error, 'Error getting workflow run execution result');\n }\n}\n\nexport async function createWorkflowRunHandler({\n mastra,\n workflowId,\n runId: prevRunId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.createRun({ runId: prevRunId });\n\n return { runId: run.runId };\n } catch (error) {\n return handleError(error, 'Error creating workflow run');\n }\n}\n\nexport async function startAsyncWorkflowHandler({\n mastra,\n requestContext,\n workflowId,\n runId,\n inputData,\n tracingOptions,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'> & {\n inputData?: unknown;\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const _run = await workflow.createRun({ runId });\n const result = await _run.start({\n inputData,\n requestContext,\n tracingOptions,\n });\n return result;\n } catch (error) {\n return handleError(error, 'Error starting async workflow');\n }\n}\n\nexport async function startWorkflowRunHandler({\n mastra,\n requestContext,\n workflowId,\n runId,\n inputData,\n tracingOptions,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'> & {\n inputData?: unknown;\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to start run' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n void _run.start({\n inputData,\n requestContext,\n tracingOptions,\n });\n\n return { message: 'Workflow run started' };\n } catch (e) {\n return handleError(e, 'Error starting workflow run');\n }\n}\n\nexport async function streamWorkflowHandler({\n mastra,\n requestContext,\n workflowId,\n runId,\n inputData,\n tracingOptions,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'> & {\n inputData?: unknown;\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n return streamVNextWorkflowHandler({ mastra, workflowId, runId, inputData, requestContext, tracingOptions });\n}\n\nexport async function streamLegacyWorkflowHandler({\n mastra,\n requestContext,\n workflowId,\n runId,\n inputData,\n tracingOptions,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'> & {\n inputData?: unknown;\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to resume workflow' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const serverCache = mastra.getServerCache();\n\n const run = await workflow.createRun({ runId });\n const result = run.streamLegacy({\n inputData,\n requestContext,\n onChunk: async chunk => {\n if (serverCache) {\n const cacheKey = runId;\n await serverCache.listPush(cacheKey, chunk);\n }\n },\n tracingOptions,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing workflow');\n }\n}\n\nexport async function observeStreamLegacyWorkflowHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to observe workflow stream' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n const serverCache = mastra.getServerCache();\n if (!serverCache) {\n throw new HTTPException(500, { message: 'Server cache not found' });\n }\n\n const transformStream = new TransformStream<StreamEvent, StreamEvent>();\n\n const writer = transformStream.writable.getWriter();\n\n const cachedRunChunks = await serverCache.listFromTo(runId, 0);\n\n for (const chunk of cachedRunChunks) {\n await writer.write(chunk as any);\n }\n\n writer.releaseLock();\n\n const result = _run.observeStreamLegacy();\n return result.stream?.pipeThrough(transformStream);\n } catch (error) {\n return handleError(error, 'Error observing workflow stream');\n }\n}\n\nexport async function observeStreamWorkflowHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>) {\n return observeStreamVNextWorkflowHandler({ mastra, workflowId, runId });\n}\n\nexport async function streamVNextWorkflowHandler({\n mastra,\n requestContext,\n workflowId,\n runId,\n inputData,\n closeOnSuspend,\n tracingOptions,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'> & {\n inputData?: unknown;\n requestContext?: RequestContext;\n closeOnSuspend?: boolean;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to stream workflow' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const serverCache = mastra.getServerCache();\n\n const run = await workflow.createRun({ runId });\n const result = run.stream({\n inputData,\n requestContext,\n closeOnSuspend,\n tracingOptions,\n });\n return result.fullStream.pipeThrough(\n new TransformStream<ChunkType, ChunkType>({\n transform(chunk, controller) {\n if (serverCache) {\n const cacheKey = runId;\n serverCache.listPush(cacheKey, chunk).catch(() => {});\n }\n controller.enqueue(chunk);\n },\n }),\n );\n } catch (error) {\n return handleError(error, 'Error streaming workflow');\n }\n}\n\nexport async function observeStreamVNextWorkflowHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to observe workflow stream' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n const serverCache = mastra.getServerCache();\n if (!serverCache) {\n throw new HTTPException(500, { message: 'Server cache not found' });\n }\n\n // Get cached chunks first\n const cachedRunChunks = await serverCache.listFromTo(runId, 0);\n\n // Create a readable stream that first emits cached chunks, then the live stream\n const combinedStream = new ReadableStream<ChunkType>({\n start(controller) {\n // First, emit all cached chunks\n const emitCachedChunks = async () => {\n for (const chunk of cachedRunChunks) {\n controller.enqueue(chunk as ChunkType);\n }\n };\n\n // Then, pipe the live stream\n const liveStream = _run.observeStream();\n const reader = liveStream.getReader();\n\n const pump = async () => {\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n controller.close();\n break;\n }\n controller.enqueue(value);\n }\n } catch (error) {\n controller.error(error);\n } finally {\n reader.releaseLock();\n }\n };\n\n // Start with cached chunks, then live stream\n void emitCachedChunks()\n .then(() => {\n void pump();\n })\n .catch(error => {\n controller.error(error);\n });\n },\n });\n\n return combinedStream;\n } catch (error) {\n return handleError(error, 'Error observing workflow stream');\n }\n}\n\nexport async function resumeAsyncWorkflowHandler({\n mastra,\n workflowId,\n runId,\n body,\n requestContext,\n tracingOptions,\n}: WorkflowContext & {\n body: { step: string | string[]; resumeData?: unknown };\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to resume workflow' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n const result = await _run.resume({\n step: body.step,\n resumeData: body.resumeData,\n requestContext,\n tracingOptions,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error resuming workflow step');\n }\n}\n\nexport async function resumeWorkflowHandler({\n mastra,\n workflowId,\n runId,\n body,\n requestContext,\n tracingOptions,\n}: WorkflowContext & {\n body: { step: string | string[]; resumeData?: unknown };\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to resume workflow' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n\n void _run.resume({\n step: body.step,\n resumeData: body.resumeData,\n requestContext,\n tracingOptions,\n });\n\n return { message: 'Workflow run resumed' };\n } catch (error) {\n return handleError(error, 'Error resuming workflow');\n }\n}\n\nexport async function resumeStreamWorkflowHandler({\n mastra,\n workflowId,\n runId,\n body,\n requestContext,\n tracingOptions,\n}: WorkflowContext & {\n body: { step: string | string[]; resumeData?: unknown };\n requestContext?: RequestContext;\n tracingOptions?: TracingOptions;\n}) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to resume workflow' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n const serverCache = mastra.getServerCache();\n\n const stream = _run\n .resumeStream({\n step: body.step,\n resumeData: body.resumeData,\n requestContext,\n tracingOptions,\n })\n .fullStream.pipeThrough(\n new TransformStream<ChunkType, ChunkType>({\n transform(chunk, controller) {\n if (serverCache) {\n const cacheKey = runId;\n serverCache.listPush(cacheKey, chunk).catch(() => {});\n }\n\n controller.enqueue(chunk);\n },\n }),\n );\n\n return stream;\n } catch (error) {\n return handleError(error, 'Error resuming workflow');\n }\n}\n\nexport async function listWorkflowRunsHandler({\n mastra,\n workflowId,\n fromDate,\n toDate,\n perPage,\n page,\n resourceId,\n}: WorkflowContext & {\n fromDate?: Date;\n toDate?: Date;\n perPage?: number | false;\n page?: number;\n resourceId?: string;\n}): Promise<WorkflowRuns> {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n // Validate pagination parameters\n if (perPage !== undefined && perPage !== false && (!Number.isInteger(perPage) || perPage <= 0)) {\n throw new HTTPException(400, { message: 'perPage must be a positive integer or false' });\n }\n if (page !== undefined && (!Number.isInteger(page) || page < 0)) {\n throw new HTTPException(400, { message: 'page must be a non-negative integer' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const workflowRuns = (await workflow.listWorkflowRuns({ fromDate, toDate, perPage, page, resourceId })) || {\n runs: [],\n total: 0,\n };\n return workflowRuns;\n } catch (error) {\n return handleError(error, 'Error getting workflow runs');\n }\n}\n\nexport async function cancelWorkflowRunHandler({\n mastra,\n workflowId,\n runId,\n}: Pick<WorkflowContext, 'mastra' | 'workflowId' | 'runId'>) {\n try {\n if (!workflowId) {\n throw new HTTPException(400, { message: 'Workflow ID is required' });\n }\n\n if (!runId) {\n throw new HTTPException(400, { message: 'runId required to cancel workflow run' });\n }\n\n const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });\n\n if (!workflow) {\n throw new HTTPException(404, { message: 'Workflow not found' });\n }\n\n const run = await workflow.getWorkflowRunById(runId);\n\n if (!run) {\n throw new HTTPException(404, { message: 'Workflow run not found' });\n }\n\n const _run = await workflow.createRun({ runId, resourceId: run.resourceId });\n\n await _run.cancel();\n\n return { message: 'Workflow run cancelled' };\n } catch (error) {\n return handleError(error, 'Error canceling workflow run');\n }\n}\n"]}
@@ -1,600 +0,0 @@
1
- import { getWorkflowInfo, WorkflowRegistry } from './chunk-D7T74TVR.js';
2
- import { handleError } from './chunk-UXGQZUYZ.js';
3
- import { HTTPException } from './chunk-6QWQZI4Q.js';
4
- import { __export } from './chunk-PR4QN5HX.js';
5
- import { TransformStream, ReadableStream } from 'stream/web';
6
-
7
- // src/server/handlers/workflows.ts
8
- var workflows_exports = {};
9
- __export(workflows_exports, {
10
- cancelWorkflowRunHandler: () => cancelWorkflowRunHandler,
11
- createWorkflowRunHandler: () => createWorkflowRunHandler,
12
- getWorkflowByIdHandler: () => getWorkflowByIdHandler,
13
- getWorkflowRunByIdHandler: () => getWorkflowRunByIdHandler,
14
- getWorkflowRunExecutionResultHandler: () => getWorkflowRunExecutionResultHandler,
15
- listWorkflowRunsHandler: () => listWorkflowRunsHandler,
16
- listWorkflowsHandler: () => listWorkflowsHandler,
17
- observeStreamLegacyWorkflowHandler: () => observeStreamLegacyWorkflowHandler,
18
- observeStreamVNextWorkflowHandler: () => observeStreamVNextWorkflowHandler,
19
- observeStreamWorkflowHandler: () => observeStreamWorkflowHandler,
20
- resumeAsyncWorkflowHandler: () => resumeAsyncWorkflowHandler,
21
- resumeStreamWorkflowHandler: () => resumeStreamWorkflowHandler,
22
- resumeWorkflowHandler: () => resumeWorkflowHandler,
23
- startAsyncWorkflowHandler: () => startAsyncWorkflowHandler,
24
- startWorkflowRunHandler: () => startWorkflowRunHandler,
25
- streamLegacyWorkflowHandler: () => streamLegacyWorkflowHandler,
26
- streamVNextWorkflowHandler: () => streamVNextWorkflowHandler,
27
- streamWorkflowHandler: () => streamWorkflowHandler
28
- });
29
- async function listWorkflowsHandler({ mastra }) {
30
- try {
31
- const workflows = mastra.listWorkflows({ serialized: false });
32
- const _workflows = Object.entries(workflows).reduce((acc, [key, workflow]) => {
33
- acc[key] = getWorkflowInfo(workflow);
34
- return acc;
35
- }, {});
36
- return _workflows;
37
- } catch (error) {
38
- return handleError(error, "Error getting workflows");
39
- }
40
- }
41
- async function listWorkflowsFromSystem({ mastra, workflowId }) {
42
- const logger = mastra.getLogger();
43
- if (!workflowId) {
44
- throw new HTTPException(400, { message: "Workflow ID is required" });
45
- }
46
- let workflow;
47
- workflow = WorkflowRegistry.getWorkflow(workflowId);
48
- if (!workflow) {
49
- try {
50
- workflow = mastra.getWorkflowById(workflowId);
51
- } catch (error) {
52
- logger.debug("Error getting workflow, searching agents for workflow", error);
53
- }
54
- }
55
- if (!workflow) {
56
- logger.debug("Workflow not found, searching agents for workflow", { workflowId });
57
- const agents = mastra.listAgents();
58
- if (Object.keys(agents || {}).length) {
59
- for (const [_, agent] of Object.entries(agents)) {
60
- try {
61
- const workflows = await agent.listWorkflows();
62
- if (workflows[workflowId]) {
63
- workflow = workflows[workflowId];
64
- break;
65
- }
66
- break;
67
- } catch (error) {
68
- logger.debug("Error getting workflow from agent", error);
69
- }
70
- }
71
- }
72
- }
73
- if (!workflow) {
74
- throw new HTTPException(404, { message: "Workflow not found" });
75
- }
76
- return { workflow };
77
- }
78
- async function getWorkflowByIdHandler({ mastra, workflowId }) {
79
- try {
80
- if (!workflowId) {
81
- throw new HTTPException(400, { message: "Workflow ID is required" });
82
- }
83
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
84
- if (!workflow) {
85
- throw new HTTPException(404, { message: "Workflow not found" });
86
- }
87
- return getWorkflowInfo(workflow);
88
- } catch (error) {
89
- return handleError(error, "Error getting workflow");
90
- }
91
- }
92
- async function getWorkflowRunByIdHandler({
93
- mastra,
94
- workflowId,
95
- runId
96
- }) {
97
- try {
98
- if (!workflowId) {
99
- throw new HTTPException(400, { message: "Workflow ID is required" });
100
- }
101
- if (!runId) {
102
- throw new HTTPException(400, { message: "Run ID is required" });
103
- }
104
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
105
- if (!workflow) {
106
- throw new HTTPException(404, { message: "Workflow not found" });
107
- }
108
- const run = await workflow.getWorkflowRunById(runId);
109
- if (!run) {
110
- throw new HTTPException(404, { message: "Workflow run not found" });
111
- }
112
- return run;
113
- } catch (error) {
114
- return handleError(error, "Error getting workflow run");
115
- }
116
- }
117
- async function getWorkflowRunExecutionResultHandler({
118
- mastra,
119
- workflowId,
120
- runId
121
- }) {
122
- try {
123
- if (!workflowId) {
124
- throw new HTTPException(400, { message: "Workflow ID is required" });
125
- }
126
- if (!runId) {
127
- throw new HTTPException(400, { message: "Run ID is required" });
128
- }
129
- const workflow = mastra.getWorkflow(workflowId);
130
- if (!workflow) {
131
- throw new HTTPException(404, { message: "Workflow not found" });
132
- }
133
- const executionResult = await workflow.getWorkflowRunExecutionResult(runId);
134
- if (!executionResult) {
135
- throw new HTTPException(404, { message: "Workflow run execution result not found" });
136
- }
137
- return executionResult;
138
- } catch (error) {
139
- return handleError(error, "Error getting workflow run execution result");
140
- }
141
- }
142
- async function createWorkflowRunHandler({
143
- mastra,
144
- workflowId,
145
- runId: prevRunId
146
- }) {
147
- try {
148
- if (!workflowId) {
149
- throw new HTTPException(400, { message: "Workflow ID is required" });
150
- }
151
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
152
- if (!workflow) {
153
- throw new HTTPException(404, { message: "Workflow not found" });
154
- }
155
- const run = await workflow.createRun({ runId: prevRunId });
156
- return { runId: run.runId };
157
- } catch (error) {
158
- return handleError(error, "Error creating workflow run");
159
- }
160
- }
161
- async function startAsyncWorkflowHandler({
162
- mastra,
163
- requestContext,
164
- workflowId,
165
- runId,
166
- inputData,
167
- tracingOptions
168
- }) {
169
- try {
170
- if (!workflowId) {
171
- throw new HTTPException(400, { message: "Workflow ID is required" });
172
- }
173
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
174
- if (!workflow) {
175
- throw new HTTPException(404, { message: "Workflow not found" });
176
- }
177
- const _run = await workflow.createRun({ runId });
178
- const result = await _run.start({
179
- inputData,
180
- requestContext,
181
- tracingOptions
182
- });
183
- return result;
184
- } catch (error) {
185
- return handleError(error, "Error starting async workflow");
186
- }
187
- }
188
- async function startWorkflowRunHandler({
189
- mastra,
190
- requestContext,
191
- workflowId,
192
- runId,
193
- inputData,
194
- tracingOptions
195
- }) {
196
- try {
197
- if (!workflowId) {
198
- throw new HTTPException(400, { message: "Workflow ID is required" });
199
- }
200
- if (!runId) {
201
- throw new HTTPException(400, { message: "runId required to start run" });
202
- }
203
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
204
- if (!workflow) {
205
- throw new HTTPException(404, { message: "Workflow not found" });
206
- }
207
- const run = await workflow.getWorkflowRunById(runId);
208
- if (!run) {
209
- throw new HTTPException(404, { message: "Workflow run not found" });
210
- }
211
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
212
- void _run.start({
213
- inputData,
214
- requestContext,
215
- tracingOptions
216
- });
217
- return { message: "Workflow run started" };
218
- } catch (e) {
219
- return handleError(e, "Error starting workflow run");
220
- }
221
- }
222
- async function streamWorkflowHandler({
223
- mastra,
224
- requestContext,
225
- workflowId,
226
- runId,
227
- inputData,
228
- tracingOptions
229
- }) {
230
- return streamVNextWorkflowHandler({ mastra, workflowId, runId, inputData, requestContext, tracingOptions });
231
- }
232
- async function streamLegacyWorkflowHandler({
233
- mastra,
234
- requestContext,
235
- workflowId,
236
- runId,
237
- inputData,
238
- tracingOptions
239
- }) {
240
- try {
241
- if (!workflowId) {
242
- throw new HTTPException(400, { message: "Workflow ID is required" });
243
- }
244
- if (!runId) {
245
- throw new HTTPException(400, { message: "runId required to resume workflow" });
246
- }
247
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
248
- if (!workflow) {
249
- throw new HTTPException(404, { message: "Workflow not found" });
250
- }
251
- const serverCache = mastra.getServerCache();
252
- const run = await workflow.createRun({ runId });
253
- const result = run.streamLegacy({
254
- inputData,
255
- requestContext,
256
- onChunk: async (chunk) => {
257
- if (serverCache) {
258
- const cacheKey = runId;
259
- await serverCache.listPush(cacheKey, chunk);
260
- }
261
- },
262
- tracingOptions
263
- });
264
- return result;
265
- } catch (error) {
266
- return handleError(error, "Error executing workflow");
267
- }
268
- }
269
- async function observeStreamLegacyWorkflowHandler({
270
- mastra,
271
- workflowId,
272
- runId
273
- }) {
274
- try {
275
- if (!workflowId) {
276
- throw new HTTPException(400, { message: "Workflow ID is required" });
277
- }
278
- if (!runId) {
279
- throw new HTTPException(400, { message: "runId required to observe workflow stream" });
280
- }
281
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
282
- if (!workflow) {
283
- throw new HTTPException(404, { message: "Workflow not found" });
284
- }
285
- const run = await workflow.getWorkflowRunById(runId);
286
- if (!run) {
287
- throw new HTTPException(404, { message: "Workflow run not found" });
288
- }
289
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
290
- const serverCache = mastra.getServerCache();
291
- if (!serverCache) {
292
- throw new HTTPException(500, { message: "Server cache not found" });
293
- }
294
- const transformStream = new TransformStream();
295
- const writer = transformStream.writable.getWriter();
296
- const cachedRunChunks = await serverCache.listFromTo(runId, 0);
297
- for (const chunk of cachedRunChunks) {
298
- await writer.write(chunk);
299
- }
300
- writer.releaseLock();
301
- const result = _run.observeStreamLegacy();
302
- return result.stream?.pipeThrough(transformStream);
303
- } catch (error) {
304
- return handleError(error, "Error observing workflow stream");
305
- }
306
- }
307
- async function observeStreamWorkflowHandler({
308
- mastra,
309
- workflowId,
310
- runId
311
- }) {
312
- return observeStreamVNextWorkflowHandler({ mastra, workflowId, runId });
313
- }
314
- async function streamVNextWorkflowHandler({
315
- mastra,
316
- requestContext,
317
- workflowId,
318
- runId,
319
- inputData,
320
- closeOnSuspend,
321
- tracingOptions
322
- }) {
323
- try {
324
- if (!workflowId) {
325
- throw new HTTPException(400, { message: "Workflow ID is required" });
326
- }
327
- if (!runId) {
328
- throw new HTTPException(400, { message: "runId required to stream workflow" });
329
- }
330
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
331
- if (!workflow) {
332
- throw new HTTPException(404, { message: "Workflow not found" });
333
- }
334
- const serverCache = mastra.getServerCache();
335
- const run = await workflow.createRun({ runId });
336
- const result = run.stream({
337
- inputData,
338
- requestContext,
339
- closeOnSuspend,
340
- tracingOptions
341
- });
342
- return result.fullStream.pipeThrough(
343
- new TransformStream({
344
- transform(chunk, controller) {
345
- if (serverCache) {
346
- const cacheKey = runId;
347
- serverCache.listPush(cacheKey, chunk).catch(() => {
348
- });
349
- }
350
- controller.enqueue(chunk);
351
- }
352
- })
353
- );
354
- } catch (error) {
355
- return handleError(error, "Error streaming workflow");
356
- }
357
- }
358
- async function observeStreamVNextWorkflowHandler({
359
- mastra,
360
- workflowId,
361
- runId
362
- }) {
363
- try {
364
- if (!workflowId) {
365
- throw new HTTPException(400, { message: "Workflow ID is required" });
366
- }
367
- if (!runId) {
368
- throw new HTTPException(400, { message: "runId required to observe workflow stream" });
369
- }
370
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
371
- if (!workflow) {
372
- throw new HTTPException(404, { message: "Workflow not found" });
373
- }
374
- const run = await workflow.getWorkflowRunById(runId);
375
- if (!run) {
376
- throw new HTTPException(404, { message: "Workflow run not found" });
377
- }
378
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
379
- const serverCache = mastra.getServerCache();
380
- if (!serverCache) {
381
- throw new HTTPException(500, { message: "Server cache not found" });
382
- }
383
- const cachedRunChunks = await serverCache.listFromTo(runId, 0);
384
- const combinedStream = new ReadableStream({
385
- start(controller) {
386
- const emitCachedChunks = async () => {
387
- for (const chunk of cachedRunChunks) {
388
- controller.enqueue(chunk);
389
- }
390
- };
391
- const liveStream = _run.observeStream();
392
- const reader = liveStream.getReader();
393
- const pump = async () => {
394
- try {
395
- while (true) {
396
- const { done, value } = await reader.read();
397
- if (done) {
398
- controller.close();
399
- break;
400
- }
401
- controller.enqueue(value);
402
- }
403
- } catch (error) {
404
- controller.error(error);
405
- } finally {
406
- reader.releaseLock();
407
- }
408
- };
409
- void emitCachedChunks().then(() => {
410
- void pump();
411
- }).catch((error) => {
412
- controller.error(error);
413
- });
414
- }
415
- });
416
- return combinedStream;
417
- } catch (error) {
418
- return handleError(error, "Error observing workflow stream");
419
- }
420
- }
421
- async function resumeAsyncWorkflowHandler({
422
- mastra,
423
- workflowId,
424
- runId,
425
- body,
426
- requestContext,
427
- tracingOptions
428
- }) {
429
- try {
430
- if (!workflowId) {
431
- throw new HTTPException(400, { message: "Workflow ID is required" });
432
- }
433
- if (!runId) {
434
- throw new HTTPException(400, { message: "runId required to resume workflow" });
435
- }
436
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
437
- if (!workflow) {
438
- throw new HTTPException(404, { message: "Workflow not found" });
439
- }
440
- const run = await workflow.getWorkflowRunById(runId);
441
- if (!run) {
442
- throw new HTTPException(404, { message: "Workflow run not found" });
443
- }
444
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
445
- const result = await _run.resume({
446
- step: body.step,
447
- resumeData: body.resumeData,
448
- requestContext,
449
- tracingOptions
450
- });
451
- return result;
452
- } catch (error) {
453
- return handleError(error, "Error resuming workflow step");
454
- }
455
- }
456
- async function resumeWorkflowHandler({
457
- mastra,
458
- workflowId,
459
- runId,
460
- body,
461
- requestContext,
462
- tracingOptions
463
- }) {
464
- try {
465
- if (!workflowId) {
466
- throw new HTTPException(400, { message: "Workflow ID is required" });
467
- }
468
- if (!runId) {
469
- throw new HTTPException(400, { message: "runId required to resume workflow" });
470
- }
471
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
472
- if (!workflow) {
473
- throw new HTTPException(404, { message: "Workflow not found" });
474
- }
475
- const run = await workflow.getWorkflowRunById(runId);
476
- if (!run) {
477
- throw new HTTPException(404, { message: "Workflow run not found" });
478
- }
479
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
480
- void _run.resume({
481
- step: body.step,
482
- resumeData: body.resumeData,
483
- requestContext,
484
- tracingOptions
485
- });
486
- return { message: "Workflow run resumed" };
487
- } catch (error) {
488
- return handleError(error, "Error resuming workflow");
489
- }
490
- }
491
- async function resumeStreamWorkflowHandler({
492
- mastra,
493
- workflowId,
494
- runId,
495
- body,
496
- requestContext,
497
- tracingOptions
498
- }) {
499
- try {
500
- if (!workflowId) {
501
- throw new HTTPException(400, { message: "Workflow ID is required" });
502
- }
503
- if (!runId) {
504
- throw new HTTPException(400, { message: "runId required to resume workflow" });
505
- }
506
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
507
- if (!workflow) {
508
- throw new HTTPException(404, { message: "Workflow not found" });
509
- }
510
- const run = await workflow.getWorkflowRunById(runId);
511
- if (!run) {
512
- throw new HTTPException(404, { message: "Workflow run not found" });
513
- }
514
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
515
- const serverCache = mastra.getServerCache();
516
- const stream = _run.resumeStream({
517
- step: body.step,
518
- resumeData: body.resumeData,
519
- requestContext,
520
- tracingOptions
521
- }).fullStream.pipeThrough(
522
- new TransformStream({
523
- transform(chunk, controller) {
524
- if (serverCache) {
525
- const cacheKey = runId;
526
- serverCache.listPush(cacheKey, chunk).catch(() => {
527
- });
528
- }
529
- controller.enqueue(chunk);
530
- }
531
- })
532
- );
533
- return stream;
534
- } catch (error) {
535
- return handleError(error, "Error resuming workflow");
536
- }
537
- }
538
- async function listWorkflowRunsHandler({
539
- mastra,
540
- workflowId,
541
- fromDate,
542
- toDate,
543
- perPage,
544
- page,
545
- resourceId
546
- }) {
547
- try {
548
- if (!workflowId) {
549
- throw new HTTPException(400, { message: "Workflow ID is required" });
550
- }
551
- if (perPage !== void 0 && perPage !== false && (!Number.isInteger(perPage) || perPage <= 0)) {
552
- throw new HTTPException(400, { message: "perPage must be a positive integer or false" });
553
- }
554
- if (page !== void 0 && (!Number.isInteger(page) || page < 0)) {
555
- throw new HTTPException(400, { message: "page must be a non-negative integer" });
556
- }
557
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
558
- if (!workflow) {
559
- throw new HTTPException(404, { message: "Workflow not found" });
560
- }
561
- const workflowRuns = await workflow.listWorkflowRuns({ fromDate, toDate, perPage, page, resourceId }) || {
562
- runs: [],
563
- total: 0
564
- };
565
- return workflowRuns;
566
- } catch (error) {
567
- return handleError(error, "Error getting workflow runs");
568
- }
569
- }
570
- async function cancelWorkflowRunHandler({
571
- mastra,
572
- workflowId,
573
- runId
574
- }) {
575
- try {
576
- if (!workflowId) {
577
- throw new HTTPException(400, { message: "Workflow ID is required" });
578
- }
579
- if (!runId) {
580
- throw new HTTPException(400, { message: "runId required to cancel workflow run" });
581
- }
582
- const { workflow } = await listWorkflowsFromSystem({ mastra, workflowId });
583
- if (!workflow) {
584
- throw new HTTPException(404, { message: "Workflow not found" });
585
- }
586
- const run = await workflow.getWorkflowRunById(runId);
587
- if (!run) {
588
- throw new HTTPException(404, { message: "Workflow run not found" });
589
- }
590
- const _run = await workflow.createRun({ runId, resourceId: run.resourceId });
591
- await _run.cancel();
592
- return { message: "Workflow run cancelled" };
593
- } catch (error) {
594
- return handleError(error, "Error canceling workflow run");
595
- }
596
- }
597
-
598
- export { cancelWorkflowRunHandler, createWorkflowRunHandler, getWorkflowByIdHandler, getWorkflowRunByIdHandler, getWorkflowRunExecutionResultHandler, listWorkflowRunsHandler, listWorkflowsHandler, observeStreamLegacyWorkflowHandler, observeStreamVNextWorkflowHandler, observeStreamWorkflowHandler, resumeAsyncWorkflowHandler, resumeStreamWorkflowHandler, resumeWorkflowHandler, startAsyncWorkflowHandler, startWorkflowRunHandler, streamLegacyWorkflowHandler, streamVNextWorkflowHandler, streamWorkflowHandler, workflows_exports };
599
- //# sourceMappingURL=chunk-ZJ6KEY6H.js.map
600
- //# sourceMappingURL=chunk-ZJ6KEY6H.js.map