@mastra/core 1.0.0-beta.1 → 1.0.0-beta.10

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 (562) hide show
  1. package/CHANGELOG.md +1128 -0
  2. package/dist/agent/agent-legacy.d.ts +19 -22
  3. package/dist/agent/agent-legacy.d.ts.map +1 -1
  4. package/dist/agent/agent-types.test-d.d.ts +2 -0
  5. package/dist/agent/agent-types.test-d.d.ts.map +1 -0
  6. package/dist/agent/agent.d.ts +6 -6
  7. package/dist/agent/agent.d.ts.map +1 -1
  8. package/dist/agent/agent.types.d.ts +6 -4
  9. package/dist/agent/agent.types.d.ts.map +1 -1
  10. package/dist/agent/index.cjs +9 -9
  11. package/dist/agent/index.js +2 -2
  12. package/dist/agent/message-list/index.cjs +3 -3
  13. package/dist/agent/message-list/index.d.ts +60 -3
  14. package/dist/agent/message-list/index.d.ts.map +1 -1
  15. package/dist/agent/message-list/index.js +1 -1
  16. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -1
  17. package/dist/agent/message-list/prompt/convert-file.d.ts +1 -1
  18. package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -1
  19. package/dist/agent/message-list/prompt/download-assets.d.ts.map +1 -1
  20. package/dist/agent/save-queue/index.d.ts +3 -1
  21. package/dist/agent/save-queue/index.d.ts.map +1 -1
  22. package/dist/agent/test-utils.d.ts +37 -0
  23. package/dist/agent/test-utils.d.ts.map +1 -1
  24. package/dist/agent/trip-wire.d.ts.map +1 -1
  25. package/dist/agent/types.d.ts +21 -6
  26. package/dist/agent/types.d.ts.map +1 -1
  27. package/dist/agent/utils.d.ts +3 -3
  28. package/dist/agent/utils.d.ts.map +1 -1
  29. package/dist/agent/workflows/prepare-stream/index.d.ts +9 -7
  30. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  31. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +3 -3
  32. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  33. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +6 -5
  34. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  35. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +2 -1
  36. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  37. package/dist/agent/workflows/prepare-stream/schema.d.ts +8 -8
  38. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -1
  39. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +11 -1
  40. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
  41. package/dist/base.cjs +2 -2
  42. package/dist/base.js +1 -1
  43. package/dist/bundler/index.cjs +2 -2
  44. package/dist/bundler/index.js +1 -1
  45. package/dist/cache/index.cjs +3 -3
  46. package/dist/cache/index.js +1 -1
  47. package/dist/{chunk-4CDL2QJT.js → chunk-267YOF47.js} +121 -36
  48. package/dist/chunk-267YOF47.js.map +1 -0
  49. package/dist/{chunk-OJNJA5ZI.js → chunk-3CKZSDTQ.js} +3 -3
  50. package/dist/{chunk-OJNJA5ZI.js.map → chunk-3CKZSDTQ.js.map} +1 -1
  51. package/dist/{chunk-JV2KH24V.js → chunk-3GKKHF36.js} +693 -375
  52. package/dist/chunk-3GKKHF36.js.map +1 -0
  53. package/dist/{chunk-TQTAMPSC.js → chunk-3N3QE4ZK.js} +3 -3
  54. package/dist/chunk-3N3QE4ZK.js.map +1 -0
  55. package/dist/{chunk-QUKUN6NR.cjs → chunk-4JKEUSCC.cjs} +107 -7
  56. package/dist/chunk-4JKEUSCC.cjs.map +1 -0
  57. package/dist/{chunk-XEVG546F.js → chunk-4Q3Z6QRE.js} +178 -12
  58. package/dist/chunk-4Q3Z6QRE.js.map +1 -0
  59. package/dist/{chunk-CBAB7GOD.cjs → chunk-6BJ7XHRH.cjs} +2 -2
  60. package/dist/{chunk-CBAB7GOD.cjs.map → chunk-6BJ7XHRH.cjs.map} +1 -1
  61. package/dist/{chunk-JUBFO5J3.js → chunk-6CYYFT4O.js} +11378 -8189
  62. package/dist/chunk-6CYYFT4O.js.map +1 -0
  63. package/dist/{chunk-W7UH2PWL.js → chunk-6ONQWD6S.js} +1124 -325
  64. package/dist/chunk-6ONQWD6S.js.map +1 -0
  65. package/dist/{chunk-GRBGQ2GE.js → chunk-6TBWJV35.js} +5 -3
  66. package/dist/chunk-6TBWJV35.js.map +1 -0
  67. package/dist/chunk-6XCINXZ7.cjs +194 -0
  68. package/dist/chunk-6XCINXZ7.cjs.map +1 -0
  69. package/dist/{chunk-E7K4FTLN.cjs → chunk-72YCRTEX.cjs} +18 -2
  70. package/dist/chunk-72YCRTEX.cjs.map +1 -0
  71. package/dist/{chunk-MA7TEM62.cjs → chunk-7THRV5KZ.cjs} +762 -27
  72. package/dist/chunk-7THRV5KZ.cjs.map +1 -0
  73. package/dist/{chunk-76K3IYWM.js → chunk-ADADLFDR.js} +3 -3
  74. package/dist/{chunk-76K3IYWM.js.map → chunk-ADADLFDR.js.map} +1 -1
  75. package/dist/{chunk-DSNPWVIG.cjs → chunk-AF74UXR5.cjs} +4 -3
  76. package/dist/chunk-AF74UXR5.cjs.map +1 -0
  77. package/dist/{chunk-DNEURYF3.cjs → chunk-BCRRHJGV.cjs} +206 -65
  78. package/dist/chunk-BCRRHJGV.cjs.map +1 -0
  79. package/dist/chunk-BWYU7D33.js +192 -0
  80. package/dist/chunk-BWYU7D33.js.map +1 -0
  81. package/dist/{chunk-MV7KHWUT.js → chunk-BXONP7HX.js} +391 -15
  82. package/dist/chunk-BXONP7HX.js.map +1 -0
  83. package/dist/chunk-CDRYT2A5.js +513 -0
  84. package/dist/chunk-CDRYT2A5.js.map +1 -0
  85. package/dist/{chunk-CB575O6L.cjs → chunk-CZEJQSWB.cjs} +473 -124
  86. package/dist/chunk-CZEJQSWB.cjs.map +1 -0
  87. package/dist/chunk-DD2VNRQM.js +62 -0
  88. package/dist/chunk-DD2VNRQM.js.map +1 -0
  89. package/dist/{chunk-KEXGB7FK.cjs → chunk-DGV2FWB4.cjs} +7 -7
  90. package/dist/{chunk-KEXGB7FK.cjs.map → chunk-DGV2FWB4.cjs.map} +1 -1
  91. package/dist/{chunk-Y63IFHEZ.cjs → chunk-EOPEDKLG.cjs} +4 -4
  92. package/dist/chunk-EOPEDKLG.cjs.map +1 -0
  93. package/dist/{chunk-UIZSWUKP.js → chunk-F2GAJSBI.js} +105 -7
  94. package/dist/chunk-F2GAJSBI.js.map +1 -0
  95. package/dist/{chunk-VOY2RXOC.cjs → chunk-G4IFCTL5.cjs} +182 -15
  96. package/dist/chunk-G4IFCTL5.cjs.map +1 -0
  97. package/dist/chunk-KJBMTK5B.cjs +64 -0
  98. package/dist/chunk-KJBMTK5B.cjs.map +1 -0
  99. package/dist/{chunk-S6URFGCZ.js → chunk-LSHPJWM5.js} +3 -3
  100. package/dist/{chunk-S6URFGCZ.js.map → chunk-LSHPJWM5.js.map} +1 -1
  101. package/dist/chunk-MGCGWPQJ.cjs +275 -0
  102. package/dist/chunk-MGCGWPQJ.cjs.map +1 -0
  103. package/dist/chunk-MRFUISXC.cjs +4981 -0
  104. package/dist/chunk-MRFUISXC.cjs.map +1 -0
  105. package/dist/chunk-MSZP3FNH.cjs +518 -0
  106. package/dist/chunk-MSZP3FNH.cjs.map +1 -0
  107. package/dist/{chunk-KJ2SW6VA.js → chunk-NRUZYMHE.js} +4 -3
  108. package/dist/chunk-NRUZYMHE.js.map +1 -0
  109. package/dist/{chunk-VOQ3ULMT.js → chunk-NUA6TSRD.js} +752 -17
  110. package/dist/chunk-NUA6TSRD.js.map +1 -0
  111. package/dist/chunk-OEIVMCWX.js +4959 -0
  112. package/dist/chunk-OEIVMCWX.js.map +1 -0
  113. package/dist/{chunk-CINNK34N.js → chunk-OIDPIW42.js} +26 -11
  114. package/dist/chunk-OIDPIW42.js.map +1 -0
  115. package/dist/{chunk-CD56CXVE.cjs → chunk-OYIDRI3A.cjs} +32 -17
  116. package/dist/chunk-OYIDRI3A.cjs.map +1 -0
  117. package/dist/{chunk-2ZVKF4HP.cjs → chunk-P2D2VO2O.cjs} +1129 -328
  118. package/dist/chunk-P2D2VO2O.cjs.map +1 -0
  119. package/dist/{chunk-JPGVRWWL.js → chunk-PK2A5WBG.js} +472 -125
  120. package/dist/chunk-PK2A5WBG.js.map +1 -0
  121. package/dist/{chunk-X7JMA3IY.js → chunk-PSCMWPLC.js} +2 -2
  122. package/dist/{chunk-X7JMA3IY.js.map → chunk-PSCMWPLC.js.map} +1 -1
  123. package/dist/{chunk-WM6CK2F3.cjs → chunk-QD3UWFAV.cjs} +130 -48
  124. package/dist/chunk-QD3UWFAV.cjs.map +1 -0
  125. package/dist/{chunk-MSWTA73A.cjs → chunk-SL7Q6IZF.cjs} +11426 -8219
  126. package/dist/chunk-SL7Q6IZF.cjs.map +1 -0
  127. package/dist/{chunk-ECFXGXWO.cjs → chunk-SSPUH2N7.cjs} +693 -375
  128. package/dist/chunk-SSPUH2N7.cjs.map +1 -0
  129. package/dist/{chunk-BMAFVZ2D.cjs → chunk-T2VLUFGG.cjs} +4 -4
  130. package/dist/{chunk-BMAFVZ2D.cjs.map → chunk-T2VLUFGG.cjs.map} +1 -1
  131. package/dist/chunk-THZTRBFS.js +268 -0
  132. package/dist/chunk-THZTRBFS.js.map +1 -0
  133. package/dist/{chunk-Y6ROD72V.cjs → chunk-UIGRFDO6.cjs} +4 -4
  134. package/dist/{chunk-Y6ROD72V.cjs.map → chunk-UIGRFDO6.cjs.map} +1 -1
  135. package/dist/{chunk-J7O6WENZ.cjs → chunk-UVHSM2GU.cjs} +6 -2
  136. package/dist/chunk-UVHSM2GU.cjs.map +1 -0
  137. package/dist/{chunk-GGYKYORQ.cjs → chunk-WX2DLWXF.cjs} +407 -22
  138. package/dist/chunk-WX2DLWXF.cjs.map +1 -0
  139. package/dist/{chunk-H6CZGPZD.js → chunk-XRJQ5ZA7.js} +179 -38
  140. package/dist/chunk-XRJQ5ZA7.js.map +1 -0
  141. package/dist/{chunk-KIZIOFZC.js → chunk-Y36Y5MTD.js} +17 -3
  142. package/dist/chunk-Y36Y5MTD.js.map +1 -0
  143. package/dist/{chunk-IQO7ANVS.cjs → chunk-YWMMBIOM.cjs} +21 -20
  144. package/dist/chunk-YWMMBIOM.cjs.map +1 -0
  145. package/dist/{chunk-I4CXL4SR.js → chunk-Z57R5WS4.js} +16 -15
  146. package/dist/chunk-Z57R5WS4.js.map +1 -0
  147. package/dist/deployer/index.cjs +2 -2
  148. package/dist/deployer/index.js +1 -1
  149. package/dist/di/index.cjs +10 -2
  150. package/dist/di/index.d.ts +1 -1
  151. package/dist/di/index.d.ts.map +1 -1
  152. package/dist/di/index.js +1 -1
  153. package/dist/evals/base.d.ts +10 -2
  154. package/dist/evals/base.d.ts.map +1 -1
  155. package/dist/evals/base.test-utils.d.ts +25 -25
  156. package/dist/evals/index.cjs +9 -9
  157. package/dist/evals/index.js +2 -2
  158. package/dist/evals/scoreTraces/index.cjs +7 -6
  159. package/dist/evals/scoreTraces/index.cjs.map +1 -1
  160. package/dist/evals/scoreTraces/index.js +4 -3
  161. package/dist/evals/scoreTraces/index.js.map +1 -1
  162. package/dist/evals/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -1
  163. package/dist/evals/types.d.ts +25 -24
  164. package/dist/evals/types.d.ts.map +1 -1
  165. package/dist/index.cjs +2 -2
  166. package/dist/index.js +1 -1
  167. package/dist/integration/index.cjs +2 -2
  168. package/dist/integration/index.js +1 -1
  169. package/dist/llm/index.cjs +30 -10
  170. package/dist/llm/index.d.ts +2 -0
  171. package/dist/llm/index.d.ts.map +1 -1
  172. package/dist/llm/index.js +5 -1
  173. package/dist/llm/model/aisdk/v5/model.d.ts +47 -0
  174. package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -0
  175. package/dist/llm/model/gateway-resolver.d.ts.map +1 -1
  176. package/dist/llm/model/gateways/azure.d.ts +36 -0
  177. package/dist/llm/model/gateways/azure.d.ts.map +1 -0
  178. package/dist/llm/model/gateways/base.d.ts +9 -4
  179. package/dist/llm/model/gateways/base.d.ts.map +1 -1
  180. package/dist/llm/model/gateways/constants.d.ts.map +1 -1
  181. package/dist/llm/model/gateways/index.d.ts +4 -1
  182. package/dist/llm/model/gateways/index.d.ts.map +1 -1
  183. package/dist/llm/model/gateways/models-dev.d.ts +3 -2
  184. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  185. package/dist/llm/model/gateways/netlify.d.ts +4 -3
  186. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  187. package/dist/llm/model/is-v2-model.d.ts +3 -0
  188. package/dist/llm/model/is-v2-model.d.ts.map +1 -0
  189. package/dist/llm/model/model-method-from-agent.d.ts +4 -0
  190. package/dist/llm/model/model-method-from-agent.d.ts.map +1 -0
  191. package/dist/llm/model/model.d.ts.map +1 -1
  192. package/dist/llm/model/model.loop.d.ts +2 -2
  193. package/dist/llm/model/model.loop.d.ts.map +1 -1
  194. package/dist/llm/model/model.loop.types.d.ts +2 -0
  195. package/dist/llm/model/model.loop.types.d.ts.map +1 -1
  196. package/dist/llm/model/provider-options.d.ts +4 -1
  197. package/dist/llm/model/provider-options.d.ts.map +1 -1
  198. package/dist/llm/model/provider-registry.d.ts +11 -1
  199. package/dist/llm/model/provider-registry.d.ts.map +1 -1
  200. package/dist/llm/model/provider-types.generated.d.ts +473 -24
  201. package/dist/llm/model/registry-generator.d.ts +12 -0
  202. package/dist/llm/model/registry-generator.d.ts.map +1 -1
  203. package/dist/llm/model/resolve-model.d.ts +1 -1
  204. package/dist/llm/model/resolve-model.d.ts.map +1 -1
  205. package/dist/llm/model/router.d.ts +12 -5
  206. package/dist/llm/model/router.d.ts.map +1 -1
  207. package/dist/llm/model/shared.types.d.ts +10 -4
  208. package/dist/llm/model/shared.types.d.ts.map +1 -1
  209. package/dist/logger/constants.d.ts +1 -0
  210. package/dist/logger/constants.d.ts.map +1 -1
  211. package/dist/logger/index.cjs +11 -11
  212. package/dist/logger/index.js +2 -2
  213. package/dist/logger/transport.d.ts +1 -1
  214. package/dist/logger/transport.d.ts.map +1 -1
  215. package/dist/loop/index.cjs +2 -2
  216. package/dist/loop/index.js +1 -1
  217. package/dist/loop/loop.d.ts.map +1 -1
  218. package/dist/loop/network/index.d.ts.map +1 -1
  219. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts +37 -0
  220. package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts.map +1 -0
  221. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  222. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  223. package/dist/loop/test-utils/options.d.ts.map +1 -1
  224. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  225. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  226. package/dist/loop/test-utils/textStream.d.ts.map +1 -1
  227. package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -1
  228. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  229. package/dist/loop/test-utils/utils.d.ts +1 -1
  230. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  231. package/dist/loop/types.d.ts +22 -5
  232. package/dist/loop/types.d.ts.map +1 -1
  233. package/dist/loop/workflows/agentic-execution/index.d.ts +42 -42
  234. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  235. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +29 -29
  236. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  237. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +14 -14
  238. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  239. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  240. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  241. package/dist/loop/workflows/agentic-loop/index.d.ts +44 -43
  242. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  243. package/dist/loop/workflows/run-state.d.ts +2 -2
  244. package/dist/loop/workflows/run-state.d.ts.map +1 -1
  245. package/dist/loop/workflows/schema.d.ts +14 -14
  246. package/dist/loop/workflows/stream.d.ts +1 -1
  247. package/dist/loop/workflows/stream.d.ts.map +1 -1
  248. package/dist/mastra/index.cjs +2 -2
  249. package/dist/mastra/index.d.ts +377 -12
  250. package/dist/mastra/index.d.ts.map +1 -1
  251. package/dist/mastra/index.js +1 -1
  252. package/dist/mcp/index.cjs +4 -4
  253. package/dist/mcp/index.cjs.map +1 -1
  254. package/dist/mcp/index.d.ts +4 -4
  255. package/dist/mcp/index.d.ts.map +1 -1
  256. package/dist/mcp/index.js +2 -2
  257. package/dist/mcp/index.js.map +1 -1
  258. package/dist/mcp/types.d.ts +2 -2
  259. package/dist/mcp/types.d.ts.map +1 -1
  260. package/dist/memory/index.cjs +21 -327
  261. package/dist/memory/index.cjs.map +1 -1
  262. package/dist/memory/index.js +1 -327
  263. package/dist/memory/index.js.map +1 -1
  264. package/dist/memory/memory.d.ts +28 -18
  265. package/dist/memory/memory.d.ts.map +1 -1
  266. package/dist/memory/mock.d.ts +15 -14
  267. package/dist/memory/mock.d.ts.map +1 -1
  268. package/dist/memory/types.d.ts +69 -11
  269. package/dist/memory/types.d.ts.map +1 -1
  270. package/dist/models-dev-23RN2WHG.js +3 -0
  271. package/dist/{models-dev-DNBKXHT4.js.map → models-dev-23RN2WHG.js.map} +1 -1
  272. package/dist/models-dev-EO3SUIY2.cjs +12 -0
  273. package/dist/{models-dev-YBEEQIX6.cjs.map → models-dev-EO3SUIY2.cjs.map} +1 -1
  274. package/dist/netlify-GXJ5D5DD.js +3 -0
  275. package/dist/{netlify-7G2L5VSH.js.map → netlify-GXJ5D5DD.js.map} +1 -1
  276. package/dist/netlify-KJLY3GFS.cjs +12 -0
  277. package/dist/{netlify-GWNGSIRZ.cjs.map → netlify-KJLY3GFS.cjs.map} +1 -1
  278. package/dist/observability/index.cjs +16 -8
  279. package/dist/observability/index.js +1 -1
  280. package/dist/observability/types/tracing.d.ts +236 -13
  281. package/dist/observability/types/tracing.d.ts.map +1 -1
  282. package/dist/observability/utils.d.ts +47 -1
  283. package/dist/observability/utils.d.ts.map +1 -1
  284. package/dist/processors/index.cjs +35 -11
  285. package/dist/processors/index.d.ts +101 -23
  286. package/dist/processors/index.d.ts.map +1 -1
  287. package/dist/processors/index.js +1 -1
  288. package/dist/processors/memory/index.d.ts +7 -0
  289. package/dist/processors/memory/index.d.ts.map +1 -0
  290. package/dist/processors/memory/message-history.d.ts +43 -0
  291. package/dist/processors/memory/message-history.d.ts.map +1 -0
  292. package/dist/processors/memory/semantic-recall.d.ts +152 -0
  293. package/dist/processors/memory/semantic-recall.d.ts.map +1 -0
  294. package/dist/processors/memory/working-memory.d.ts +65 -0
  295. package/dist/processors/memory/working-memory.d.ts.map +1 -0
  296. package/dist/processors/processors/batch-parts.d.ts +1 -1
  297. package/dist/processors/processors/batch-parts.d.ts.map +1 -1
  298. package/dist/processors/processors/index.d.ts +2 -1
  299. package/dist/processors/processors/index.d.ts.map +1 -1
  300. package/dist/processors/processors/language-detector.d.ts +15 -1
  301. package/dist/processors/processors/language-detector.d.ts.map +1 -1
  302. package/dist/processors/processors/moderation.d.ts +15 -1
  303. package/dist/processors/processors/moderation.d.ts.map +1 -1
  304. package/dist/processors/processors/pii-detector.d.ts +15 -1
  305. package/dist/processors/processors/pii-detector.d.ts.map +1 -1
  306. package/dist/processors/processors/prompt-injection-detector.d.ts +15 -1
  307. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
  308. package/dist/processors/processors/structured-output.d.ts +3 -2
  309. package/dist/processors/processors/structured-output.d.ts.map +1 -1
  310. package/dist/processors/processors/system-prompt-scrubber.d.ts +1 -1
  311. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -1
  312. package/dist/processors/processors/token-limiter.d.ts +22 -12
  313. package/dist/processors/processors/token-limiter.d.ts.map +1 -1
  314. package/dist/processors/processors/tool-call-filter.d.ts +28 -0
  315. package/dist/processors/processors/tool-call-filter.d.ts.map +1 -0
  316. package/dist/processors/processors/unicode-normalizer.d.ts +1 -1
  317. package/dist/processors/processors/unicode-normalizer.d.ts.map +1 -1
  318. package/dist/processors/runner.d.ts +35 -4
  319. package/dist/processors/runner.d.ts.map +1 -1
  320. package/dist/provider-registry-A7FILT6Q.cjs +40 -0
  321. package/dist/provider-registry-A7FILT6Q.cjs.map +1 -0
  322. package/dist/provider-registry-XM2YDI5X.js +3 -0
  323. package/dist/provider-registry-XM2YDI5X.js.map +1 -0
  324. package/dist/provider-registry.json +1038 -55
  325. package/dist/{registry-generator-MK63POJO.cjs → registry-generator-34SC4TAU.cjs} +23 -6
  326. package/dist/registry-generator-34SC4TAU.cjs.map +1 -0
  327. package/dist/{registry-generator-H4YNODDH.js → registry-generator-UMTNPBJX.js} +23 -7
  328. package/dist/registry-generator-UMTNPBJX.js.map +1 -0
  329. package/dist/relevance/index.cjs +2 -2
  330. package/dist/relevance/index.js +1 -1
  331. package/dist/request-context/index.cjs +10 -2
  332. package/dist/request-context/index.d.ts +26 -0
  333. package/dist/request-context/index.d.ts.map +1 -1
  334. package/dist/request-context/index.js +1 -1
  335. package/dist/server/auth.d.ts +11 -0
  336. package/dist/server/auth.d.ts.map +1 -1
  337. package/dist/server/base.d.ts +51 -0
  338. package/dist/server/base.d.ts.map +1 -0
  339. package/dist/server/composite-auth.d.ts +9 -0
  340. package/dist/server/composite-auth.d.ts.map +1 -0
  341. package/dist/server/index.cjs +124 -3
  342. package/dist/server/index.cjs.map +1 -1
  343. package/dist/server/index.d.ts +8 -0
  344. package/dist/server/index.d.ts.map +1 -1
  345. package/dist/server/index.js +121 -3
  346. package/dist/server/index.js.map +1 -1
  347. package/dist/server/simple-auth.d.ts +27 -0
  348. package/dist/server/simple-auth.d.ts.map +1 -0
  349. package/dist/storage/base.d.ts +76 -3
  350. package/dist/storage/base.d.ts.map +1 -1
  351. package/dist/storage/constants.d.ts +3 -1
  352. package/dist/storage/constants.d.ts.map +1 -1
  353. package/dist/storage/domains/agents/base.d.ts +49 -0
  354. package/dist/storage/domains/agents/base.d.ts.map +1 -0
  355. package/dist/storage/domains/agents/index.d.ts +3 -0
  356. package/dist/storage/domains/agents/index.d.ts.map +1 -0
  357. package/dist/storage/domains/agents/inmemory.d.ts +22 -0
  358. package/dist/storage/domains/agents/inmemory.d.ts.map +1 -0
  359. package/dist/storage/domains/index.d.ts +1 -0
  360. package/dist/storage/domains/index.d.ts.map +1 -1
  361. package/dist/storage/domains/memory/inmemory.d.ts.map +1 -1
  362. package/dist/storage/domains/operations/inmemory.d.ts.map +1 -1
  363. package/dist/storage/domains/scores/base.d.ts +2 -2
  364. package/dist/storage/domains/scores/base.d.ts.map +1 -1
  365. package/dist/storage/domains/scores/inmemory.d.ts +2 -2
  366. package/dist/storage/domains/scores/inmemory.d.ts.map +1 -1
  367. package/dist/storage/domains/workflows/base.d.ts +4 -0
  368. package/dist/storage/domains/workflows/base.d.ts.map +1 -1
  369. package/dist/storage/domains/workflows/inmemory.d.ts +5 -1
  370. package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -1
  371. package/dist/storage/index.cjs +65 -29
  372. package/dist/storage/index.js +1 -1
  373. package/dist/storage/mock.d.ts +7 -2
  374. package/dist/storage/mock.d.ts.map +1 -1
  375. package/dist/storage/storageWithInit.d.ts.map +1 -1
  376. package/dist/storage/types.d.ts +85 -2
  377. package/dist/storage/types.d.ts.map +1 -1
  378. package/dist/storage/utils.d.ts +82 -0
  379. package/dist/storage/utils.d.ts.map +1 -1
  380. package/dist/stream/MastraAgentNetworkStream.d.ts +1 -1
  381. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -1
  382. package/dist/stream/MastraWorkflowStream.d.ts +1 -1
  383. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -1
  384. package/dist/stream/RunOutput.d.ts +2 -2
  385. package/dist/stream/RunOutput.d.ts.map +1 -1
  386. package/dist/stream/aisdk/v4/usage.d.ts +19 -0
  387. package/dist/stream/aisdk/v4/usage.d.ts.map +1 -0
  388. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  389. package/dist/stream/aisdk/v5/execute.d.ts +8 -4
  390. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  391. package/dist/stream/aisdk/v5/input.d.ts +4 -1
  392. package/dist/stream/aisdk/v5/input.d.ts.map +1 -1
  393. package/dist/stream/aisdk/v5/output.d.ts +9 -9
  394. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  395. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
  396. package/dist/stream/base/base.d.ts +1 -1
  397. package/dist/stream/base/base.d.ts.map +1 -1
  398. package/dist/stream/base/input.d.ts +1 -1
  399. package/dist/stream/base/output-format-handlers.d.ts +14 -1
  400. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  401. package/dist/stream/base/output.d.ts +3 -3
  402. package/dist/stream/base/output.d.ts.map +1 -1
  403. package/dist/stream/index.cjs +15 -11
  404. package/dist/stream/index.d.ts +2 -2
  405. package/dist/stream/index.d.ts.map +1 -1
  406. package/dist/stream/index.js +2 -2
  407. package/dist/stream/types.d.ts +48 -25
  408. package/dist/stream/types.d.ts.map +1 -1
  409. package/dist/test-utils/llm-mock.cjs +101 -30
  410. package/dist/test-utils/llm-mock.cjs.map +1 -1
  411. package/dist/test-utils/llm-mock.d.ts +7 -2
  412. package/dist/test-utils/llm-mock.d.ts.map +1 -1
  413. package/dist/test-utils/llm-mock.js +97 -30
  414. package/dist/test-utils/llm-mock.js.map +1 -1
  415. package/dist/tools/index.cjs +6 -6
  416. package/dist/tools/index.js +2 -2
  417. package/dist/tools/is-vercel-tool.cjs +2 -2
  418. package/dist/tools/is-vercel-tool.js +1 -1
  419. package/dist/tools/stream.d.ts +10 -4
  420. package/dist/tools/stream.d.ts.map +1 -1
  421. package/dist/tools/tool-builder/builder.d.ts +2 -0
  422. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  423. package/dist/tools/tool-stream-types.test-d.d.ts +2 -0
  424. package/dist/tools/tool-stream-types.test-d.d.ts.map +1 -0
  425. package/dist/tools/tool.d.ts +21 -8
  426. package/dist/tools/tool.d.ts.map +1 -1
  427. package/dist/tools/types.d.ts +33 -6
  428. package/dist/tools/types.d.ts.map +1 -1
  429. package/dist/tools/validation.d.ts +25 -1
  430. package/dist/tools/validation.d.ts.map +1 -1
  431. package/dist/tts/index.cjs +2 -2
  432. package/dist/tts/index.js +1 -1
  433. package/dist/types/zod-compat.d.ts +14 -1
  434. package/dist/types/zod-compat.d.ts.map +1 -1
  435. package/dist/utils.cjs +25 -21
  436. package/dist/utils.d.ts +9 -4
  437. package/dist/utils.d.ts.map +1 -1
  438. package/dist/utils.js +1 -1
  439. package/dist/vector/filter/index.cjs +7 -189
  440. package/dist/vector/filter/index.cjs.map +1 -1
  441. package/dist/vector/filter/index.js +1 -190
  442. package/dist/vector/filter/index.js.map +1 -1
  443. package/dist/vector/index.cjs +7 -2
  444. package/dist/vector/index.cjs.map +1 -1
  445. package/dist/vector/index.d.ts +1 -0
  446. package/dist/vector/index.d.ts.map +1 -1
  447. package/dist/vector/index.js +2 -1
  448. package/dist/vector/index.js.map +1 -1
  449. package/dist/vector/types.d.ts +86 -3
  450. package/dist/vector/types.d.ts.map +1 -1
  451. package/dist/vector/vector.d.ts +39 -2
  452. package/dist/vector/vector.d.ts.map +1 -1
  453. package/dist/voice/aisdk/index.d.ts +3 -0
  454. package/dist/voice/aisdk/index.d.ts.map +1 -0
  455. package/dist/voice/aisdk/speech.d.ts +23 -0
  456. package/dist/voice/aisdk/speech.d.ts.map +1 -0
  457. package/dist/voice/aisdk/transcription.d.ts +22 -0
  458. package/dist/voice/aisdk/transcription.d.ts.map +1 -0
  459. package/dist/voice/composite-voice.d.ts +4 -3
  460. package/dist/voice/composite-voice.d.ts.map +1 -1
  461. package/dist/voice/index.cjs +12 -4
  462. package/dist/voice/index.d.ts +1 -0
  463. package/dist/voice/index.d.ts.map +1 -1
  464. package/dist/voice/index.js +1 -1
  465. package/dist/workflows/default.d.ts +179 -270
  466. package/dist/workflows/default.d.ts.map +1 -1
  467. package/dist/workflows/evented/execution-engine.d.ts +3 -1
  468. package/dist/workflows/evented/execution-engine.d.ts.map +1 -1
  469. package/dist/workflows/evented/index.cjs +10 -10
  470. package/dist/workflows/evented/index.js +1 -1
  471. package/dist/workflows/evented/step-executor.d.ts +1 -1
  472. package/dist/workflows/evented/step-executor.d.ts.map +1 -1
  473. package/dist/workflows/evented/workflow-event-processor/index.d.ts +5 -4
  474. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -1
  475. package/dist/workflows/evented/workflow-event-processor/loop.d.ts +1 -1
  476. package/dist/workflows/evented/workflow-event-processor/loop.d.ts.map +1 -1
  477. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts +2 -2
  478. package/dist/workflows/evented/workflow-event-processor/parallel.d.ts.map +1 -1
  479. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts +2 -2
  480. package/dist/workflows/evented/workflow-event-processor/sleep.d.ts.map +1 -1
  481. package/dist/workflows/evented/workflow.d.ts +2 -1
  482. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  483. package/dist/workflows/execution-engine.d.ts +8 -6
  484. package/dist/workflows/execution-engine.d.ts.map +1 -1
  485. package/dist/workflows/handlers/control-flow.d.ts +133 -0
  486. package/dist/workflows/handlers/control-flow.d.ts.map +1 -0
  487. package/dist/workflows/handlers/entry.d.ts +43 -0
  488. package/dist/workflows/handlers/entry.d.ts.map +1 -0
  489. package/dist/workflows/handlers/sleep.d.ts +60 -0
  490. package/dist/workflows/handlers/sleep.d.ts.map +1 -0
  491. package/dist/workflows/handlers/step.d.ts +58 -0
  492. package/dist/workflows/handlers/step.d.ts.map +1 -0
  493. package/dist/workflows/index.cjs +36 -16
  494. package/dist/workflows/index.js +1 -1
  495. package/dist/workflows/step.d.ts +8 -6
  496. package/dist/workflows/step.d.ts.map +1 -1
  497. package/dist/workflows/types.d.ts +223 -10
  498. package/dist/workflows/types.d.ts.map +1 -1
  499. package/dist/workflows/utils.d.ts +36 -0
  500. package/dist/workflows/utils.d.ts.map +1 -1
  501. package/dist/workflows/workflow.d.ts +135 -54
  502. package/dist/workflows/workflow.d.ts.map +1 -1
  503. package/package.json +26 -30
  504. package/src/llm/model/provider-types.generated.d.ts +473 -24
  505. package/dist/chunk-2ZVKF4HP.cjs.map +0 -1
  506. package/dist/chunk-436FFEF6.js +0 -34
  507. package/dist/chunk-436FFEF6.js.map +0 -1
  508. package/dist/chunk-4CDL2QJT.js.map +0 -1
  509. package/dist/chunk-7AHYOMHJ.js +0 -149
  510. package/dist/chunk-7AHYOMHJ.js.map +0 -1
  511. package/dist/chunk-CB575O6L.cjs.map +0 -1
  512. package/dist/chunk-CD56CXVE.cjs.map +0 -1
  513. package/dist/chunk-CINNK34N.js.map +0 -1
  514. package/dist/chunk-DNEURYF3.cjs.map +0 -1
  515. package/dist/chunk-DSNPWVIG.cjs.map +0 -1
  516. package/dist/chunk-E7K4FTLN.cjs.map +0 -1
  517. package/dist/chunk-ECFXGXWO.cjs.map +0 -1
  518. package/dist/chunk-ET6UOTTU.cjs +0 -154
  519. package/dist/chunk-ET6UOTTU.cjs.map +0 -1
  520. package/dist/chunk-GGYKYORQ.cjs.map +0 -1
  521. package/dist/chunk-GRBGQ2GE.js.map +0 -1
  522. package/dist/chunk-H6CZGPZD.js.map +0 -1
  523. package/dist/chunk-HDJFSJCK.js +0 -2237
  524. package/dist/chunk-HDJFSJCK.js.map +0 -1
  525. package/dist/chunk-HGNRQ3OG.js +0 -58
  526. package/dist/chunk-HGNRQ3OG.js.map +0 -1
  527. package/dist/chunk-I4CXL4SR.js.map +0 -1
  528. package/dist/chunk-IQO7ANVS.cjs.map +0 -1
  529. package/dist/chunk-J7O6WENZ.cjs.map +0 -1
  530. package/dist/chunk-JPGVRWWL.js.map +0 -1
  531. package/dist/chunk-JUBFO5J3.js.map +0 -1
  532. package/dist/chunk-JV2KH24V.js.map +0 -1
  533. package/dist/chunk-KIZIOFZC.js.map +0 -1
  534. package/dist/chunk-KJ2SW6VA.js.map +0 -1
  535. package/dist/chunk-LJFJTTZQ.cjs +0 -4
  536. package/dist/chunk-LJFJTTZQ.cjs.map +0 -1
  537. package/dist/chunk-LRSB62Z6.cjs +0 -60
  538. package/dist/chunk-LRSB62Z6.cjs.map +0 -1
  539. package/dist/chunk-LWBQ4P4N.cjs +0 -2240
  540. package/dist/chunk-LWBQ4P4N.cjs.map +0 -1
  541. package/dist/chunk-MA7TEM62.cjs.map +0 -1
  542. package/dist/chunk-MSWTA73A.cjs.map +0 -1
  543. package/dist/chunk-MV7KHWUT.js.map +0 -1
  544. package/dist/chunk-QUKUN6NR.cjs.map +0 -1
  545. package/dist/chunk-TQTAMPSC.js.map +0 -1
  546. package/dist/chunk-UIZSWUKP.js.map +0 -1
  547. package/dist/chunk-V3VLOOSW.cjs +0 -36
  548. package/dist/chunk-V3VLOOSW.cjs.map +0 -1
  549. package/dist/chunk-VOQ3ULMT.js.map +0 -1
  550. package/dist/chunk-VOY2RXOC.cjs.map +0 -1
  551. package/dist/chunk-W7UH2PWL.js.map +0 -1
  552. package/dist/chunk-WM6CK2F3.cjs.map +0 -1
  553. package/dist/chunk-XEVG546F.js.map +0 -1
  554. package/dist/chunk-Y63IFHEZ.cjs.map +0 -1
  555. package/dist/chunk-ZV5CC35D.js +0 -3
  556. package/dist/chunk-ZV5CC35D.js.map +0 -1
  557. package/dist/models-dev-DNBKXHT4.js +0 -3
  558. package/dist/models-dev-YBEEQIX6.cjs +0 -12
  559. package/dist/netlify-7G2L5VSH.js +0 -3
  560. package/dist/netlify-GWNGSIRZ.cjs +0 -12
  561. package/dist/registry-generator-H4YNODDH.js.map +0 -1
  562. package/dist/registry-generator-MK63POJO.cjs.map +0 -1
@@ -1,10 +1,10 @@
1
- import { validateStepInput, createDeprecationProxy, getStepResult, runCountDeprecationMessage, Workflow, Run, ExecutionEngine } from './chunk-JUBFO5J3.js';
1
+ import { validateStepInput, createDeprecationProxy, getStepResult, validateStepSuspendData, runCountDeprecationMessage, createTimeTravelExecutionParams, validateStepResumeData, Workflow, Run, ExecutionEngine } from './chunk-6CYYFT4O.js';
2
2
  import { STREAM_FORMAT_SYMBOL, EMITTER_SYMBOL } from './chunk-NLNKQD2T.js';
3
3
  import { getErrorFromUnknown, MastraError } from './chunk-JJ5O45LH.js';
4
- import { Tool } from './chunk-7AHYOMHJ.js';
5
- import { RequestContext } from './chunk-GRBGQ2GE.js';
6
- import { MastraBase } from './chunk-S6URFGCZ.js';
7
- import { RegisteredLogger } from './chunk-KJ2SW6VA.js';
4
+ import { Tool } from './chunk-THZTRBFS.js';
5
+ import { RequestContext } from './chunk-6TBWJV35.js';
6
+ import { MastraBase } from './chunk-LSHPJWM5.js';
7
+ import { RegisteredLogger } from './chunk-NRUZYMHE.js';
8
8
  import EventEmitter from 'events';
9
9
  import { randomUUID } from 'crypto';
10
10
  import z from 'zod';
@@ -27,7 +27,7 @@ var StepExecutor = class extends MastraBase {
27
27
  const { inputData, validationError } = await validateStepInput({
28
28
  prevOutput: typeof params.foreachIdx === "number" ? params.input?.[params.foreachIdx] : params.input,
29
29
  step,
30
- validateInputs: params.validateInputs ?? false
30
+ validateInputs: params.validateInputs ?? true
31
31
  });
32
32
  let stepInfo = {
33
33
  ...stepResults[step.id],
@@ -39,6 +39,11 @@ var StepExecutor = class extends MastraBase {
39
39
  stepInfo.resumePayload = params.resumeData;
40
40
  stepInfo.resumedAt = Date.now();
41
41
  }
42
+ let suspendDataToUse = params.stepResults[step.id]?.status === "suspended" ? params.stepResults[step.id]?.suspendPayload : void 0;
43
+ if (suspendDataToUse && "__workflow_meta" in suspendDataToUse) {
44
+ const { __workflow_meta, ...userSuspendData } = suspendDataToUse;
45
+ suspendDataToUse = userSuspendData;
46
+ }
42
47
  try {
43
48
  if (validationError) {
44
49
  throw validationError;
@@ -52,15 +57,24 @@ var StepExecutor = class extends MastraBase {
52
57
  requestContext,
53
58
  inputData,
54
59
  state: params.state,
55
- setState: (state) => {
60
+ setState: async (state) => {
56
61
  params.state = state;
57
62
  },
58
63
  retryCount,
59
64
  resumeData: params.resumeData,
65
+ suspendData: suspendDataToUse,
60
66
  getInitData: () => stepResults?.input,
61
67
  getStepResult: getStepResult.bind(this, stepResults),
62
68
  suspend: async (suspendPayload) => {
63
- suspended = { payload: { ...suspendPayload, __workflow_meta: { runId, path: [step.id] } } };
69
+ const { suspendData, validationError: validationError2 } = await validateStepSuspendData({
70
+ suspendData: suspendPayload,
71
+ step,
72
+ validateInputs: params.validateInputs ?? true
73
+ });
74
+ if (validationError2) {
75
+ throw validationError2;
76
+ }
77
+ suspended = { payload: { ...suspendData, __workflow_meta: { runId, path: [step.id] } } };
64
78
  },
65
79
  bail: (result) => {
66
80
  bailed = { payload: result };
@@ -92,7 +106,8 @@ var StepExecutor = class extends MastraBase {
92
106
  finalResult = {
93
107
  ...stepInfo,
94
108
  status: "suspended",
95
- suspendedAt: endedAt
109
+ suspendedAt: endedAt,
110
+ ...stepResult ? { suspendOutput: stepResult } : {}
96
111
  };
97
112
  if (suspended.payload) {
98
113
  finalResult.suspendPayload = suspended.payload;
@@ -186,15 +201,10 @@ var StepExecutor = class extends MastraBase {
186
201
  requestContext,
187
202
  inputData,
188
203
  state,
189
- setState: (_state) => {
190
- },
191
204
  retryCount,
192
205
  resumeData,
193
206
  getInitData: () => stepResults?.input,
194
207
  getStepResult: getStepResult.bind(this, stepResults),
195
- suspend: async (_suspendPayload) => {
196
- throw new Error("Not implemented");
197
- },
198
208
  bail: (_result) => {
199
209
  throw new Error("Not implemented");
200
210
  },
@@ -242,7 +252,7 @@ var StepExecutor = class extends MastraBase {
242
252
  inputData: params.input,
243
253
  // TODO: implement state
244
254
  state: {},
245
- setState: (_state) => {
255
+ setState: async (_state) => {
246
256
  },
247
257
  retryCount,
248
258
  resumeData: params.resumeData,
@@ -301,7 +311,7 @@ var StepExecutor = class extends MastraBase {
301
311
  inputData: params.input,
302
312
  // TODO: implement state
303
313
  state: {},
304
- setState: (_state) => {
314
+ setState: async (_state) => {
305
315
  },
306
316
  retryCount,
307
317
  resumeData: params.resumeData,
@@ -472,6 +482,7 @@ async function processWorkflowForEach({
472
482
  stepResults,
473
483
  activeSteps,
474
484
  resumeSteps,
485
+ timeTravel,
475
486
  resumeData,
476
487
  parentWorkflow,
477
488
  requestContext
@@ -494,6 +505,7 @@ async function processWorkflowForEach({
494
505
  executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
495
506
  resumeSteps,
496
507
  stepResults,
508
+ timeTravel,
497
509
  prevResult: currentResult,
498
510
  resumeData,
499
511
  activeSteps,
@@ -530,6 +542,7 @@ async function processWorkflowForEach({
530
542
  executionPath: [executionPath[0], i],
531
543
  resumeSteps,
532
544
  stepResults,
545
+ timeTravel,
533
546
  prevResult,
534
547
  resumeData,
535
548
  activeSteps,
@@ -561,6 +574,7 @@ async function processWorkflowForEach({
561
574
  runId,
562
575
  executionPath: [executionPath[0], idx],
563
576
  resumeSteps,
577
+ timeTravel,
564
578
  stepResults,
565
579
  prevResult,
566
580
  resumeData,
@@ -576,6 +590,7 @@ async function processWorkflowParallel({
576
590
  stepResults,
577
591
  activeSteps,
578
592
  resumeSteps,
593
+ timeTravel,
579
594
  prevResult,
580
595
  resumeData,
581
596
  parentWorkflow,
@@ -603,6 +618,7 @@ async function processWorkflowParallel({
603
618
  stepResults,
604
619
  prevResult,
605
620
  resumeData,
621
+ timeTravel,
606
622
  parentWorkflow,
607
623
  activeSteps,
608
624
  requestContext
@@ -618,6 +634,7 @@ async function processWorkflowConditional({
618
634
  stepResults,
619
635
  activeSteps,
620
636
  resumeSteps,
637
+ timeTravel,
621
638
  prevResult,
622
639
  resumeData,
623
640
  parentWorkflow,
@@ -660,6 +677,7 @@ async function processWorkflowConditional({
660
677
  executionPath: executionPath.concat([idx]),
661
678
  resumeSteps,
662
679
  stepResults,
680
+ timeTravel,
663
681
  prevResult,
664
682
  resumeData,
665
683
  parentWorkflow,
@@ -726,6 +744,7 @@ async function processWorkflowSleep({
726
744
  stepResults,
727
745
  activeSteps,
728
746
  resumeSteps,
747
+ timeTravel,
729
748
  prevResult,
730
749
  resumeData,
731
750
  parentWorkflow,
@@ -797,6 +816,7 @@ async function processWorkflowSleep({
797
816
  runId,
798
817
  executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
799
818
  resumeSteps,
819
+ timeTravel,
800
820
  stepResults,
801
821
  prevResult,
802
822
  resumeData,
@@ -816,6 +836,7 @@ async function processWorkflowSleepUntil({
816
836
  stepResults,
817
837
  activeSteps,
818
838
  resumeSteps,
839
+ timeTravel,
819
840
  prevResult,
820
841
  resumeData,
821
842
  parentWorkflow,
@@ -887,6 +908,7 @@ async function processWorkflowSleepUntil({
887
908
  runId,
888
909
  executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
889
910
  resumeSteps,
911
+ timeTravel,
890
912
  stepResults,
891
913
  prevResult,
892
914
  resumeData,
@@ -967,6 +989,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
967
989
  resumeSteps,
968
990
  prevResult,
969
991
  resumeData,
992
+ timeTravel,
970
993
  executionPath,
971
994
  stepResults,
972
995
  requestContext
@@ -979,13 +1002,14 @@ var WorkflowEventProcessor = class extends EventProcessor {
979
1002
  suspendedPaths: {},
980
1003
  resumeLabels: {},
981
1004
  waitingPaths: {},
1005
+ activeStepsPath: {},
982
1006
  serializedStepGraph: workflow.serializedStepGraph,
983
1007
  timestamp: Date.now(),
984
1008
  runId,
985
- status: "running",
986
1009
  context: stepResults ?? {
987
1010
  input: prevResult?.status === "success" ? prevResult.output : void 0
988
1011
  },
1012
+ status: "running",
989
1013
  value: {}
990
1014
  }
991
1015
  });
@@ -1002,6 +1026,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1002
1026
  input: prevResult?.status === "success" ? prevResult.output : void 0
1003
1027
  },
1004
1028
  prevResult,
1029
+ timeTravel,
1005
1030
  requestContext,
1006
1031
  resumeData,
1007
1032
  activeSteps: {}
@@ -1035,7 +1060,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1035
1060
  });
1036
1061
  }
1037
1062
  async processWorkflowEnd(args) {
1038
- const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, requestContext, runId } = args;
1063
+ const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, requestContext, runId, timeTravel } = args;
1039
1064
  if (parentWorkflow) {
1040
1065
  await this.mastra.pubsub.publish("workflows", {
1041
1066
  type: "workflow.step.end",
@@ -1051,7 +1076,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1051
1076
  activeSteps,
1052
1077
  parentWorkflow: parentWorkflow.parentWorkflow,
1053
1078
  parentContext: parentWorkflow,
1054
- requestContext
1079
+ requestContext,
1080
+ timeTravel
1055
1081
  }
1056
1082
  });
1057
1083
  }
@@ -1062,7 +1088,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1062
1088
  });
1063
1089
  }
1064
1090
  async processWorkflowSuspend(args) {
1065
- const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, requestContext } = args;
1091
+ const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, requestContext, timeTravel } = args;
1066
1092
  if (parentWorkflow) {
1067
1093
  await this.mastra.pubsub.publish("workflows", {
1068
1094
  type: "workflow.step.end",
@@ -1083,6 +1109,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1083
1109
  }
1084
1110
  }
1085
1111
  },
1112
+ timeTravel,
1086
1113
  resumeData,
1087
1114
  activeSteps,
1088
1115
  requestContext,
@@ -1098,7 +1125,17 @@ var WorkflowEventProcessor = class extends EventProcessor {
1098
1125
  });
1099
1126
  }
1100
1127
  async processWorkflowFail(args) {
1101
- const { workflowId, runId, resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, requestContext } = args;
1128
+ const {
1129
+ workflowId,
1130
+ runId,
1131
+ resumeSteps,
1132
+ prevResult,
1133
+ resumeData,
1134
+ parentWorkflow,
1135
+ activeSteps,
1136
+ requestContext,
1137
+ timeTravel
1138
+ } = args;
1102
1139
  await this.mastra.getStorage()?.updateWorkflowState({
1103
1140
  workflowName: workflowId,
1104
1141
  runId,
@@ -1118,6 +1155,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1118
1155
  resumeSteps,
1119
1156
  stepResults: parentWorkflow.stepResults,
1120
1157
  prevResult,
1158
+ timeTravel,
1121
1159
  resumeData,
1122
1160
  activeSteps,
1123
1161
  requestContext,
@@ -1140,6 +1178,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1140
1178
  stepResults,
1141
1179
  activeSteps,
1142
1180
  resumeSteps,
1181
+ timeTravel,
1143
1182
  prevResult,
1144
1183
  resumeData,
1145
1184
  parentWorkflow,
@@ -1203,6 +1242,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1203
1242
  stepResults,
1204
1243
  activeSteps,
1205
1244
  resumeSteps,
1245
+ timeTravel,
1206
1246
  prevResult,
1207
1247
  resumeData,
1208
1248
  parentWorkflow,
@@ -1222,6 +1262,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1222
1262
  stepResults,
1223
1263
  activeSteps,
1224
1264
  resumeSteps,
1265
+ timeTravel,
1225
1266
  prevResult,
1226
1267
  resumeData,
1227
1268
  parentWorkflow,
@@ -1242,6 +1283,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1242
1283
  stepResults,
1243
1284
  activeSteps,
1244
1285
  resumeSteps,
1286
+ timeTravel,
1245
1287
  prevResult,
1246
1288
  resumeData,
1247
1289
  parentWorkflow,
@@ -1262,6 +1304,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1262
1304
  stepResults,
1263
1305
  activeSteps,
1264
1306
  resumeSteps,
1307
+ timeTravel,
1265
1308
  prevResult,
1266
1309
  resumeData,
1267
1310
  parentWorkflow,
@@ -1282,6 +1325,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1282
1325
  stepResults,
1283
1326
  activeSteps,
1284
1327
  resumeSteps,
1328
+ timeTravel,
1285
1329
  prevResult,
1286
1330
  resumeData,
1287
1331
  parentWorkflow,
@@ -1374,6 +1418,47 @@ var WorkflowEventProcessor = class extends EventProcessor {
1374
1418
  requestContext
1375
1419
  }
1376
1420
  });
1421
+ } else if (timeTravel && timeTravel.steps?.length > 1 && timeTravel.steps[0] === step.step.id) {
1422
+ const snapshot = await this.mastra?.getStorage()?.loadWorkflowSnapshot({
1423
+ workflowName: step.step.id,
1424
+ runId
1425
+ }) ?? { context: {} };
1426
+ const timeTravelParams = createTimeTravelExecutionParams({
1427
+ steps: timeTravel.steps.slice(1),
1428
+ inputData: timeTravel.inputData,
1429
+ resumeData: timeTravel.resumeData,
1430
+ context: timeTravel.nestedStepResults?.[step.step.id] ?? {},
1431
+ nestedStepsContext: timeTravel.nestedStepResults ?? {},
1432
+ snapshot,
1433
+ graph: step.step.buildExecutionGraph()
1434
+ });
1435
+ const nestedPrevStep = getStep(step.step, timeTravelParams.executionPath);
1436
+ const nestedPrevResult = timeTravelParams.stepResults[nestedPrevStep?.id ?? "input"];
1437
+ await this.mastra.pubsub.publish("workflows", {
1438
+ type: "workflow.start",
1439
+ runId,
1440
+ data: {
1441
+ workflowId: step.step.id,
1442
+ parentWorkflow: {
1443
+ stepId: step.step.id,
1444
+ workflowId,
1445
+ runId,
1446
+ executionPath,
1447
+ resumeSteps,
1448
+ stepResults,
1449
+ timeTravel,
1450
+ input: prevResult,
1451
+ parentWorkflow
1452
+ },
1453
+ executionPath: timeTravelParams.executionPath,
1454
+ runId: randomUUID(),
1455
+ stepResults: timeTravelParams.stepResults,
1456
+ prevResult: { status: "success", output: nestedPrevResult?.payload },
1457
+ timeTravel: timeTravelParams,
1458
+ activeSteps,
1459
+ requestContext
1460
+ }
1461
+ });
1377
1462
  } else {
1378
1463
  await this.mastra.pubsub.publish("workflows", {
1379
1464
  type: "workflow.start",
@@ -1429,6 +1514,21 @@ var WorkflowEventProcessor = class extends EventProcessor {
1429
1514
  for (const [key, value] of Object.entries(requestContext)) {
1430
1515
  rc.set(key, value);
1431
1516
  }
1517
+ const { resumeData: timeTravelResumeData, validationError: timeTravelResumeValidationError } = await validateStepResumeData({
1518
+ resumeData: timeTravel?.stepResults[step.step.id]?.status === "suspended" ? timeTravel?.resumeData : void 0,
1519
+ step: step.step
1520
+ });
1521
+ let resumeDataToUse;
1522
+ if (timeTravelResumeData && !timeTravelResumeValidationError) {
1523
+ resumeDataToUse = timeTravelResumeData;
1524
+ } else if (timeTravelResumeData && timeTravelResumeValidationError) {
1525
+ this.mastra.getLogger()?.warn("Time travel resume data validation failed", {
1526
+ stepId: step.step.id,
1527
+ error: timeTravelResumeValidationError.message
1528
+ });
1529
+ } else if (resumeSteps?.length > 0 && resumeSteps?.[0] === step.step.id) {
1530
+ resumeDataToUse = resumeData;
1531
+ }
1432
1532
  const stepResult = await this.stepExecutor.execute({
1433
1533
  workflowId,
1434
1534
  step: step.step,
@@ -1439,7 +1539,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1439
1539
  emitter: ee,
1440
1540
  requestContext: rc,
1441
1541
  input: prevResult?.output,
1442
- resumeData: resumeSteps?.length === 1 && resumeSteps?.[0] === step.step.id ? resumeData : void 0,
1542
+ resumeData: resumeDataToUse,
1443
1543
  retryCount,
1444
1544
  foreachIdx: step.type === "foreach" ? executionPath[1] : void 0,
1445
1545
  validateInputs: workflow.options.validateInputs
@@ -1493,6 +1593,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1493
1593
  executionPath,
1494
1594
  resumeSteps,
1495
1595
  stepResults,
1596
+ timeTravel,
1496
1597
  prevResult,
1497
1598
  activeSteps,
1498
1599
  requestContext,
@@ -1533,6 +1634,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1533
1634
  runId,
1534
1635
  executionPath,
1535
1636
  resumeSteps,
1637
+ timeTravel,
1638
+ //timeTravel is passed in as workflow.step.end ends the step, not the workflow, the timeTravel info is passed to the next step to run.
1536
1639
  stepResults,
1537
1640
  prevResult: stepResult,
1538
1641
  activeSteps,
@@ -1547,6 +1650,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1547
1650
  runId,
1548
1651
  executionPath,
1549
1652
  resumeSteps,
1653
+ timeTravel,
1550
1654
  prevResult,
1551
1655
  parentWorkflow,
1552
1656
  stepResults,
@@ -1636,6 +1740,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
1636
1740
  resumeSteps,
1637
1741
  parentWorkflow,
1638
1742
  stepResults,
1743
+ timeTravel,
1639
1744
  prevResult,
1640
1745
  activeSteps,
1641
1746
  requestContext
@@ -1669,7 +1774,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1669
1774
  stepResults,
1670
1775
  prevResult,
1671
1776
  activeSteps,
1672
- requestContext
1777
+ requestContext,
1778
+ timeTravel
1673
1779
  }
1674
1780
  });
1675
1781
  await this.mastra.pubsub.publish(`workflow.events.v2.${runId}`, {
@@ -1746,7 +1852,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1746
1852
  stepResults,
1747
1853
  prevResult: { status: "success", output: allResults },
1748
1854
  activeSteps,
1749
- requestContext
1855
+ requestContext,
1856
+ timeTravel
1750
1857
  }
1751
1858
  });
1752
1859
  } else if (step?.type === "foreach") {
@@ -1762,7 +1869,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1762
1869
  stepResults,
1763
1870
  prevResult: { ...prevResult, output: prevResult?.payload },
1764
1871
  activeSteps,
1765
- requestContext
1872
+ requestContext,
1873
+ timeTravel
1766
1874
  }
1767
1875
  });
1768
1876
  } else if (executionPath[0] >= workflow.stepGraph.length - 1) {
@@ -1791,7 +1899,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
1791
1899
  stepResults,
1792
1900
  prevResult,
1793
1901
  activeSteps,
1794
- requestContext
1902
+ requestContext,
1903
+ timeTravel
1795
1904
  }
1796
1905
  });
1797
1906
  }
@@ -1927,7 +2036,8 @@ function cloneWorkflow(workflow, opts) {
1927
2036
  inputSchema: workflow.inputSchema,
1928
2037
  outputSchema: workflow.outputSchema,
1929
2038
  steps: workflow.stepDefs,
1930
- mastra: workflow.mastra
2039
+ mastra: workflow.mastra,
2040
+ options: workflow.options
1931
2041
  });
1932
2042
  wf.setStepFlow(workflow.stepGraph);
1933
2043
  wf.commit();
@@ -1939,7 +2049,12 @@ function cloneStep(step, opts) {
1939
2049
  description: step.description,
1940
2050
  inputSchema: step.inputSchema,
1941
2051
  outputSchema: step.outputSchema,
2052
+ suspendSchema: step.suspendSchema,
2053
+ resumeSchema: step.resumeSchema,
2054
+ stateSchema: step.stateSchema,
1942
2055
  execute: step.execute,
2056
+ retries: step.retries,
2057
+ scorers: step.scorers,
1943
2058
  component: step.component
1944
2059
  };
1945
2060
  }
@@ -1952,7 +2067,7 @@ function isTool(params) {
1952
2067
  function createStep(params) {
1953
2068
  if (isAgent(params)) {
1954
2069
  return {
1955
- id: params.name,
2070
+ id: params.id,
1956
2071
  description: params.getDescription(),
1957
2072
  // @ts-ignore
1958
2073
  inputSchema: z.object({
@@ -2070,7 +2185,7 @@ function createWorkflow(params) {
2070
2185
  mastra: params.mastra,
2071
2186
  eventProcessor,
2072
2187
  options: {
2073
- validateInputs: params.options?.validateInputs ?? false,
2188
+ validateInputs: params.options?.validateInputs ?? true,
2074
2189
  shouldPersistSnapshot: params.options?.shouldPersistSnapshot ?? (() => true),
2075
2190
  tracingPolicy: params.options?.tracingPolicy
2076
2191
  }
@@ -2083,6 +2198,7 @@ function createWorkflow(params) {
2083
2198
  var EventedWorkflow = class extends Workflow {
2084
2199
  constructor(params) {
2085
2200
  super(params);
2201
+ this.engineType = "evented";
2086
2202
  }
2087
2203
  __registerMastra(mastra) {
2088
2204
  super.__registerMastra(mastra);
@@ -2099,7 +2215,9 @@ var EventedWorkflow = class extends Workflow {
2099
2215
  mastra: this.mastra,
2100
2216
  retryConfig: this.retryConfig,
2101
2217
  cleanup: () => this.runs.delete(runIdToUse),
2102
- workflowSteps: this.steps
2218
+ workflowSteps: this.steps,
2219
+ validateInputs: this.options?.validateInputs,
2220
+ workflowEngineType: this.engineType
2103
2221
  });
2104
2222
  this.runs.set(runIdToUse, run);
2105
2223
  const shouldPersistSnapshot = this.options?.shouldPersistSnapshot?.({
@@ -2118,6 +2236,7 @@ var EventedWorkflow = class extends Workflow {
2118
2236
  context: {},
2119
2237
  activePaths: [],
2120
2238
  serializedStepGraph: this.serializedStepGraph,
2239
+ activeStepsPath: {},
2121
2240
  suspendedPaths: {},
2122
2241
  resumeLabels: {},
2123
2242
  waitingPaths: {},
@@ -2156,15 +2275,16 @@ var EventedRun = class extends Run {
2156
2275
  snapshot: {
2157
2276
  runId: this.runId,
2158
2277
  serializedStepGraph: this.serializedStepGraph,
2278
+ status: "running",
2159
2279
  value: {},
2160
2280
  context: {},
2161
2281
  requestContext: Object.fromEntries(requestContext.entries()),
2162
2282
  activePaths: [],
2283
+ activeStepsPath: {},
2163
2284
  suspendedPaths: {},
2164
2285
  resumeLabels: {},
2165
2286
  waitingPaths: {},
2166
- timestamp: Date.now(),
2167
- status: "running"
2287
+ timestamp: Date.now()
2168
2288
  }
2169
2289
  });
2170
2290
  const inputDataToUse = await this._validateInput(inputData);
@@ -2194,7 +2314,6 @@ var EventedRun = class extends Run {
2194
2314
  requestContext,
2195
2315
  abortController: this.abortController
2196
2316
  });
2197
- console.dir({ startResult: result }, { depth: null });
2198
2317
  if (result.status !== "suspended") {
2199
2318
  this.cleanup?.();
2200
2319
  }
@@ -2202,9 +2321,14 @@ var EventedRun = class extends Run {
2202
2321
  }
2203
2322
  // TODO: stream
2204
2323
  async resume(params) {
2205
- const steps = (Array.isArray(params.step) ? params.step : [params.step]).map(
2206
- (step) => typeof step === "string" ? step : step?.id
2207
- );
2324
+ let steps = [];
2325
+ if (typeof params.step === "string") {
2326
+ steps = params.step.split(".");
2327
+ } else {
2328
+ steps = (Array.isArray(params.step) ? params.step : [params.step]).map(
2329
+ (step) => typeof step === "string" ? step : step?.id
2330
+ );
2331
+ }
2208
2332
  if (steps.length === 0) {
2209
2333
  throw new Error("No steps provided to resume");
2210
2334
  }
@@ -2402,6 +2526,23 @@ var EventedExecutionEngine = class extends ExecutionEngine {
2402
2526
  format: params.format
2403
2527
  }
2404
2528
  });
2529
+ } else if (params.timeTravel) {
2530
+ const prevStep = getStep(this.mastra.getWorkflow(params.workflowId), params.timeTravel.executionPath);
2531
+ const prevResult = params.timeTravel.stepResults[prevStep?.id ?? "input"];
2532
+ await pubsub.publish("workflows", {
2533
+ type: "workflow.start",
2534
+ runId: params.runId,
2535
+ data: {
2536
+ workflowId: params.workflowId,
2537
+ runId: params.runId,
2538
+ executionPath: params.timeTravel.executionPath,
2539
+ stepResults: params.timeTravel.stepResults,
2540
+ timeTravel: params.timeTravel,
2541
+ prevResult: { status: "success", output: prevResult?.payload },
2542
+ requestContext: Object.fromEntries(params.requestContext.entries()),
2543
+ format: params.format
2544
+ }
2545
+ });
2405
2546
  } else {
2406
2547
  await pubsub.publish("workflows", {
2407
2548
  type: "workflow.start",
@@ -2460,5 +2601,5 @@ var EventedExecutionEngine = class extends ExecutionEngine {
2460
2601
  };
2461
2602
 
2462
2603
  export { EventedExecutionEngine, EventedRun, EventedWorkflow, StepExecutor, WorkflowEventProcessor, cloneStep, cloneWorkflow, createStep, createWorkflow };
2463
- //# sourceMappingURL=chunk-H6CZGPZD.js.map
2464
- //# sourceMappingURL=chunk-H6CZGPZD.js.map
2604
+ //# sourceMappingURL=chunk-XRJQ5ZA7.js.map
2605
+ //# sourceMappingURL=chunk-XRJQ5ZA7.js.map