@mastra/server 0.0.0-remove-unused-model-providers-api-20251030210744 → 0.0.0-remove-ai-peer-dep-from-evals-20260105220639

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 (409) hide show
  1. package/CHANGELOG.md +1736 -3
  2. package/README.md +2 -2
  3. package/dist/chunk-3MN73W4B.cjs +326 -0
  4. package/dist/chunk-3MN73W4B.cjs.map +1 -0
  5. package/dist/chunk-3OUPQHSX.js +314 -0
  6. package/dist/chunk-3OUPQHSX.js.map +1 -0
  7. package/dist/{chunk-SHWNNZBL.js → chunk-3REGEJEN.js} +13 -17
  8. package/dist/chunk-3REGEJEN.js.map +1 -0
  9. package/dist/chunk-3W67K7YE.js +13 -0
  10. package/dist/chunk-3W67K7YE.js.map +1 -0
  11. package/dist/chunk-4EYONQIW.cjs +82 -0
  12. package/dist/chunk-4EYONQIW.cjs.map +1 -0
  13. package/dist/chunk-5NFRDYFN.js +77 -0
  14. package/dist/chunk-5NFRDYFN.js.map +1 -0
  15. package/dist/chunk-5NXQ6QXL.js +116 -0
  16. package/dist/chunk-5NXQ6QXL.js.map +1 -0
  17. package/dist/chunk-5W4RPVTK.cjs +49 -0
  18. package/dist/chunk-5W4RPVTK.cjs.map +1 -0
  19. package/dist/{chunk-7NADHFD2.cjs → chunk-64ITUOXI.cjs} +2 -2
  20. package/dist/chunk-64ITUOXI.cjs.map +1 -0
  21. package/dist/chunk-6HKMJXTF.js +234 -0
  22. package/dist/chunk-6HKMJXTF.js.map +1 -0
  23. package/dist/{chunk-MMROOK5J.js → chunk-6QWQZI4Q.js} +2 -2
  24. package/dist/{chunk-7NADHFD2.cjs.map → chunk-6QWQZI4Q.js.map} +1 -1
  25. package/dist/chunk-74XNXZJH.cjs +1134 -0
  26. package/dist/chunk-74XNXZJH.cjs.map +1 -0
  27. package/dist/{chunk-2PLXW4ZX.cjs → chunk-AQI6GLTN.cjs} +74 -74
  28. package/dist/{chunk-2PLXW4ZX.cjs.map → chunk-AQI6GLTN.cjs.map} +1 -1
  29. package/dist/chunk-AVOFMAUS.cjs +125 -0
  30. package/dist/chunk-AVOFMAUS.cjs.map +1 -0
  31. package/dist/chunk-B35F4QEM.cjs +346 -0
  32. package/dist/chunk-B35F4QEM.cjs.map +1 -0
  33. package/dist/chunk-BVIEHV3I.cjs +928 -0
  34. package/dist/chunk-BVIEHV3I.cjs.map +1 -0
  35. package/dist/chunk-C2YNGMT6.cjs +33050 -0
  36. package/dist/chunk-C2YNGMT6.cjs.map +1 -0
  37. package/dist/chunk-DQ4XT56M.js +1092 -0
  38. package/dist/chunk-DQ4XT56M.js.map +1 -0
  39. package/dist/chunk-DUZRZLVR.js +302 -0
  40. package/dist/chunk-DUZRZLVR.js.map +1 -0
  41. package/dist/chunk-DVSCJECS.js +250 -0
  42. package/dist/chunk-DVSCJECS.js.map +1 -0
  43. package/dist/chunk-EUBTCHQC.js +83 -0
  44. package/dist/chunk-EUBTCHQC.js.map +1 -0
  45. package/dist/chunk-FEEM6QFN.js +219 -0
  46. package/dist/chunk-FEEM6QFN.js.map +1 -0
  47. package/dist/chunk-FWSKVWS7.cjs +88 -0
  48. package/dist/chunk-FWSKVWS7.cjs.map +1 -0
  49. package/dist/chunk-G2AMUTU4.js +250 -0
  50. package/dist/chunk-G2AMUTU4.js.map +1 -0
  51. package/dist/chunk-G3KUL3RL.cjs +211 -0
  52. package/dist/chunk-G3KUL3RL.cjs.map +1 -0
  53. package/dist/{chunk-LZKJT7QP.cjs → chunk-GU4EWMZB.cjs} +34 -64
  54. package/dist/chunk-GU4EWMZB.cjs.map +1 -0
  55. package/dist/{chunk-SED4H2GJ.cjs → chunk-GVRF7QXU.cjs} +230 -26
  56. package/dist/chunk-GVRF7QXU.cjs.map +1 -0
  57. package/dist/{chunk-YNGDJJOH.cjs → chunk-GWLR6K3H.cjs} +34 -16
  58. package/dist/chunk-GWLR6K3H.cjs.map +1 -0
  59. package/dist/{chunk-RQK4FQUD.js → chunk-H66LLFDL.js} +4 -46
  60. package/dist/chunk-H66LLFDL.js.map +1 -0
  61. package/dist/chunk-HT4LP3BO.js +75 -0
  62. package/dist/chunk-HT4LP3BO.js.map +1 -0
  63. package/dist/chunk-IQEVRCM6.cjs +205 -0
  64. package/dist/chunk-IQEVRCM6.cjs.map +1 -0
  65. package/dist/chunk-JQPDZZLI.js +1018 -0
  66. package/dist/chunk-JQPDZZLI.js.map +1 -0
  67. package/dist/chunk-JXPRNYUC.js +279 -0
  68. package/dist/chunk-JXPRNYUC.js.map +1 -0
  69. package/dist/chunk-K3LMK4KU.js +180 -0
  70. package/dist/chunk-K3LMK4KU.js.map +1 -0
  71. package/dist/chunk-KEW7MXUS.cjs +312 -0
  72. package/dist/chunk-KEW7MXUS.cjs.map +1 -0
  73. package/dist/chunk-KXYDJIKD.cjs +1048 -0
  74. package/dist/chunk-KXYDJIKD.cjs.map +1 -0
  75. package/dist/{chunk-QU6N55W6.cjs → chunk-L2E5RUVT.cjs} +17 -21
  76. package/dist/chunk-L2E5RUVT.cjs.map +1 -0
  77. package/dist/chunk-L7ZFPOGS.js +44 -0
  78. package/dist/chunk-L7ZFPOGS.js.map +1 -0
  79. package/dist/{chunk-GQRJOUV7.js → chunk-LF2ZLOFP.js} +34 -64
  80. package/dist/chunk-LF2ZLOFP.js.map +1 -0
  81. package/dist/chunk-LJ6YRVDI.cjs +15 -0
  82. package/dist/chunk-LJ6YRVDI.cjs.map +1 -0
  83. package/dist/{chunk-ZULZ2752.js → chunk-LOA7RQYO.js} +3 -3
  84. package/dist/{chunk-ZULZ2752.js.map → chunk-LOA7RQYO.js.map} +1 -1
  85. package/dist/chunk-MCYD5LW7.cjs +90 -0
  86. package/dist/chunk-MCYD5LW7.cjs.map +1 -0
  87. package/dist/chunk-ONN5EA7E.js +26 -0
  88. package/dist/chunk-ONN5EA7E.js.map +1 -0
  89. package/dist/chunk-P3H4AZKI.cjs +252 -0
  90. package/dist/chunk-P3H4AZKI.cjs.map +1 -0
  91. package/dist/chunk-PNZQCQY4.cjs +252 -0
  92. package/dist/chunk-PNZQCQY4.cjs.map +1 -0
  93. package/dist/chunk-PWYPS6R6.js +33010 -0
  94. package/dist/chunk-PWYPS6R6.js.map +1 -0
  95. package/dist/{chunk-6562SOHJ.js → chunk-QKXZF7YS.js} +25 -7
  96. package/dist/chunk-QKXZF7YS.js.map +1 -0
  97. package/dist/{chunk-OEW3R7V4.js → chunk-QOCVCD7C.js} +224 -26
  98. package/dist/chunk-QOCVCD7C.js.map +1 -0
  99. package/dist/chunk-R25YJP3Y.cjs +269 -0
  100. package/dist/chunk-R25YJP3Y.cjs.map +1 -0
  101. package/dist/chunk-SEP5QUTR.js +196 -0
  102. package/dist/chunk-SEP5QUTR.js.map +1 -0
  103. package/dist/chunk-SUKFO7UM.cjs +29 -0
  104. package/dist/chunk-SUKFO7UM.cjs.map +1 -0
  105. package/dist/chunk-T2AYFHKB.js +903 -0
  106. package/dist/chunk-T2AYFHKB.js.map +1 -0
  107. package/dist/chunk-T4SPG2GP.cjs +82 -0
  108. package/dist/chunk-T4SPG2GP.cjs.map +1 -0
  109. package/dist/chunk-TOGG5Q45.js +328 -0
  110. package/dist/chunk-TOGG5Q45.js.map +1 -0
  111. package/dist/chunk-UKRDDBXY.cjs +225 -0
  112. package/dist/chunk-UKRDDBXY.cjs.map +1 -0
  113. package/dist/chunk-V3RILBZM.cjs +186 -0
  114. package/dist/chunk-V3RILBZM.cjs.map +1 -0
  115. package/dist/chunk-VJNZJAIO.cjs +289 -0
  116. package/dist/chunk-VJNZJAIO.cjs.map +1 -0
  117. package/dist/{chunk-LPM6BBAX.cjs → chunk-VX3VN7FN.cjs} +3 -54
  118. package/dist/chunk-VX3VN7FN.cjs.map +1 -0
  119. package/dist/chunk-X5KAQFOV.js +204 -0
  120. package/dist/chunk-X5KAQFOV.js.map +1 -0
  121. package/dist/chunk-XAVPSRSG.cjs +46 -0
  122. package/dist/chunk-XAVPSRSG.cjs.map +1 -0
  123. package/dist/chunk-XOUK3IYU.js +77 -0
  124. package/dist/chunk-XOUK3IYU.js.map +1 -0
  125. package/dist/chunk-XWGAT2DA.js +44 -0
  126. package/dist/chunk-XWGAT2DA.js.map +1 -0
  127. package/dist/{dist-G2BYZJOC.cjs → dist-7NTDEVLP.cjs} +28 -28
  128. package/dist/{dist-G2BYZJOC.cjs.map → dist-7NTDEVLP.cjs.map} +1 -1
  129. package/dist/{dist-X7XR3M3Z.js → dist-B5GMANA6.js} +3 -3
  130. package/dist/{dist-X7XR3M3Z.js.map → dist-B5GMANA6.js.map} +1 -1
  131. package/dist/dist-EDO7GEGI.js +3 -0
  132. package/dist/{dist-YREX2TJT.js.map → dist-EDO7GEGI.js.map} +1 -1
  133. package/dist/{dist-RFMYFILX.cjs → dist-OF24ZMHH.cjs} +30 -30
  134. package/dist/{dist-RFMYFILX.cjs.map → dist-OF24ZMHH.cjs.map} +1 -1
  135. package/dist/{dist-4MVGNSRL.cjs → dist-P6YSNLL3.cjs} +20 -20
  136. package/dist/{dist-4MVGNSRL.cjs.map → dist-P6YSNLL3.cjs.map} +1 -1
  137. package/dist/{dist-PQZUVLPC.js → dist-SMBO5KVB.js} +3 -3
  138. package/dist/{dist-PQZUVLPC.js.map → dist-SMBO5KVB.js.map} +1 -1
  139. package/dist/{dist-XVBSOGFK.js → dist-THPMW5QR.js} +3 -3
  140. package/dist/{dist-XVBSOGFK.js.map → dist-THPMW5QR.js.map} +1 -1
  141. package/dist/{dist-FZYCV3VB.cjs → dist-VZTG56X2.cjs} +26 -26
  142. package/dist/{dist-FZYCV3VB.cjs.map → dist-VZTG56X2.cjs.map} +1 -1
  143. package/dist/dist-ZLC23RVC.cjs +16 -0
  144. package/dist/{dist-P4MXBQ3U.cjs.map → dist-ZLC23RVC.cjs.map} +1 -1
  145. package/dist/{dist-R7WYX6LC.js → dist-ZOZ6MHJH.js} +3 -3
  146. package/dist/{dist-R7WYX6LC.js.map → dist-ZOZ6MHJH.js.map} +1 -1
  147. package/dist/docs/README.md +31 -0
  148. package/dist/docs/SKILL.md +32 -0
  149. package/dist/docs/SOURCE_MAP.json +6 -0
  150. package/dist/docs/server/01-custom-adapters.md +377 -0
  151. package/dist/docs/server/02-reference.md +828 -0
  152. package/dist/server/auth/defaults.d.ts +3 -0
  153. package/dist/server/auth/defaults.d.ts.map +1 -0
  154. package/dist/server/auth/helpers.d.ts +14 -0
  155. package/dist/server/auth/helpers.d.ts.map +1 -0
  156. package/dist/server/auth/index.cjs +137 -0
  157. package/dist/server/auth/index.cjs.map +1 -0
  158. package/dist/server/auth/index.d.ts +3 -0
  159. package/dist/server/auth/index.d.ts.map +1 -0
  160. package/dist/server/auth/index.js +127 -0
  161. package/dist/server/auth/index.js.map +1 -0
  162. package/dist/server/handlers/a2a.cjs +15 -7
  163. package/dist/server/handlers/a2a.d.ts +482 -0
  164. package/dist/server/handlers/a2a.d.ts.map +1 -1
  165. package/dist/server/handlers/a2a.js +1 -1
  166. package/dist/server/handlers/agent-builder.cjs +33 -49
  167. package/dist/server/handlers/agent-builder.d.ts +612 -99
  168. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  169. package/dist/server/handlers/agent-builder.js +1 -1
  170. package/dist/server/handlers/agents.cjs +57 -37
  171. package/dist/server/handlers/agents.d.ts +3301 -137
  172. package/dist/server/handlers/agents.d.ts.map +1 -1
  173. package/dist/server/handlers/agents.js +1 -1
  174. package/dist/server/handlers/error.cjs +6 -2
  175. package/dist/server/handlers/error.d.ts +12 -0
  176. package/dist/server/handlers/error.d.ts.map +1 -1
  177. package/dist/server/handlers/error.js +1 -1
  178. package/dist/server/handlers/logs.cjs +7 -7
  179. package/dist/server/handlers/logs.d.ts +135 -27
  180. package/dist/server/handlers/logs.d.ts.map +1 -1
  181. package/dist/server/handlers/logs.js +1 -1
  182. package/dist/server/handlers/mcp.cjs +40 -0
  183. package/dist/server/handlers/mcp.cjs.map +1 -0
  184. package/dist/server/handlers/mcp.d.ts +110 -0
  185. package/dist/server/handlers/mcp.d.ts.map +1 -0
  186. package/dist/server/handlers/mcp.js +3 -0
  187. package/dist/server/handlers/mcp.js.map +1 -0
  188. package/dist/server/handlers/memory.cjs +69 -29
  189. package/dist/server/handlers/memory.d.ts +1018 -100
  190. package/dist/server/handlers/memory.d.ts.map +1 -1
  191. package/dist/server/handlers/memory.js +1 -1
  192. package/dist/server/handlers/observability.cjs +9 -9
  193. package/dist/server/handlers/observability.d.ts +146 -42
  194. package/dist/server/handlers/observability.d.ts.map +1 -1
  195. package/dist/server/handlers/observability.js +1 -1
  196. package/dist/server/handlers/scores.cjs +13 -13
  197. package/dist/server/handlers/scores.d.ts +110 -141
  198. package/dist/server/handlers/scores.d.ts.map +1 -1
  199. package/dist/server/handlers/scores.js +1 -1
  200. package/dist/server/handlers/stored-agents.cjs +28 -0
  201. package/dist/server/handlers/stored-agents.cjs.map +1 -0
  202. package/dist/server/handlers/stored-agents.d.ts +289 -0
  203. package/dist/server/handlers/stored-agents.d.ts.map +1 -0
  204. package/dist/server/handlers/stored-agents.js +3 -0
  205. package/dist/server/handlers/stored-agents.js.map +1 -0
  206. package/dist/server/handlers/system.cjs +12 -0
  207. package/dist/server/handlers/system.cjs.map +1 -0
  208. package/dist/server/handlers/system.d.ts +7 -0
  209. package/dist/server/handlers/system.d.ts.map +1 -0
  210. package/dist/server/handlers/system.js +3 -0
  211. package/dist/server/handlers/system.js.map +1 -0
  212. package/dist/server/handlers/test-utils.cjs +15 -0
  213. package/dist/server/handlers/test-utils.cjs.map +1 -0
  214. package/dist/server/handlers/test-utils.d.ts +6 -0
  215. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  216. package/dist/server/handlers/test-utils.js +13 -0
  217. package/dist/server/handlers/test-utils.js.map +1 -0
  218. package/dist/server/handlers/tools.cjs +11 -11
  219. package/dist/server/handlers/tools.d.ts +69 -23
  220. package/dist/server/handlers/tools.d.ts.map +1 -1
  221. package/dist/server/handlers/tools.js +1 -1
  222. package/dist/server/handlers/utils.cjs +11 -3
  223. package/dist/server/handlers/utils.d.ts +5 -0
  224. package/dist/server/handlers/utils.d.ts.map +1 -1
  225. package/dist/server/handlers/utils.js +1 -1
  226. package/dist/server/handlers/vector.cjs +31 -7
  227. package/dist/server/handlers/vector.d.ts +93 -9
  228. package/dist/server/handlers/vector.d.ts.map +1 -1
  229. package/dist/server/handlers/vector.js +1 -1
  230. package/dist/server/handlers/voice.cjs +21 -9
  231. package/dist/server/handlers/voice.d.ts +81 -40
  232. package/dist/server/handlers/voice.d.ts.map +1 -1
  233. package/dist/server/handlers/voice.js +1 -1
  234. package/dist/server/handlers/workflows.cjs +57 -41
  235. package/dist/server/handlers/workflows.d.ts +986 -83
  236. package/dist/server/handlers/workflows.d.ts.map +1 -1
  237. package/dist/server/handlers/workflows.js +1 -1
  238. package/dist/server/handlers.cjs +36 -31
  239. package/dist/server/handlers.d.ts +1 -0
  240. package/dist/server/handlers.d.ts.map +1 -1
  241. package/dist/server/handlers.js +12 -11
  242. package/dist/server/http-exception.d.ts +0 -5
  243. package/dist/server/http-exception.d.ts.map +1 -1
  244. package/dist/server/schemas/a2a.d.ts +786 -0
  245. package/dist/server/schemas/a2a.d.ts.map +1 -0
  246. package/dist/server/schemas/agent-builder.d.ts +225 -0
  247. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  248. package/dist/server/schemas/agents.d.ts +1401 -0
  249. package/dist/server/schemas/agents.d.ts.map +1 -0
  250. package/dist/server/schemas/common.d.ts +179 -0
  251. package/dist/server/schemas/common.d.ts.map +1 -0
  252. package/dist/server/schemas/logs.d.ts +124 -0
  253. package/dist/server/schemas/logs.d.ts.map +1 -0
  254. package/dist/server/schemas/mcp.d.ts +299 -0
  255. package/dist/server/schemas/mcp.d.ts.map +1 -0
  256. package/dist/server/schemas/memory.d.ts +1128 -0
  257. package/dist/server/schemas/memory.d.ts.map +1 -0
  258. package/dist/server/schemas/scores.d.ts +259 -0
  259. package/dist/server/schemas/scores.d.ts.map +1 -0
  260. package/dist/server/schemas/stored-agents.d.ts +792 -0
  261. package/dist/server/schemas/stored-agents.d.ts.map +1 -0
  262. package/dist/server/schemas/system.d.ts +36 -0
  263. package/dist/server/schemas/system.d.ts.map +1 -0
  264. package/dist/server/schemas/vectors.d.ts +107 -0
  265. package/dist/server/schemas/vectors.d.ts.map +1 -0
  266. package/dist/server/schemas/workflows.d.ts +832 -0
  267. package/dist/server/schemas/workflows.d.ts.map +1 -0
  268. package/dist/server/server-adapter/index.cjs +499 -0
  269. package/dist/server/server-adapter/index.cjs.map +1 -0
  270. package/dist/server/server-adapter/index.d.ts +91 -0
  271. package/dist/server/server-adapter/index.d.ts.map +1 -0
  272. package/dist/server/server-adapter/index.js +472 -0
  273. package/dist/server/server-adapter/index.js.map +1 -0
  274. package/dist/server/server-adapter/openapi-utils.d.ts +59 -0
  275. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  276. package/dist/server/server-adapter/redact.d.ts +26 -0
  277. package/dist/server/server-adapter/redact.d.ts.map +1 -0
  278. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  279. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  280. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  281. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  282. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  283. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  284. package/dist/server/server-adapter/routes/index.d.ts +50 -0
  285. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  286. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  287. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  288. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  289. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  290. package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
  291. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
  292. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  293. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  294. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  295. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  296. package/dist/server/server-adapter/routes/route-builder.d.ts +111 -0
  297. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  298. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  299. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  300. package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
  301. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
  302. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  303. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  304. package/dist/server/server-adapter/routes/system.d.ts +12 -0
  305. package/dist/server/server-adapter/routes/system.d.ts.map +1 -0
  306. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  307. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  308. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  309. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  310. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  311. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  312. package/dist/server/utils.d.ts +4 -3
  313. package/dist/server/utils.d.ts.map +1 -1
  314. package/dist/{token-375W3LEI.cjs → token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs} +11 -12
  315. package/dist/token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs.map +1 -0
  316. package/dist/{token-C3IMNCC4.js → token-6GSAFR2W-K2BTU23I-NW33N3NU.js} +8 -9
  317. package/dist/token-6GSAFR2W-K2BTU23I-NW33N3NU.js.map +1 -0
  318. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs +63 -0
  319. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs.map +1 -0
  320. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js +61 -0
  321. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js.map +1 -0
  322. package/dist/token-6GSAFR2W-VLY2XUPA-NCSASMWN.js +61 -0
  323. package/dist/token-6GSAFR2W-VLY2XUPA-NCSASMWN.js.map +1 -0
  324. package/dist/token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs +63 -0
  325. package/dist/token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs.map +1 -0
  326. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs +10 -0
  327. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs.map +1 -0
  328. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js +8 -0
  329. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js.map +1 -0
  330. package/dist/token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs +10 -0
  331. package/dist/token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs.map +1 -0
  332. package/dist/token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js +8 -0
  333. package/dist/token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js.map +1 -0
  334. package/dist/token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs +10 -0
  335. package/dist/token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs.map +1 -0
  336. package/dist/token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js +8 -0
  337. package/dist/token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js.map +1 -0
  338. package/package.json +40 -12
  339. package/dist/chunk-2S4IMB6E.cjs +0 -130
  340. package/dist/chunk-2S4IMB6E.cjs.map +0 -1
  341. package/dist/chunk-2XD2KQEK.js +0 -160
  342. package/dist/chunk-2XD2KQEK.js.map +0 -1
  343. package/dist/chunk-36CWLQQT.js +0 -192
  344. package/dist/chunk-36CWLQQT.js.map +0 -1
  345. package/dist/chunk-4BKR6543.cjs +0 -19504
  346. package/dist/chunk-4BKR6543.cjs.map +0 -1
  347. package/dist/chunk-4QCXUEAT.js +0 -25
  348. package/dist/chunk-4QCXUEAT.js.map +0 -1
  349. package/dist/chunk-4YFT3JFJ.js +0 -19463
  350. package/dist/chunk-4YFT3JFJ.js.map +0 -1
  351. package/dist/chunk-6562SOHJ.js.map +0 -1
  352. package/dist/chunk-6IGZKIRM.cjs +0 -200
  353. package/dist/chunk-6IGZKIRM.cjs.map +0 -1
  354. package/dist/chunk-74ZF4DII.js +0 -122
  355. package/dist/chunk-74ZF4DII.js.map +0 -1
  356. package/dist/chunk-7KNKINQE.js +0 -83
  357. package/dist/chunk-7KNKINQE.js.map +0 -1
  358. package/dist/chunk-7MCHFMDF.js +0 -665
  359. package/dist/chunk-7MCHFMDF.js.map +0 -1
  360. package/dist/chunk-7YHMDEQ6.cjs +0 -128
  361. package/dist/chunk-7YHMDEQ6.cjs.map +0 -1
  362. package/dist/chunk-BATEJLED.js +0 -124
  363. package/dist/chunk-BATEJLED.js.map +0 -1
  364. package/dist/chunk-BMOVKZO7.cjs +0 -167
  365. package/dist/chunk-BMOVKZO7.cjs.map +0 -1
  366. package/dist/chunk-CXVOX4WB.js +0 -508
  367. package/dist/chunk-CXVOX4WB.js.map +0 -1
  368. package/dist/chunk-CY4TP3FK.js +0 -16
  369. package/dist/chunk-CY4TP3FK.js.map +0 -1
  370. package/dist/chunk-EP3JQDPD.cjs +0 -131
  371. package/dist/chunk-EP3JQDPD.cjs.map +0 -1
  372. package/dist/chunk-G4PUALCE.cjs +0 -28
  373. package/dist/chunk-G4PUALCE.cjs.map +0 -1
  374. package/dist/chunk-GQRJOUV7.js.map +0 -1
  375. package/dist/chunk-HLIRV42R.cjs +0 -685
  376. package/dist/chunk-HLIRV42R.cjs.map +0 -1
  377. package/dist/chunk-LPM6BBAX.cjs.map +0 -1
  378. package/dist/chunk-LROVQBIB.cjs +0 -524
  379. package/dist/chunk-LROVQBIB.cjs.map +0 -1
  380. package/dist/chunk-LZKJT7QP.cjs.map +0 -1
  381. package/dist/chunk-MMROOK5J.js.map +0 -1
  382. package/dist/chunk-MYR4PVGN.js +0 -123
  383. package/dist/chunk-MYR4PVGN.js.map +0 -1
  384. package/dist/chunk-OEW3R7V4.js.map +0 -1
  385. package/dist/chunk-PUYDRTPG.cjs +0 -720
  386. package/dist/chunk-PUYDRTPG.cjs.map +0 -1
  387. package/dist/chunk-QU6N55W6.cjs.map +0 -1
  388. package/dist/chunk-RE4RPXT2.cjs +0 -18
  389. package/dist/chunk-RE4RPXT2.cjs.map +0 -1
  390. package/dist/chunk-RQK4FQUD.js.map +0 -1
  391. package/dist/chunk-S4IOWSI3.js +0 -698
  392. package/dist/chunk-S4IOWSI3.js.map +0 -1
  393. package/dist/chunk-SED4H2GJ.cjs.map +0 -1
  394. package/dist/chunk-SHWNNZBL.js.map +0 -1
  395. package/dist/chunk-TOCYBDP2.js +0 -46
  396. package/dist/chunk-TOCYBDP2.js.map +0 -1
  397. package/dist/chunk-WH5RPLO4.cjs +0 -88
  398. package/dist/chunk-WH5RPLO4.cjs.map +0 -1
  399. package/dist/chunk-X6C7BUWN.cjs +0 -48
  400. package/dist/chunk-X6C7BUWN.cjs.map +0 -1
  401. package/dist/chunk-YNGDJJOH.cjs.map +0 -1
  402. package/dist/dist-P4MXBQ3U.cjs +0 -16
  403. package/dist/dist-YREX2TJT.js +0 -3
  404. package/dist/token-375W3LEI.cjs.map +0 -1
  405. package/dist/token-C3IMNCC4.js.map +0 -1
  406. package/dist/token-util-CV3RRG6K.cjs +0 -9
  407. package/dist/token-util-CV3RRG6K.cjs.map +0 -1
  408. package/dist/token-util-E5QO2RCL.js +0 -7
  409. package/dist/token-util-E5QO2RCL.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,19 +1,1694 @@
1
1
  # @mastra/server
2
2
 
3
- ## 0.0.0-remove-unused-model-providers-api-20251030210744
3
+ ## 0.0.0-remove-ai-peer-dep-from-evals-20260105220639
4
4
 
5
5
  ### Major Changes
6
6
 
7
+ - Moving scorers under the eval domain, api method consistency, prebuilt evals, scorers require ids. ([#9589](https://github.com/mastra-ai/mastra/pull/9589))
8
+
9
+ - Every Mastra primitive (agent, MCPServer, workflow, tool, processor, scorer, and vector) now has a get, list, and add method associated with it. Each primitive also now requires an id to be set. ([#9675](https://github.com/mastra-ai/mastra/pull/9675))
10
+
11
+ Primitives that are added to other primitives are also automatically added to the Mastra instance
12
+
13
+ - Update handlers to use `listWorkflowRuns` instead of `getWorkflowRuns`. Fix type names from `StoragelistThreadsByResourceIdInput/Output` to `StorageListThreadsByResourceIdInput/Output`. ([#9507](https://github.com/mastra-ai/mastra/pull/9507))
14
+
15
+ - Remove `getMessagesPaginated()` and add `perPage: false` support ([#9670](https://github.com/mastra-ai/mastra/pull/9670))
16
+
17
+ Removes deprecated `getMessagesPaginated()` method. The `listMessages()` API and score handlers now support `perPage: false` to fetch all records without pagination limits.
18
+
19
+ **Storage changes:**
20
+ - `StoragePagination.perPage` type changed from `number` to `number | false`
21
+ - All storage implementations support `perPage: false`:
22
+ - Memory: `listMessages()`
23
+ - Scores: `listScoresBySpan()`, `listScoresByRunId()`, `listScoresByExecutionId()`
24
+ - HTTP query parser accepts `"false"` string (e.g., `?perPage=false`)
25
+
26
+ **Memory changes:**
27
+ - `memory.query()` parameter type changed from `StorageGetMessagesArg` to `StorageListMessagesInput`
28
+ - Uses flat parameters (`page`, `perPage`, `include`, `filter`, `vectorSearchString`) instead of `selectBy` object
29
+
30
+ **Stricter validation:**
31
+ - `listMessages()` requires non-empty, non-whitespace `threadId` (throws error instead of returning empty results)
32
+
33
+ **Migration:**
34
+
35
+ ```typescript
36
+ // Storage/Memory: Replace getMessagesPaginated with listMessages
37
+ - storage.getMessagesPaginated({ threadId, selectBy: { pagination: { page: 0, perPage: 20 } } })
38
+ + storage.listMessages({ threadId, page: 0, perPage: 20 })
39
+ + storage.listMessages({ threadId, page: 0, perPage: false }) // Fetch all
40
+
41
+ // Memory: Replace selectBy with flat parameters
42
+ - memory.query({ threadId, selectBy: { last: 20, include: [...] } })
43
+ + memory.query({ threadId, perPage: 20, include: [...] })
44
+
45
+ // Client SDK
46
+ - thread.getMessagesPaginated({ selectBy: { pagination: { page: 0 } } })
47
+ + thread.listMessages({ page: 0, perPage: 20 })
48
+ ```
49
+
50
+ - **Removed `storage.getMessages()`** ([#9695](https://github.com/mastra-ai/mastra/pull/9695))
51
+
52
+ The `getMessages()` method has been removed from all storage implementations. Use `listMessages()` instead, which provides pagination support.
53
+
54
+ **Migration:**
55
+
56
+ ```typescript
57
+ // Before
58
+ const messages = await storage.getMessages({ threadId: 'thread-1' });
59
+
60
+ // After
61
+ const result = await storage.listMessages({
62
+ threadId: 'thread-1',
63
+ page: 0,
64
+ perPage: 50,
65
+ });
66
+ const messages = result.messages; // Access messages array
67
+ console.log(result.total); // Total count
68
+ console.log(result.hasMore); // Whether more pages exist
69
+ ```
70
+
71
+ **Message ordering default**
72
+
73
+ `listMessages()` defaults to ASC (oldest first) ordering by `createdAt`, matching the previous `getMessages()` behavior.
74
+
75
+ **To use DESC ordering (newest first):**
76
+
77
+ ```typescript
78
+ const result = await storage.listMessages({
79
+ threadId: 'thread-1',
80
+ orderBy: { field: 'createdAt', direction: 'DESC' },
81
+ });
82
+ ```
83
+
84
+ **Renamed `client.getThreadMessages()` → `client.listThreadMessages()`**
85
+
86
+ **Migration:**
87
+
88
+ ```typescript
89
+ // Before
90
+ const response = await client.getThreadMessages(threadId, { agentId });
91
+
92
+ // After
93
+ const response = await client.listThreadMessages(threadId, { agentId });
94
+ ```
95
+
96
+ The response format remains the same.
97
+
98
+ **Removed `StorageGetMessagesArg` type**
99
+
100
+ Use `StorageListMessagesInput` instead:
101
+
102
+ ```typescript
103
+ // Before
104
+ import type { StorageGetMessagesArg } from '@mastra/core';
105
+
106
+ // After
107
+ import type { StorageListMessagesInput } from '@mastra/core';
108
+ ```
109
+
110
+ - Bump minimum required Node.js version to 22.13.0 ([#9706](https://github.com/mastra-ai/mastra/pull/9706))
111
+
112
+ - Replace `getThreadsByResourceIdPaginated` with `listThreadsByResourceId` across memory handlers. Update client SDK to use `listThreads()` with `offset`/`limit` parameters instead of deprecated `getMemoryThreads()`. Consolidate `/api/memory/threads` routes to single paginated endpoint. ([#9508](https://github.com/mastra-ai/mastra/pull/9508))
113
+
114
+ - This simplifies the Memory API by removing the confusing rememberMessages method and renaming query to recall for better clarity. ([#9701](https://github.com/mastra-ai/mastra/pull/9701))
115
+
116
+ The rememberMessages method name implied it might persist data when it was actually just retrieving messages, same as query. Having two methods that did essentially the same thing was unnecessary.
117
+
118
+ Before:
119
+
120
+ ```typescript
121
+ // Two methods that did the same thing
122
+ memory.rememberMessages({ threadId, resourceId, config, vectorMessageSearch });
123
+ memory.query({ threadId, resourceId, perPage, vectorSearchString });
124
+ ```
125
+
126
+ After:
127
+
128
+ ```typescript
129
+ // Single unified method with clear purpose
130
+ memory.recall({ threadId, resourceId, perPage, vectorMessageSearch, threadConfig });
131
+ ```
132
+
133
+ All usages have been updated across the codebase including tests. The agent now calls recall directly with the appropriate parameters.
134
+
135
+ - Rename RuntimeContext to RequestContext ([#9511](https://github.com/mastra-ai/mastra/pull/9511))
136
+
137
+ - Rename `defaultVNextStreamOptions` to `defaultOptions`. Add "Legacy" suffix to v1 option properties and methods (`defaultGenerateOptions` → `defaultGenerateOptionsLegacy`, `defaultStreamOptions` → `defaultStreamOptionsLegacy`). ([#9535](https://github.com/mastra-ai/mastra/pull/9535))
138
+
139
+ - Remove `getThreadsByResourceId` and `getThreadsByResourceIdPaginated` methods from storage interfaces in favor of `listThreadsByResourceId`. The new method uses `offset`/`limit` pagination and a nested `orderBy` object structure (`{ field, direction }`). ([#9536](https://github.com/mastra-ai/mastra/pull/9536))
140
+
141
+ - Renamed a bunch of observability/tracing-related things to drop the AI prefix. ([#9744](https://github.com/mastra-ai/mastra/pull/9744))
142
+
143
+ - **Breaking Change**: Remove legacy v1 watch events and consolidate on v2 implementation. ([#9252](https://github.com/mastra-ai/mastra/pull/9252))
144
+
145
+ This change simplifies the workflow watching API by removing the legacy v1 event system and promoting v2 as the standard (renamed to just `watch`).
146
+
147
+ **What's Changed**
148
+ - Removed legacy v1 watch event handlers and types
149
+ - Renamed `watch-v2` to `watch` throughout the codebase
150
+ - Removed `.watch()` method from client-js SDK (`Workflow` and `AgentBuilder` classes)
151
+ - Removed `/watch` HTTP endpoints from server and deployer
152
+ - Removed `WorkflowWatchResult` and v1 `WatchEvent` types
153
+
154
+ - Pagination APIs now use `page`/`perPage` instead of `offset`/`limit` ([#9592](https://github.com/mastra-ai/mastra/pull/9592))
155
+
156
+ All storage and memory pagination APIs have been updated to use `page` (0-indexed) and `perPage` instead of `offset` and `limit`, aligning with standard REST API patterns.
157
+
158
+ **Affected APIs:**
159
+ - `Memory.listThreadsByResourceId()`
160
+ - `Memory.listMessages()`
161
+ - `Storage.listWorkflowRuns()`
162
+
163
+ **Migration:**
164
+
165
+ ```typescript
166
+ // Before
167
+ await memory.listThreadsByResourceId({
168
+ resourceId: 'user-123',
169
+ offset: 20,
170
+ limit: 10,
171
+ });
172
+
173
+ // After
174
+ await memory.listThreadsByResourceId({
175
+ resourceId: 'user-123',
176
+ page: 2, // page = Math.floor(offset / limit)
177
+ perPage: 10,
178
+ });
179
+
180
+ // Before
181
+ await memory.listMessages({
182
+ threadId: 'thread-456',
183
+ offset: 20,
184
+ limit: 10,
185
+ });
186
+
187
+ // After
188
+ await memory.listMessages({
189
+ threadId: 'thread-456',
190
+ page: 2,
191
+ perPage: 10,
192
+ });
193
+
194
+ // Before
195
+ await storage.listWorkflowRuns({
196
+ workflowName: 'my-workflow',
197
+ offset: 20,
198
+ limit: 10,
199
+ });
200
+
201
+ // After
202
+ await storage.listWorkflowRuns({
203
+ workflowName: 'my-workflow',
204
+ page: 2,
205
+ perPage: 10,
206
+ });
207
+ ```
208
+
209
+ **Additional improvements:**
210
+ - Added validation for negative `page` values in all storage implementations
211
+ - Improved `perPage` validation to handle edge cases (negative values, `0`, `false`)
212
+ - Added reusable query parser utilities for consistent validation in handlers
213
+
214
+ - Changing getAgents -> listAgents, getTools -> listTools, getWorkflows -> listWorkflows ([#9495](https://github.com/mastra-ai/mastra/pull/9495))
215
+
216
+ - Removed old tracing code based on OpenTelemetry ([#9237](https://github.com/mastra-ai/mastra/pull/9237))
217
+
218
+ - Remove deprecated vector prompts and cohere provider from code ([#9596](https://github.com/mastra-ai/mastra/pull/9596))
219
+
220
+ - Mark as stable ([`83d5942`](https://github.com/mastra-ai/mastra/commit/83d5942669ce7bba4a6ca4fd4da697a10eb5ebdc))
221
+
222
+ - Enforcing id required on Processor primitive ([#9591](https://github.com/mastra-ai/mastra/pull/9591))
223
+
224
+ - Renamed `MastraMessageV2` to `MastraDBMessage` ([#9255](https://github.com/mastra-ai/mastra/pull/9255))
225
+ Made the return format of all methods that return db messages consistent. It's always `{ messages: MastraDBMessage[] }` now, and messages can be converted after that using `@mastra/ai-sdk/ui`'s `toAISdkV4/5Messages()` function
226
+
227
+ - moved ai-tracing code into @mastra/observability ([#9661](https://github.com/mastra-ai/mastra/pull/9661))
228
+
229
+ - Remove legacy evals from Mastra ([#9491](https://github.com/mastra-ai/mastra/pull/9491))
230
+
231
+ ### Minor Changes
232
+
233
+ - Add stored agents support ([#10953](https://github.com/mastra-ai/mastra/pull/10953))
234
+
235
+ Agents can now be stored in the database and loaded at runtime. This lets you persist agent configurations and dynamically create executable Agent instances from storage.
236
+
237
+ ```typescript
238
+ import { Mastra } from '@mastra/core';
239
+ import { LibSQLStore } from '@mastra/libsql';
240
+
241
+ const mastra = new Mastra({
242
+ storage: new LibSQLStore({ url: ':memory:' }),
243
+ tools: { myTool },
244
+ scorers: { myScorer },
245
+ });
246
+
247
+ // Create agent in storage via API or directly
248
+ await mastra.getStorage().createAgent({
249
+ agent: {
250
+ id: 'my-agent',
251
+ name: 'My Agent',
252
+ instructions: 'You are helpful',
253
+ model: { provider: 'openai', name: 'gpt-4' },
254
+ tools: { myTool: {} },
255
+ scorers: { myScorer: { sampling: { type: 'ratio', rate: 0.5 } } },
256
+ },
257
+ });
258
+
259
+ // Load and use the agent
260
+ const agent = await mastra.getStoredAgentById('my-agent');
261
+ const response = await agent.generate({ messages: 'Hello!' });
262
+
263
+ // List all stored agents with pagination
264
+ const { agents, total, hasMore } = await mastra.listStoredAgents({
265
+ page: 0,
266
+ perPage: 10,
267
+ });
268
+ ```
269
+
270
+ Also adds a memory registry to Mastra so stored agents can reference memory instances by key.
271
+
272
+ - Update peer dependencies to match core package version bump (1.0.0) ([#9237](https://github.com/mastra-ai/mastra/pull/9237))
273
+
274
+ - Memory scope defaults changed from 'thread' to 'resource' ([#8983](https://github.com/mastra-ai/mastra/pull/8983))
275
+
276
+ Both `workingMemory.scope` and `semanticRecall.scope` now default to `'resource'` instead of `'thread'`. This means:
277
+ - Working memory persists across all conversations for the same user/resource
278
+ - Semantic recall searches across all threads for the same user/resource
279
+
280
+ **Migration**: To maintain the previous thread-scoped behavior, explicitly set `scope: 'thread'`:
281
+
282
+ ```typescript
283
+ memory: new Memory({
284
+ storage,
285
+ workingMemory: {
286
+ enabled: true,
287
+ scope: 'thread', // Explicitly set for thread-scoped behavior
288
+ },
289
+ semanticRecall: {
290
+ scope: 'thread', // Explicitly set for thread-scoped behavior
291
+ },
292
+ }),
293
+ ```
294
+
295
+ Also fixed issues where playground semantic recall search could show missing or incorrect results in certain cases.
296
+
297
+ - Update peer dependencies to match core package version bump (1.0.0) ([#9495](https://github.com/mastra-ai/mastra/pull/9495))
298
+
299
+ - Update peer dependencies to match core package version bump (0.22.1) ([#8649](https://github.com/mastra-ai/mastra/pull/8649))
300
+
301
+ - Add observeStream support for agent-builder template installation ([#9372](https://github.com/mastra-ai/mastra/pull/9372))
302
+ - Add observeStream, observeStreamVNext, observeStreamLegacy, and resumeStream methods to agent-builder client SDK
303
+ - Add corresponding server handlers and deployer routes for observe streaming
304
+ - Add tracingOptions parameter to existing agent-builder handlers for parity with workflows
305
+ - Update template installation processor to support both legacy and VNext streaming event formats
306
+
307
+ - Update peer dependencies to match core package version bump (0.22.0) ([#8983](https://github.com/mastra-ai/mastra/pull/8983))
308
+
309
+ - Unified observability schema with entity-based span identification ([#11132](https://github.com/mastra-ai/mastra/pull/11132))
310
+
311
+ ## What changed
312
+
313
+ Spans now use a unified identification model with `entityId`, `entityType`, and `entityName` instead of separate `agentId`, `toolId`, `workflowId` fields.
314
+
315
+ **Before:**
316
+
317
+ ```typescript
318
+ // Old span structure
319
+ span.agentId; // 'my-agent'
320
+ span.toolId; // undefined
321
+ span.workflowId; // undefined
322
+ ```
323
+
324
+ **After:**
325
+
326
+ ```typescript
327
+ // New span structure
328
+ span.entityType; // EntityType.AGENT
329
+ span.entityId; // 'my-agent'
330
+ span.entityName; // 'My Agent'
331
+ ```
332
+
333
+ ## New `listTraces()` API
334
+
335
+ Query traces with filtering, pagination, and sorting:
336
+
337
+ ```typescript
338
+ const { spans, pagination } = await storage.listTraces({
339
+ filters: {
340
+ entityType: EntityType.AGENT,
341
+ entityId: 'my-agent',
342
+ userId: 'user-123',
343
+ environment: 'production',
344
+ status: TraceStatus.SUCCESS,
345
+ startedAt: { start: new Date('2024-01-01'), end: new Date('2024-01-31') },
346
+ },
347
+ pagination: { page: 0, perPage: 50 },
348
+ orderBy: { field: 'startedAt', direction: 'DESC' },
349
+ });
350
+ ```
351
+
352
+ **Available filters:** date ranges (`startedAt`, `endedAt`), entity (`entityType`, `entityId`, `entityName`), identity (`userId`, `organizationId`), correlation IDs (`runId`, `sessionId`, `threadId`), deployment (`environment`, `source`, `serviceName`), `tags`, `metadata`, and `status`.
353
+
354
+ ## New retrieval methods
355
+ - `getSpan({ traceId, spanId })` - Get a single span
356
+ - `getRootSpan({ traceId })` - Get the root span of a trace
357
+ - `getTrace({ traceId })` - Get all spans for a trace
358
+
359
+ ## Backward compatibility
360
+
361
+ The legacy `getTraces()` method continues to work. When you pass `name: "agent run: my-agent"`, it automatically transforms to `entityId: "my-agent", entityType: AGENT`.
362
+
363
+ ## Migration
364
+
365
+ **Automatic:** SQL-based stores (PostgreSQL, LibSQL, MSSQL) automatically add new columns to existing `spans` tables on initialization. Existing data is preserved with new columns set to `NULL`.
366
+
367
+ **No action required:** Your existing code continues to work. Adopt the new fields and `listTraces()` API at your convenience.
368
+
369
+ - Update peer dependencies to match core package version bump (1.0.0) ([#9491](https://github.com/mastra-ai/mastra/pull/9491))
370
+
371
+ ### Patch Changes
372
+
373
+ - Add embedded documentation support for Mastra packages ([#11472](https://github.com/mastra-ai/mastra/pull/11472))
374
+
375
+ Mastra packages now include embedded documentation in the published npm package under `dist/docs/`. This enables coding agents and AI assistants to understand and use the framework by reading documentation directly from `node_modules`.
376
+
377
+ Each package includes:
378
+ - **SKILL.md** - Entry point explaining the package's purpose and capabilities
379
+ - **SOURCE_MAP.json** - Machine-readable index mapping exports to types and implementation files
380
+ - **Topic folders** - Conceptual documentation organized by feature area
381
+
382
+ Documentation is driven by the `packages` frontmatter field in MDX files, which maps docs to their corresponding packages. CI validation ensures all docs include this field.
383
+
384
+ - Remove `streamVNext`, `resumeStreamVNext`, and `observeStreamVNext` methods, call `stream`, `resumeStream` and `observeStream` directly ([#11499](https://github.com/mastra-ai/mastra/pull/11499))
385
+
386
+ ```diff
387
+ + const run = await workflow.createRun({ runId: '123' });
388
+ - const stream = await run.streamVNext({ inputData: { ... } });
389
+ + const stream = await run.stream({ inputData: { ... } });
390
+ ```
391
+
392
+ - Make step optional in all resume APIs ([#9454](https://github.com/mastra-ai/mastra/pull/9454))
393
+
394
+ - Fix semantic search endpoint to return results in the correct format. Also fix the delete messages endpoint to properly normalize ids in the expected format. ([#10032](https://github.com/mastra-ai/mastra/pull/10032))
395
+
396
+ - Extract routing from @deployer/server into server adapter packages. ([#10263](https://github.com/mastra-ai/mastra/pull/10263))
397
+ New packages:
398
+ - @mastra/express
399
+ - @mastra/hono
400
+
401
+ These packages support mastra server routes on express and hono respectively.
402
+ Better abstractions will be built on top of these packages in the near future, enabling users to easily attach mastra routes to any existing server framework.
403
+
404
+ - Fix type safety for message ordering - restrict `orderBy` to only accept `'createdAt'` field ([#11069](https://github.com/mastra-ai/mastra/pull/11069))
405
+
406
+ Messages don't have an `updatedAt` field, but the previous type allowed ordering by it, which would return empty results. This change adds compile-time type safety by making `StorageOrderBy` generic and restricting `StorageListMessagesInput.orderBy` to only accept `'createdAt'`. The API validation schemas have also been updated to reject invalid orderBy values at runtime.
407
+
408
+ - Add resourceId to workflow routes ([#11166](https://github.com/mastra-ai/mastra/pull/11166))
409
+
410
+ - Add agent id to the list agent ([#9770](https://github.com/mastra-ai/mastra/pull/9770))
411
+
412
+ - Update tool execution signature ([#9587](https://github.com/mastra-ai/mastra/pull/9587))
413
+
414
+ Consolidated the 3 different execution contexts to one
415
+
416
+ ```typescript
417
+ // before depending on the context the tool was executed in
418
+ tool.execute({ context: data });
419
+ tool.execute({ context: { inputData: data } });
420
+ tool.execute(data);
421
+
422
+ // now, for all contexts
423
+ tool.execute(data, context);
424
+ ```
425
+
426
+ **Before:**
427
+
428
+ ```typescript
429
+ inputSchema: z.object({ something: z.string() }),
430
+ execute: async ({ context, tracingContext, runId, ... }) => {
431
+ return doSomething(context.string);
432
+ }
433
+ ```
434
+
435
+ **After:**
436
+
437
+ ```typescript
438
+ inputSchema: z.object({ something: z.string() }),
439
+ execute: async (inputData, context) => {
440
+ const { agent, mcp, workflow, ...sharedContext } = context
441
+
442
+ // context that only an agent would get like toolCallId, messages, suspend, resume, etc
443
+ if (agent) {
444
+ doSomething(inputData.something, agent)
445
+ // context that only a workflow would get like runId, state, suspend, resume, etc
446
+ } else if (workflow) {
447
+ doSomething(inputData.something, workflow)
448
+ // context that only a workflow would get like "extra", "elicitation"
449
+ } else if (mcp) {
450
+ doSomething(inputData.something, mcp)
451
+ } else {
452
+ // Running a tool in no execution context
453
+ return doSomething(inputData.something);
454
+ }
455
+ }
456
+ ```
457
+
458
+ - Add the description field to listAgents ([#9672](https://github.com/mastra-ai/mastra/pull/9672))
459
+
460
+ - Add execution metadata to A2A message/send responses. The A2A protocol now returns detailed execution information including tool calls, tool results, token usage, and finish reason in the task metadata. This allows clients to inspect which tools were invoked during agent execution and access execution statistics without additional queries. ([#11241](https://github.com/mastra-ai/mastra/pull/11241))
461
+
462
+ - Fix the link issue in observability ([#9764](https://github.com/mastra-ai/mastra/pull/9764))
463
+
464
+ - Fixes issue #11185 where `MastraServer.tools` was rejecting tools created with `createTool({ inputSchema })`. Changed the tools property type from `Record<string, Tool>` to `ToolsInput` to accept tools with any schema types (input, output, or none), as well as Vercel AI SDK tools and provider-defined tools. ([`5118f38`](https://github.com/mastra-ai/mastra/commit/5118f384a70b1166012fde3b901f3227870b1009))
465
+
466
+ Tools created with `createTool({ inputSchema: z.object(...) })` now work without TypeScript errors.
467
+
468
+ - Fix workflow observability view broken by invalid entityType parameter ([#11427](https://github.com/mastra-ai/mastra/pull/11427))
469
+
470
+ The UI workflow observability view was failing with a Zod validation error when trying to filter traces by workflow. The UI was sending `entityType=workflow`, but the backend's `EntityType` enum only accepts `workflow_run`.
471
+
472
+ **Root Cause**: The legacy value transformation was happening in the handler (after validation), but Zod validation occurred earlier in the request pipeline, rejecting the request before it could be transformed.
473
+
474
+ **Solution**:
475
+ - Added `z.preprocess()` to the query schema to transform `workflow` → `workflow_run` before validation
476
+ - Kept handler transformation for defense in depth
477
+ - Updated UI to use `EntityType.WORKFLOW_RUN` enum value for type safety
478
+
479
+ This maintains backward compatibility with legacy clients while fixing the validation error.
480
+
481
+ Fixes #11412
482
+
483
+ - Add timeTravel APIs and add timeTravel feature to studio ([#10361](https://github.com/mastra-ai/mastra/pull/10361))
484
+
485
+ - feat: Add field filtering and nested workflow control to workflow execution result endpoint ([#11246](https://github.com/mastra-ai/mastra/pull/11246))
486
+
487
+ Adds two optional query parameters to `/api/workflows/:workflowId/runs/:runId/execution-result` endpoint:
488
+ - `fields`: Request only specific fields (e.g., `status`, `result`, `error`)
489
+ - `withNestedWorkflows`: Control whether to fetch nested workflow data
490
+
491
+ This significantly reduces response payload size and improves response times for large workflows.
492
+
493
+ ## Server Endpoint Usage
494
+
495
+ ```http
496
+ # Get only status (minimal payload - fastest)
497
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status
498
+
499
+ # Get status and result
500
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status,result
501
+
502
+ # Get all fields but without nested workflow data (faster)
503
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?withNestedWorkflows=false
504
+
505
+ # Get only specific fields without nested workflow data
506
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status,steps&withNestedWorkflows=false
507
+
508
+ # Get full data (default behavior)
509
+ GET /api/workflows/:workflowId/runs/:runId/execution-result
510
+ ```
511
+
512
+ ## Client SDK Usage
513
+
514
+ ```typescript
515
+ import { MastraClient } from '@mastra/client-js';
516
+
517
+ const client = new MastraClient({ baseUrl: 'http://localhost:4111' });
518
+ const workflow = client.getWorkflow('myWorkflow');
519
+
520
+ // Get only status (minimal payload - fastest)
521
+ const statusOnly = await workflow.runExecutionResult(runId, {
522
+ fields: ['status'],
523
+ });
524
+ console.log(statusOnly.status); // 'success' | 'failed' | 'running' | etc.
525
+
526
+ // Get status and result
527
+ const statusAndResult = await workflow.runExecutionResult(runId, {
528
+ fields: ['status', 'result'],
529
+ });
530
+
531
+ // Get all fields but without nested workflow data (faster)
532
+ const resultWithoutNested = await workflow.runExecutionResult(runId, {
533
+ withNestedWorkflows: false,
534
+ });
535
+
536
+ // Get specific fields without nested workflow data
537
+ const optimized = await workflow.runExecutionResult(runId, {
538
+ fields: ['status', 'steps'],
539
+ withNestedWorkflows: false,
540
+ });
541
+
542
+ // Get full execution result (default behavior)
543
+ const fullResult = await workflow.runExecutionResult(runId);
544
+ ```
545
+
546
+ ## Core API Changes
547
+
548
+ The `Workflow.getWorkflowRunExecutionResult` method now accepts an options object:
549
+
550
+ ```typescript
551
+ await workflow.getWorkflowRunExecutionResult(runId, {
552
+ withNestedWorkflows: false, // default: true, set to false to skip nested workflow data
553
+ fields: ['status', 'result'], // optional field filtering
554
+ });
555
+ ```
556
+
557
+ ## Inngest Compatibility
558
+
559
+ The `@mastra/inngest` package has been updated to use the new options object API. This is a non-breaking internal change - no action required from inngest workflow users.
560
+
561
+ ## Performance Impact
562
+
563
+ For workflows with large step outputs:
564
+ - Requesting only `status`: ~99% reduction in payload size
565
+ - Requesting `status,result,error`: ~95% reduction in payload size
566
+ - Using `withNestedWorkflows=false`: Avoids expensive nested workflow data fetching
567
+ - Combining both: Maximum performance optimization
568
+
569
+ - Refactor storage architecture to use domain-specific stores via `getStore()` pattern ([#11361](https://github.com/mastra-ai/mastra/pull/11361))
570
+
571
+ ### Summary
572
+
573
+ This release introduces a new storage architecture that replaces passthrough methods on `MastraStorage` with domain-specific storage interfaces accessed via `getStore()`. This change reduces code duplication across storage adapters and provides a cleaner, more modular API.
574
+
575
+ ### Migration Guide
576
+
577
+ All direct method calls on storage instances should be updated to use `getStore()`:
578
+
579
+ ```typescript
580
+ // Before
581
+ const thread = await storage.getThreadById({ threadId });
582
+ await storage.persistWorkflowSnapshot({ workflowName, runId, snapshot });
583
+ await storage.createSpan(span);
584
+
585
+ // After
586
+ const memory = await storage.getStore('memory');
587
+ const thread = await memory?.getThreadById({ threadId });
588
+
589
+ const workflows = await storage.getStore('workflows');
590
+ await workflows?.persistWorkflowSnapshot({ workflowName, runId, snapshot });
591
+
592
+ const observability = await storage.getStore('observability');
593
+ await observability?.createSpan(span);
594
+ ```
595
+
596
+ ### Available Domains
597
+ - **`memory`**: Thread and message operations (`getThreadById`, `saveThread`, `saveMessages`, etc.)
598
+ - **`workflows`**: Workflow state persistence (`persistWorkflowSnapshot`, `loadWorkflowSnapshot`, `getWorkflowRunById`, etc.)
599
+ - **`scores`**: Evaluation scores (`saveScore`, `listScoresByScorerId`, etc.)
600
+ - **`observability`**: Tracing and spans (`createSpan`, `updateSpan`, `getTrace`, etc.)
601
+ - **`agents`**: Stored agent configurations (`createAgent`, `getAgentById`, `listAgents`, etc.)
602
+
603
+ ### Breaking Changes
604
+ - Passthrough methods have been removed from `MastraStorage` base class
605
+ - All storage adapters now require accessing domains via `getStore()`
606
+ - The `stores` property on storage instances is now the canonical way to access domain storage
607
+
608
+ ### Internal Changes
609
+ - Each storage adapter now initializes domain-specific stores in its constructor
610
+ - Domain stores share database connections and handle their own table initialization
611
+
612
+ - Add tool call approval ([#8649](https://github.com/mastra-ai/mastra/pull/8649))
613
+
614
+ - Fix scorers listing filtring ([#9801](https://github.com/mastra-ai/mastra/pull/9801))
615
+
616
+ - **Breaking Changes** ([#11028](https://github.com/mastra-ai/mastra/pull/11028))
617
+ - Renamed `RuntimeContext` type to `ServerContext` to avoid confusion with the user-facing `RequestContext` (previously called `RuntimeContext`)
618
+ - Removed `playground` and `isDev` options from server adapter constructors - these only set context variables without any actual functionality
619
+
620
+ **Changes**
621
+
622
+ **@mastra/server**
623
+ - Renamed `RuntimeContext` type to `ServerContext` in route handler types
624
+ - Renamed `createTestRuntimeContext` to `createTestServerContext` in test utilities
625
+ - Renamed `isPlayground` parameter to `isStudio` in `formatAgent` function
626
+
627
+ **@mastra/hono**
628
+ - Removed `playground` and `isDev` from `HonoVariables` type
629
+ - Removed setting of `playground` and `isDev` context variables in middleware
630
+
631
+ **@mastra/express**
632
+ - Removed `playground` and `isDev` from `Express.Locals` interface
633
+ - Removed setting of `playground` and `isDev` in response locals
634
+
635
+ - Fixes issue where clicking the reset button in the model picker would fail to restore the original LanguageModelV2 (or any other types) object that was passed during agent construction. ([#9481](https://github.com/mastra-ai/mastra/pull/9481))
636
+
637
+ - Unified MastraServer API with MCP transport routes ([#10644](https://github.com/mastra-ai/mastra/pull/10644))
638
+
639
+ **Breaking Changes:**
640
+ - Renamed `HonoServerAdapter` to `MastraServer` in `@mastra/hono`
641
+ - Renamed `ExpressServerAdapter` to `MastraServer` in `@mastra/express`
642
+ - Configuration now passed to constructor instead of separate method calls
643
+ - Renamed base class from `ServerAdapter` to `MastraServerBase` in `@mastra/server`
644
+
645
+ **New Features:**
646
+ - Added MCP transport routes (HTTP and SSE) to server adapters
647
+ - MCP endpoints available at `/api/mcp/:serverId/mcp` (HTTP) and `/api/mcp/:serverId/sse` (SSE)
648
+ - Added `express.json()` middleware compatibility for MCP routes
649
+ - Moved authentication helpers from deployer to `@mastra/server/auth`
650
+
651
+ **Testing:**
652
+ - Added shared MCP route and transport test suites in `@internal/server-adapter-test-utils`
653
+ - Added comprehensive MCP endpoint tests for both Hono and Express adapters
654
+ - Added GitHub Actions workflow for server adapter CI testing
655
+
656
+ - Add storage composition to MastraStorage ([#11401](https://github.com/mastra-ai/mastra/pull/11401))
657
+
658
+ `MastraStorage` can now compose storage domains from different adapters. Use it when you need different databases for different purposes - for example, PostgreSQL for memory and workflows, but a different database for observability.
659
+
660
+ ```typescript
661
+ import { MastraStorage } from '@mastra/core/storage';
662
+ import { MemoryPG, WorkflowsPG, ScoresPG } from '@mastra/pg';
663
+ import { MemoryLibSQL } from '@mastra/libsql';
664
+
665
+ // Compose domains from different stores
666
+ const storage = new MastraStorage({
667
+ id: 'composite',
668
+ domains: {
669
+ memory: new MemoryLibSQL({ url: 'file:./local.db' }),
670
+ workflows: new WorkflowsPG({ connectionString: process.env.DATABASE_URL }),
671
+ scores: new ScoresPG({ connectionString: process.env.DATABASE_URL }),
672
+ },
673
+ });
674
+ ```
675
+
676
+ **Breaking changes:**
677
+ - `storage.supports` property no longer exists
678
+ - `StorageSupports` type is no longer exported from `@mastra/core/storage`
679
+
680
+ All stores now support the same features. For domain availability, use `getStore()`:
681
+
682
+ ```typescript
683
+ const store = await storage.getStore('memory');
684
+ if (store) {
685
+ // domain is available
686
+ }
687
+ ```
688
+
689
+ - Remove deprecated playground-only prompt generation handler (functionality moved to @mastra/server) ([#11074](https://github.com/mastra-ai/mastra/pull/11074))
690
+
691
+ Improve prompt enhancement UX: show toast errors when enhancement fails, disable button when no model has a configured API key, and prevent users from disabling all models in the model list
692
+
693
+ Add missing `/api/agents/:agentId/instructions/enhance` endpoint that was referenced by `@mastra/client-js` and `@mastra/playground-ui`
694
+
695
+ - Update peer dependencies to match core package version bump (1.0.0) ([#9489](https://github.com/mastra-ai/mastra/pull/9489))
696
+
697
+ - Add delete workflow run API ([#10991](https://github.com/mastra-ai/mastra/pull/10991))
698
+
699
+ ```typescript
700
+ await workflow.deleteWorkflowRunById(runId);
701
+ ```
702
+
703
+ - Add initial state input to workflow form in studio ([#11560](https://github.com/mastra-ai/mastra/pull/11560))
704
+
705
+ - Allow direct access to server app handle directly from Mastra instance. ([#10598](https://github.com/mastra-ai/mastra/pull/10598))
706
+
707
+ ```ts
708
+ // Before: HTTP request to localhost
709
+ const response = await fetch(`http://localhost:5000/api/tools`);
710
+
711
+ // After: Direct call via app.fetch()
712
+ const app = mastra.getServerApp<Hono>();
713
+ const response = await app.fetch(new Request('http://internal/api/tools'));
714
+ ```
715
+
716
+ - Added `mastra.getServerApp<T>()` to access the underlying Hono/Express app
717
+ - Added `mastra.getMastraServer()` and `mastra.setMastraServer()` for adapter access
718
+ - Added `MastraServerBase` class in `@mastra/core/server` for adapter implementations
719
+ - Server adapters now auto-register with Mastra in their constructor
720
+
721
+ - Add `/api/system/packages` endpoint that returns installed Mastra packages and versions from the dev environment ([#11211](https://github.com/mastra-ai/mastra/pull/11211))
722
+
723
+ - Add `perStep` option to workflow run methods, allowing a workflow to run just a step instead of all the workflow steps ([#11276](https://github.com/mastra-ai/mastra/pull/11276))
724
+
725
+ - Standardize pagination params to page/perPage with backwards compatibility for limit/offset ([#10790](https://github.com/mastra-ai/mastra/pull/10790))
726
+ - Server now accepts both `page`/`perPage` and legacy `limit`/`offset` params for workflow runs and MCP server listing endpoints
727
+ - Client SDK sends both param formats to support older server versions
728
+ - Added `createCombinedPaginationSchema` helper for endpoints needing backwards compatibility
729
+ - Marked `limit` and `offset` as deprecated in client types
730
+
731
+ - Fixed server handler bugs: filter parsing now handles colons in values (timestamps, URLs), dateRange validation now converts JSON strings to Date objects, deleteMessages schema accepts object forms, and added missing responseSchema for legacy stream route ([#10362](https://github.com/mastra-ai/mastra/pull/10362))
732
+
733
+ - **Client (`@mastra/client-js`):** ([#10653](https://github.com/mastra-ai/mastra/pull/10653))
734
+ - Fixed `sendStreamingMessage` to properly return a streaming response instead of attempting to parse it as JSON
735
+
736
+ **Server (`@mastra/server`):**
737
+ - Fixed A2A message handler to pass `contextId` as `threadId` for memory persistence across conversations
738
+ - Added support for user-provided `resourceId` via `params.metadata.resourceId` or `message.metadata.resourceId`, falling back to `agentId`
739
+
740
+ - Fix undefined runtimeContext using memory from playground ([#9328](https://github.com/mastra-ai/mastra/pull/9328))
741
+
742
+ - Make step optional in resumeStreamVNext API ([#9453](https://github.com/mastra-ai/mastra/pull/9453))
743
+
744
+ - Adds thread cloning to create independent copies of conversations that can diverge. ([#11517](https://github.com/mastra-ai/mastra/pull/11517))
745
+
746
+ ```typescript
747
+ // Clone a thread
748
+ const { thread, clonedMessages } = await memory.cloneThread({
749
+ sourceThreadId: 'thread-123',
750
+ title: 'My Clone',
751
+ options: {
752
+ messageLimit: 10, // optional: only copy last N messages
753
+ },
754
+ });
755
+
756
+ // Check if a thread is a clone
757
+ if (memory.isClone(thread)) {
758
+ const source = await memory.getSourceThread(thread.id);
759
+ }
760
+
761
+ // List all clones of a thread
762
+ const clones = await memory.listClones('thread-123');
763
+ ```
764
+
765
+ Includes:
766
+ - Storage implementations for InMemory, PostgreSQL, LibSQL, Upstash
767
+ - API endpoint: `POST /api/memory/threads/:threadId/clone`
768
+ - Embeddings created for cloned messages (semantic recall)
769
+ - Clone button in playground UI Memory tab
770
+
771
+ - The `stream` API endpoint now automatically redacts `request` data from stream chunks (`step-start`, `step-finish`, `finish`) which could contain system prompts, tool definitions, and API keys. Redaction is enabled by default and can be disabled for debugging/internal services via `streamOptions.redact`. ([#10705](https://github.com/mastra-ai/mastra/pull/10705))
772
+
773
+ - Remove `waitForEvent` from workflows. `waitForEvent` is now removed, please use suspend & resume flow instead. See https://mastra.ai/en/docs/workflows/suspend-and-resume for more details on suspend & resume flow. ([#9214](https://github.com/mastra-ai/mastra/pull/9214))
774
+
775
+ - Add optional `partial` query parameter to `/api/agents` and `/api/workflows` endpoints to return minimal data without schemas, reducing payload size for list views: ([#10886](https://github.com/mastra-ai/mastra/pull/10886))
776
+ - When `partial=true`: tool schemas (inputSchema, outputSchema) are omitted
777
+ - When `partial=true`: workflow steps are replaced with stepCount integer
778
+ - When `partial=true`: workflow root schemas (inputSchema, outputSchema) are omitted
779
+ - Maintains backward compatibility when partial parameter is not provided
780
+
781
+ **Server Endpoint Usage**
782
+
783
+ ```bash
784
+ # Get partial agent data (no tool schemas)
785
+ GET /api/agents?partial=true
786
+
787
+ # Get full agent data (default behavior)
788
+ GET /api/agents
789
+
790
+ # Get partial workflow data (stepCount instead of steps, no schemas)
791
+ GET /api/workflows?partial=true
792
+
793
+ # Get full workflow data (default behavior)
794
+ GET /api/workflows
795
+ ```
796
+
797
+ **Client SDK Usage**
798
+
799
+ ```typescript
800
+ import { MastraClient } from '@mastra/client-js';
801
+
802
+ const client = new MastraClient({ baseUrl: 'http://localhost:4111' });
803
+
804
+ // Get partial agent list (smaller payload)
805
+ const partialAgents = await client.listAgents({ partial: true });
806
+
807
+ // Get full agent list with tool schemas
808
+ const fullAgents = await client.listAgents();
809
+
810
+ // Get partial workflow list (smaller payload)
811
+ const partialWorkflows = await client.listWorkflows({ partial: true });
812
+
813
+ // Get full workflow list with steps and schemas
814
+ const fullWorkflows = await client.listWorkflows();
815
+ ```
816
+
817
+ - Use memory mock in server tests ([#9486](https://github.com/mastra-ai/mastra/pull/9486))
818
+
819
+ - Support new Workflow tripwire run status. Tripwires that are thrown from within a workflow will now bubble up and return a graceful state with information about tripwires. ([#10947](https://github.com/mastra-ai/mastra/pull/10947))
820
+
821
+ When a workflow contains an agent step that triggers a tripwire, the workflow returns with `status: 'tripwire'` and includes tripwire details:
822
+
823
+ ```typescript
824
+ const run = await workflow.createRun();
825
+ const result = await run.start({ inputData: { message: 'Hello' } });
826
+
827
+ if (result.status === 'tripwire') {
828
+ console.log('Workflow terminated by tripwire:', result.tripwire?.reason);
829
+ console.log('Processor ID:', result.tripwire?.processorId);
830
+ console.log('Retry requested:', result.tripwire?.retry);
831
+ }
832
+ ```
833
+
834
+ Adds new UI state for tripwire in agent chat and workflow UI.
835
+
836
+ This is distinct from `status: 'failed'` which indicates an unexpected error. A tripwire status means a processor intentionally stopped execution (e.g., for content moderation).
837
+
838
+ - Network handler now accesses thread and resource parameters from the nested memory object instead of directly from request body. ([#10294](https://github.com/mastra-ai/mastra/pull/10294))
839
+
840
+ - Remove format from stream/generate ([#9577](https://github.com/mastra-ai/mastra/pull/9577))
841
+
842
+ - Make agentId optional for memory read operations (getThread, listThreads, listMessages) ([#11540](https://github.com/mastra-ai/mastra/pull/11540))
843
+
844
+ When workflows use multiple agents sharing the same threadId/resourceId, users can now retrieve threads and messages without specifying an agentId. The server falls back to using storage directly when agentId is not provided.
845
+
846
+ - Fixed voice transcription endpoint ([#11348](https://github.com/mastra-ai/mastra/pull/11348))
847
+
848
+ The voice transcription endpoint (`/api/agents/:agentId/voice/listen`) now correctly handles multipart/form-data requests for audio uploads rather than only parsing JSON request bodies.
849
+
850
+ Both Express and Hono adapters now parse multipart/form-data bodies and handle JSON-encoded form fields.
851
+
852
+ **Breaking change:** The server schema field for the transcription endpoint was renamed from `audioData` to `audio` to match the client SDK. If you are making direct API calls to the transcription endpoint (not using the SDK), you will need to update your request body to use `audio` instead of `audioData`.
853
+
854
+ - Updated dependencies [[`ac0d2f4`](https://github.com/mastra-ai/mastra/commit/ac0d2f4ff8831f72c1c66c2be809706d17f65789), [`2319326`](https://github.com/mastra-ai/mastra/commit/2319326f8c64e503a09bbcf14be2dd65405445e0), [`72df8ae`](https://github.com/mastra-ai/mastra/commit/72df8ae595584cdd7747d5c39ffaca45e4507227), [`bc72b52`](https://github.com/mastra-ai/mastra/commit/bc72b529ee4478fe89ecd85a8be47ce0127b82a0), [`39c9743`](https://github.com/mastra-ai/mastra/commit/39c97432d084294f8ba85fbf3ef28098ff21459e), [`05b8bee`](https://github.com/mastra-ai/mastra/commit/05b8bee9e50e6c2a4a2bf210eca25ee212ca24fa), [`3076c67`](https://github.com/mastra-ai/mastra/commit/3076c6778b18988ae7d5c4c5c466366974b2d63f), [`3d93a15`](https://github.com/mastra-ai/mastra/commit/3d93a15796b158c617461c8b98bede476ebb43e2), [`9198899`](https://github.com/mastra-ai/mastra/commit/91988995c427b185c33714b7f3be955367911324), [`c042bd0`](https://github.com/mastra-ai/mastra/commit/c042bd0b743e0e86199d0cb83344ca7690e34a9c), [`f743dbb`](https://github.com/mastra-ai/mastra/commit/f743dbb8b40d1627b5c10c0e6fc154f4ebb6e394), [`21a15de`](https://github.com/mastra-ai/mastra/commit/21a15de369fe82aac26bb642ed7be73505475e8b), [`e54953e`](https://github.com/mastra-ai/mastra/commit/e54953ed8ce1b28c0d62a19950163039af7834b4), [`fec5129`](https://github.com/mastra-ai/mastra/commit/fec5129de7fc64423ea03661a56cef31dc747a0d), [`940a2b2`](https://github.com/mastra-ai/mastra/commit/940a2b27480626ed7e74f55806dcd2181c1dd0c2), [`1a0d3fc`](https://github.com/mastra-ai/mastra/commit/1a0d3fc811482c9c376cdf79ee615c23bae9b2d6), [`85d7ee1`](https://github.com/mastra-ai/mastra/commit/85d7ee18ff4e14d625a8a30ec6656bb49804989b), [`c6c1092`](https://github.com/mastra-ai/mastra/commit/c6c1092f8fbf76109303f69e000e96fd1960c4ce), [`0491e7c`](https://github.com/mastra-ai/mastra/commit/0491e7c9b714cb0ba22187ee062147ec2dd7c712), [`f6f4903`](https://github.com/mastra-ai/mastra/commit/f6f4903397314f73362061dc5a3e8e7c61ea34aa), [`d5ed981`](https://github.com/mastra-ai/mastra/commit/d5ed981c8701c1b8a27a5f35a9a2f7d9244e695f), [`85a628b`](https://github.com/mastra-ai/mastra/commit/85a628b1224a8f64cd82ea7f033774bf22df7a7e), [`0e8ed46`](https://github.com/mastra-ai/mastra/commit/0e8ed467c54d6901a6a365f270ec15d6faadb36c), [`33a4d2e`](https://github.com/mastra-ai/mastra/commit/33a4d2e4ed8af51f69256232f00c34d6b6b51d48), [`9650cce`](https://github.com/mastra-ai/mastra/commit/9650cce52a1d917ff9114653398e2a0f5c3ba808), [`6c049d9`](https://github.com/mastra-ai/mastra/commit/6c049d94063fdcbd5b81c4912a2bf82a92c9cc0b), [`910db9e`](https://github.com/mastra-ai/mastra/commit/910db9e0312888495eb5617b567f247d03303814), [`2f897df`](https://github.com/mastra-ai/mastra/commit/2f897df208508f46f51b7625e5dd20c37f93e0e3), [`d629361`](https://github.com/mastra-ai/mastra/commit/d629361a60f6565b5bfb11976fdaf7308af858e2), [`4f94ed8`](https://github.com/mastra-ai/mastra/commit/4f94ed8177abfde3ec536e3574883e075423350c), [`feb7ee4`](https://github.com/mastra-ai/mastra/commit/feb7ee4d09a75edb46c6669a3beaceec78811747), [`4aaa844`](https://github.com/mastra-ai/mastra/commit/4aaa844a4f19d054490f43638a990cc57bda8d2f), [`c237233`](https://github.com/mastra-ai/mastra/commit/c23723399ccedf7f5744b3f40997b79246bfbe64), [`38380b6`](https://github.com/mastra-ai/mastra/commit/38380b60fca905824bdf6b43df307a58efb1aa15), [`932d63d`](https://github.com/mastra-ai/mastra/commit/932d63dd51be9c8bf1e00e3671fe65606c6fb9cd), [`4a1a6cb`](https://github.com/mastra-ai/mastra/commit/4a1a6cb3facad54b2bb6780b00ce91d6de1edc08), [`08c31c1`](https://github.com/mastra-ai/mastra/commit/08c31c188ebccd598acaf55e888b6397d01f7eae), [`919a22b`](https://github.com/mastra-ai/mastra/commit/919a22b25876f9ed5891efe5facbe682c30ff497), [`15f9e21`](https://github.com/mastra-ai/mastra/commit/15f9e216177201ea6e3f6d0bfb063fcc0953444f), [`3443770`](https://github.com/mastra-ai/mastra/commit/3443770662df8eb24c9df3589b2792d78cfcb811), [`b0e2ea5`](https://github.com/mastra-ai/mastra/commit/b0e2ea5b52c40fae438b9e2f7baee6f0f89c5442), [`f0a07e0`](https://github.com/mastra-ai/mastra/commit/f0a07e0111b3307c5fabfa4094c5c2cfb734fbe6), [`ff94dea`](https://github.com/mastra-ai/mastra/commit/ff94dea935f4e34545c63bcb6c29804732698809), [`0d41fe2`](https://github.com/mastra-ai/mastra/commit/0d41fe245355dfc66d61a0d9c85d9400aac351ff), [`b760b73`](https://github.com/mastra-ai/mastra/commit/b760b731aca7c8a3f041f61d57a7f125ae9cb215), [`aaa40e7`](https://github.com/mastra-ai/mastra/commit/aaa40e788628b319baa8e889407d11ad626547fa), [`1521d71`](https://github.com/mastra-ai/mastra/commit/1521d716e5daedc74690c983fbd961123c56756b), [`695a621`](https://github.com/mastra-ai/mastra/commit/695a621528bdabeb87f83c2277cf2bb084c7f2b4), [`9e1911d`](https://github.com/mastra-ai/mastra/commit/9e1911db2b4db85e0e768c3f15e0d61e319869f6), [`ac3cc23`](https://github.com/mastra-ai/mastra/commit/ac3cc2397d1966bc0fc2736a223abc449d3c7719), [`c456e01`](https://github.com/mastra-ai/mastra/commit/c456e0149e3c176afcefdbd9bb1d2c5917723725), [`ebac155`](https://github.com/mastra-ai/mastra/commit/ebac15564a590117db7078233f927a7e28a85106), [`a86f4df`](https://github.com/mastra-ai/mastra/commit/a86f4df0407311e0d2ea49b9a541f0938810d6a9), [`dd1c38d`](https://github.com/mastra-ai/mastra/commit/dd1c38d1b75f1b695c27b40d8d9d6ed00d5e0f6f), [`5948e6a`](https://github.com/mastra-ai/mastra/commit/5948e6a5146c83666ba3f294b2be576c82a513fb), [`5b2ff46`](https://github.com/mastra-ai/mastra/commit/5b2ff4651df70c146523a7fca773f8eb0a2272f8), [`edb07e4`](https://github.com/mastra-ai/mastra/commit/edb07e49283e0c28bd094a60e03439bf6ecf0221), [`e0941c3`](https://github.com/mastra-ai/mastra/commit/e0941c3d7fc75695d5d258e7008fd5d6e650800c), [`db41688`](https://github.com/mastra-ai/mastra/commit/db4168806d007417e2e60b4f68656dca4e5f40c9), [`2b459f4`](https://github.com/mastra-ai/mastra/commit/2b459f466fd91688eeb2a44801dc23f7f8a887ab), [`798d0c7`](https://github.com/mastra-ai/mastra/commit/798d0c740232653b1d754870e6b43a55c364ffe2), [`8940859`](https://github.com/mastra-ai/mastra/commit/89408593658199b4ad67f7b65e888f344e64a442), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`ab035c2`](https://github.com/mastra-ai/mastra/commit/ab035c2ef6d8cc7bb25f06f1a38508bd9e6f126b), [`e629310`](https://github.com/mastra-ai/mastra/commit/e629310f1a73fa236d49ec7a1d1cceb6229dc7cc), [`5ca599d`](https://github.com/mastra-ai/mastra/commit/5ca599d0bb59a1595f19f58473fcd67cc71cef58), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`4c6b492`](https://github.com/mastra-ai/mastra/commit/4c6b492c4dd591c6a592520c1f6855d6e936d71f), [`bff1145`](https://github.com/mastra-ai/mastra/commit/bff114556b3cbadad9b2768488708f8ad0e91475), [`dff01d8`](https://github.com/mastra-ai/mastra/commit/dff01d81ce1f4e4087cfac20fa868e6db138dd14), [`ffe84d5`](https://github.com/mastra-ai/mastra/commit/ffe84d54f3b0f85167fe977efd027dba027eb998), [`5c8ca24`](https://github.com/mastra-ai/mastra/commit/5c8ca247094e0cc2cdbd7137822fb47241f86e77), [`9d819d5`](https://github.com/mastra-ai/mastra/commit/9d819d54b61481639f4008e4694791bddf187edd), [`24b76d8`](https://github.com/mastra-ai/mastra/commit/24b76d8e17656269c8ed09a0c038adb9cc2ae95a), [`31d13d5`](https://github.com/mastra-ai/mastra/commit/31d13d5fdc2e2380e2e3ee3ec9fb29d2a00f265d), [`e191844`](https://github.com/mastra-ai/mastra/commit/e1918444ca3f80e82feef1dad506cd4ec6e2875f), [`243a823`](https://github.com/mastra-ai/mastra/commit/243a8239c5906f5c94e4f78b54676793f7510ae3), [`22553f1`](https://github.com/mastra-ai/mastra/commit/22553f11c63ee5e966a9c034a349822249584691), [`4c62166`](https://github.com/mastra-ai/mastra/commit/4c621669f4a29b1f443eca3ba70b814afa286266), [`7d56d92`](https://github.com/mastra-ai/mastra/commit/7d56d9213886e8353956d7d40df10045fd12b299), [`81dc110`](https://github.com/mastra-ai/mastra/commit/81dc11008d147cf5bdc8996ead1aa61dbdebb6fc), [`7bcbf10`](https://github.com/mastra-ai/mastra/commit/7bcbf10133516e03df964b941f9a34e9e4ab4177), [`029540c`](https://github.com/mastra-ai/mastra/commit/029540ca1e582fc2dd8d288ecd4a9b0f31a954ef), [`7237163`](https://github.com/mastra-ai/mastra/commit/72371635dbf96a87df4b073cc48fc655afbdce3d), [`2500740`](https://github.com/mastra-ai/mastra/commit/2500740ea23da067d6e50ec71c625ab3ce275e64), [`4353600`](https://github.com/mastra-ai/mastra/commit/43536005a65988a8eede236f69122e7f5a284ba2), [`653e65a`](https://github.com/mastra-ai/mastra/commit/653e65ae1f9502c2958a32f47a5a2df11e612a92), [`873ecbb`](https://github.com/mastra-ai/mastra/commit/873ecbb517586aa17d2f1e99283755b3ebb2863f), [`6986fb0`](https://github.com/mastra-ai/mastra/commit/6986fb064f5db6ecc24aa655e1d26529087b43b3), [`4f9bbe5`](https://github.com/mastra-ai/mastra/commit/4f9bbe5968f42c86f4930b8193de3c3c17e5bd36), [`efe406a`](https://github.com/mastra-ai/mastra/commit/efe406a1353c24993280ebc2ed61dd9f65b84b26), [`fd3d338`](https://github.com/mastra-ai/mastra/commit/fd3d338a2c362174ed5b383f1f011ad9fb0302aa), [`053e979`](https://github.com/mastra-ai/mastra/commit/053e9793b28e970086b0507f7f3b76ea32c1e838), [`02e51fe`](https://github.com/mastra-ai/mastra/commit/02e51feddb3d4155cfbcc42624fd0d0970d032c0), [`71c8d6c`](https://github.com/mastra-ai/mastra/commit/71c8d6c161253207b2b9588bdadb7eed604f7253), [`7aedb74`](https://github.com/mastra-ai/mastra/commit/7aedb74883adf66af38e270e4068fd42e7a37036), [`119e5c6`](https://github.com/mastra-ai/mastra/commit/119e5c65008f3e5cfca954eefc2eb85e3bf40da4), [`c6fd6fe`](https://github.com/mastra-ai/mastra/commit/c6fd6fedd09e9cf8004b03a80925f5e94826ad7e), [`8f02d80`](https://github.com/mastra-ai/mastra/commit/8f02d800777397e4b45d7f1ad041988a8b0c6630), [`fdac646`](https://github.com/mastra-ai/mastra/commit/fdac646033a0930a1a4e00d13aa64c40bb7f1e02), [`6179a9b`](https://github.com/mastra-ai/mastra/commit/6179a9ba36ffac326de3cc3c43cdc8028d37c251), [`8f3fa3a`](https://github.com/mastra-ai/mastra/commit/8f3fa3a652bb77da092f913ec51ae46e3a7e27dc), [`d07b568`](https://github.com/mastra-ai/mastra/commit/d07b5687819ea8cb1dffa776d0c1765faf4aa1ae), [`e26dc9c`](https://github.com/mastra-ai/mastra/commit/e26dc9c3ccfec54ae3dc3e2b2589f741f9ae60a6), [`55edf73`](https://github.com/mastra-ai/mastra/commit/55edf7302149d6c964fbb7908b43babfc2b52145), [`c30400a`](https://github.com/mastra-ai/mastra/commit/c30400a49b994b1b97256fe785eb6c906fc2b232), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`00f4921`](https://github.com/mastra-ai/mastra/commit/00f4921dd2c91a1e5446799599ef7116a8214a1a), [`1a46a56`](https://github.com/mastra-ai/mastra/commit/1a46a566f45a3fcbadc1cf36bf86d351f264bfa3), [`ca8041c`](https://github.com/mastra-ai/mastra/commit/ca8041cce0379fda22ed293a565bcb5b6ddca68a), [`b5dc973`](https://github.com/mastra-ai/mastra/commit/b5dc9733a5158850298dfb103acb3babdba8a318), [`7051bf3`](https://github.com/mastra-ai/mastra/commit/7051bf38b3b122a069008f861f7bfc004a6d9f6e), [`a8f1494`](https://github.com/mastra-ai/mastra/commit/a8f1494f4bbdc2770bcf327d4c7d869e332183f1), [`d7aad50`](https://github.com/mastra-ai/mastra/commit/d7aad501ce61646b76b4b511e558ac4eea9884d0), [`4f0b3c6`](https://github.com/mastra-ai/mastra/commit/4f0b3c66f196c06448487f680ccbb614d281e2f7), [`c61fac3`](https://github.com/mastra-ai/mastra/commit/c61fac3add96f0dcce0208c07415279e2537eb62), [`6f14f70`](https://github.com/mastra-ai/mastra/commit/6f14f706ccaaf81b69544b6c1b75ab66a41e5317), [`69e0a87`](https://github.com/mastra-ai/mastra/commit/69e0a878896a2da9494945d86e056a5f8f05b851), [`cd29ad2`](https://github.com/mastra-ai/mastra/commit/cd29ad23a255534e8191f249593849ed29160886), [`bdf4d8c`](https://github.com/mastra-ai/mastra/commit/bdf4d8cdc656d8a2c21d81834bfa3bfa70f56c16), [`854e3da`](https://github.com/mastra-ai/mastra/commit/854e3dad5daac17a91a20986399d3a51f54bf68b), [`ce18d38`](https://github.com/mastra-ai/mastra/commit/ce18d38678c65870350d123955014a8432075fd9), [`3cf540b`](https://github.com/mastra-ai/mastra/commit/3cf540b9fbfea8f4fc8d3a2319a4e6c0b0cbfd52), [`352a5d6`](https://github.com/mastra-ai/mastra/commit/352a5d625cfe09849b21e8f52a24c9f0366759d5), [`1c6ce51`](https://github.com/mastra-ai/mastra/commit/1c6ce51f875915ab57fd36873623013699a2a65d), [`74c4f22`](https://github.com/mastra-ai/mastra/commit/74c4f22ed4c71e72598eacc346ba95cdbc00294f), [`898a972`](https://github.com/mastra-ai/mastra/commit/898a9727d286c2510d6b702dfd367e6aaf5c6b0f), [`0793497`](https://github.com/mastra-ai/mastra/commit/079349753620c40246ffd673e3f9d7d9820beff3), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`2c212e7`](https://github.com/mastra-ai/mastra/commit/2c212e704c90e2db83d4109e62c03f0f6ebd2667), [`a97003a`](https://github.com/mastra-ai/mastra/commit/a97003aa1cf2f4022a41912324a1e77263b326b8), [`66741d1`](https://github.com/mastra-ai/mastra/commit/66741d1a99c4f42cf23a16109939e8348ac6852e), [`ccc141e`](https://github.com/mastra-ai/mastra/commit/ccc141ed27da0abc3a3fc28e9e5128152e8e37f4), [`27c0009`](https://github.com/mastra-ai/mastra/commit/27c0009777a6073d7631b0eb7b481d94e165b5ca), [`01f8878`](https://github.com/mastra-ai/mastra/commit/01f88783de25e4de048c1c8aace43e26373c6ea5), [`dee388d`](https://github.com/mastra-ai/mastra/commit/dee388dde02f2e63c53385ae69252a47ab6825cc), [`5df9cce`](https://github.com/mastra-ai/mastra/commit/5df9cce1a753438413f64c11eeef8f845745c2a8), [`b7e17d3`](https://github.com/mastra-ai/mastra/commit/b7e17d3f5390bb5a71efc112204413656fcdc18d), [`4c77209`](https://github.com/mastra-ai/mastra/commit/4c77209e6c11678808b365d545845918c40045c8), [`a854ede`](https://github.com/mastra-ai/mastra/commit/a854ede62bf5ac0945a624ac48913dd69c73aabf), [`fe3b897`](https://github.com/mastra-ai/mastra/commit/fe3b897c2ccbcd2b10e81b099438c7337feddf89), [`c576fc0`](https://github.com/mastra-ai/mastra/commit/c576fc0b100b2085afded91a37c97a0ea0ec09c7), [`3defc80`](https://github.com/mastra-ai/mastra/commit/3defc80cf2b88a1b7fc1cc4ddcb91e982a614609), [`00123ba`](https://github.com/mastra-ai/mastra/commit/00123ba96dc9e5cd0b110420ebdba56d8f237b25), [`16153fe`](https://github.com/mastra-ai/mastra/commit/16153fe7eb13c99401f48e6ca32707c965ee28b9), [`9f4a683`](https://github.com/mastra-ai/mastra/commit/9f4a6833e88b52574665c028fd5508ad5c2f6004), [`bc94344`](https://github.com/mastra-ai/mastra/commit/bc943444a1342d8a662151b7bce1df7dae32f59c), [`4ca4306`](https://github.com/mastra-ai/mastra/commit/4ca430614daa5fa04730205a302a43bf4accfe9f), [`cccf9c8`](https://github.com/mastra-ai/mastra/commit/cccf9c8b2d2dfc1a5e63919395b83d78c89682a0), [`74e504a`](https://github.com/mastra-ai/mastra/commit/74e504a3b584eafd2f198001c6a113bbec589fd3), [`29c4309`](https://github.com/mastra-ai/mastra/commit/29c4309f818b24304c041bcb4a8f19b5f13f6b62), [`16785ce`](https://github.com/mastra-ai/mastra/commit/16785ced928f6f22638f4488cf8a125d99211799), [`57d157f`](https://github.com/mastra-ai/mastra/commit/57d157f0b163a95c3e6c9eae31bdb11d1bfc64f9), [`61a5705`](https://github.com/mastra-ai/mastra/commit/61a570551278b6743e64243b3ce7d73de915ca8a), [`903f67d`](https://github.com/mastra-ai/mastra/commit/903f67d184504a273893818c02b961f5423a79ad), [`3f3fc30`](https://github.com/mastra-ai/mastra/commit/3f3fc3096f24c4a26cffeecfe73085928f72aa63), [`d827d08`](https://github.com/mastra-ai/mastra/commit/d827d0808ffe1f3553a84e975806cc989b9735dd), [`e33fdbd`](https://github.com/mastra-ai/mastra/commit/e33fdbd07b33920d81e823122331b0c0bee0bb59), [`4524734`](https://github.com/mastra-ai/mastra/commit/45247343e384717a7c8404296275c56201d6470f), [`2a90c55`](https://github.com/mastra-ai/mastra/commit/2a90c55a86a9210697d5adaab5ee94584b079adc), [`2a53598`](https://github.com/mastra-ai/mastra/commit/2a53598c6d8cfeb904a7fc74e57e526d751c8fa6), [`81b6a8f`](https://github.com/mastra-ai/mastra/commit/81b6a8ff79f49a7549d15d66624ac1a0b8f5f971), [`d90ea65`](https://github.com/mastra-ai/mastra/commit/d90ea6536f7aa51c6545a4e9215b55858e98e16d), [`db70a48`](https://github.com/mastra-ai/mastra/commit/db70a48aeeeeb8e5f92007e8ede52c364ce15287), [`261473a`](https://github.com/mastra-ai/mastra/commit/261473ac637e633064a22076671e2e02b002214d), [`eb09742`](https://github.com/mastra-ai/mastra/commit/eb09742197f66c4c38154c3beec78313e69760b2), [`de8239b`](https://github.com/mastra-ai/mastra/commit/de8239bdcb1d8c0cfa06da21f1569912a66bbc8a), [`e4d366a`](https://github.com/mastra-ai/mastra/commit/e4d366aeb500371dd4210d6aa8361a4c21d87034), [`23c10a1`](https://github.com/mastra-ai/mastra/commit/23c10a1efdd9a693c405511ab2dc8a1236603162), [`b5e6cd7`](https://github.com/mastra-ai/mastra/commit/b5e6cd77fc8c8e64e0494c1d06cee3d84e795d1e), [`d171e55`](https://github.com/mastra-ai/mastra/commit/d171e559ead9f52ec728d424844c8f7b164c4510), [`f0fdc14`](https://github.com/mastra-ai/mastra/commit/f0fdc14ee233d619266b3d2bbdeea7d25cfc6d13), [`a4f010b`](https://github.com/mastra-ai/mastra/commit/a4f010b22e4355a5fdee70a1fe0f6e4a692cc29e), [`c7cd3c7`](https://github.com/mastra-ai/mastra/commit/c7cd3c7a187d7aaf79e2ca139de328bf609a14b4), [`db18bc9`](https://github.com/mastra-ai/mastra/commit/db18bc9c3825e2c1a0ad9a183cc9935f6691bfa1), [`96d35f6`](https://github.com/mastra-ai/mastra/commit/96d35f61376bc2b1bf148648a2c1985bd51bef55), [`68ec97d`](https://github.com/mastra-ai/mastra/commit/68ec97d4c07c6393fcf95c2481fc5d73da99f8c8), [`9b37b56`](https://github.com/mastra-ai/mastra/commit/9b37b565e1f2a76c24f728945cc740c2b09be9da), [`01b20fe`](https://github.com/mastra-ai/mastra/commit/01b20fefb7c67c2b7d79417598ef4e60256d1225), [`0dbf199`](https://github.com/mastra-ai/mastra/commit/0dbf199110f22192ce5c95b1c8148d4872b4d119), [`5cbe88a`](https://github.com/mastra-ai/mastra/commit/5cbe88aefbd9f933bca669fd371ea36bf939ac6d), [`41a23c3`](https://github.com/mastra-ai/mastra/commit/41a23c32f9877d71810f37e24930515df2ff7a0f), [`a1bd7b8`](https://github.com/mastra-ai/mastra/commit/a1bd7b8571db16b94eb01588f451a74758c96d65), [`d78b38d`](https://github.com/mastra-ai/mastra/commit/d78b38d898fce285260d3bbb4befade54331617f), [`a0a5b4b`](https://github.com/mastra-ai/mastra/commit/a0a5b4bbebe6c701ebbadf744873aa0d5ca01371), [`ce0a73a`](https://github.com/mastra-ai/mastra/commit/ce0a73abeaa75b10ca38f9e40a255a645d50ebfb), [`5d171ad`](https://github.com/mastra-ai/mastra/commit/5d171ad9ef340387276b77c2bb3e83e83332d729), [`0633100`](https://github.com/mastra-ai/mastra/commit/0633100a911ad22f5256471bdf753da21c104742), [`3759cb0`](https://github.com/mastra-ai/mastra/commit/3759cb064935b5f74c65ac2f52a1145f7352899d), [`929f69c`](https://github.com/mastra-ai/mastra/commit/929f69c3436fa20dd0f0e2f7ebe8270bd82a1529), [`c710c16`](https://github.com/mastra-ai/mastra/commit/c710c1652dccfdc4111c8412bca7a6bb1d48b441), [`10c2735`](https://github.com/mastra-ai/mastra/commit/10c27355edfdad1ee2b826b897df74125eb81fb8), [`354ad0b`](https://github.com/mastra-ai/mastra/commit/354ad0b7b1b8183ac567f236a884fc7ede6d7138), [`cfae733`](https://github.com/mastra-ai/mastra/commit/cfae73394f4920635e6c919c8e95ff9a0788e2e5), [`e3dfda7`](https://github.com/mastra-ai/mastra/commit/e3dfda7b11bf3b8c4bb55637028befb5f387fc74), [`69ea758`](https://github.com/mastra-ai/mastra/commit/69ea758358edd7117f191c2e69c8bb5fc79e7a1a), [`651e772`](https://github.com/mastra-ai/mastra/commit/651e772eb1475fb13e126d3fcc01751297a88214), [`a02e542`](https://github.com/mastra-ai/mastra/commit/a02e542d23179bad250b044b17ff023caa61739f), [`f03ae60`](https://github.com/mastra-ai/mastra/commit/f03ae60500fe350c9d828621006cdafe1975fdd8), [`6b3ba91`](https://github.com/mastra-ai/mastra/commit/6b3ba91494cc10394df96782f349a4f7b1e152cc), [`a372c64`](https://github.com/mastra-ai/mastra/commit/a372c640ad1fd12e8f0613cebdc682fc156b4d95), [`993ad98`](https://github.com/mastra-ai/mastra/commit/993ad98d7ad3bebda9ecef5fec5c94349a0d04bc), [`676ccc7`](https://github.com/mastra-ai/mastra/commit/676ccc7fe92468d2d45d39c31a87825c89fd1ea0), [`3ff2c17`](https://github.com/mastra-ai/mastra/commit/3ff2c17a58e312fad5ea37377262c12d92ca0908), [`d1e74a0`](https://github.com/mastra-ai/mastra/commit/d1e74a0a293866dece31022047f5dbab65a304d0), [`844ea5d`](https://github.com/mastra-ai/mastra/commit/844ea5dc0c248961e7bf73629ae7dcff503e853c), [`5627a8c`](https://github.com/mastra-ai/mastra/commit/5627a8c6dc11fe3711b3fa7a6ffd6eb34100a306), [`398fde3`](https://github.com/mastra-ai/mastra/commit/398fde3f39e707cda79372cdae8f9870e3b57c8d), [`c10398d`](https://github.com/mastra-ai/mastra/commit/c10398d5b88f1d4af556f4267ff06f1d11e89179), [`f0f8f12`](https://github.com/mastra-ai/mastra/commit/f0f8f125c308f2d0fd36942ef652fd852df7522f), [`b61b93f`](https://github.com/mastra-ai/mastra/commit/b61b93f9e058b11dd2eec169853175d31dbdd567), [`bae33d9`](https://github.com/mastra-ai/mastra/commit/bae33d91a63fbb64d1e80519e1fc1acaed1e9013), [`39e7869`](https://github.com/mastra-ai/mastra/commit/39e7869bc7d0ee391077ce291474d8a84eedccff), [`0d7618b`](https://github.com/mastra-ai/mastra/commit/0d7618bc650bf2800934b243eca5648f4aeed9c2), [`7b763e5`](https://github.com/mastra-ai/mastra/commit/7b763e52fc3eaf699c2a99f2adf418dd46e4e9a5), [`251df45`](https://github.com/mastra-ai/mastra/commit/251df4531407dfa46d805feb40ff3fb49769f455), [`d36cfbb`](https://github.com/mastra-ai/mastra/commit/d36cfbbb6565ba5f827883cc9bb648eb14befdc1), [`8846867`](https://github.com/mastra-ai/mastra/commit/8846867ffa9a3746767618e314bebac08eb77d87), [`1924cf0`](https://github.com/mastra-ai/mastra/commit/1924cf06816e5e4d4d5333065ec0f4bb02a97799), [`c0b731f`](https://github.com/mastra-ai/mastra/commit/c0b731fb27d712dc8582e846df5c0332a6a0c5ba), [`5761926`](https://github.com/mastra-ai/mastra/commit/57619260c4a2cdd598763abbacd90de594c6bc76), [`c2b9547`](https://github.com/mastra-ai/mastra/commit/c2b9547bf435f56339f23625a743b2147ab1c7a6), [`3697853`](https://github.com/mastra-ai/mastra/commit/3697853deeb72017d90e0f38a93c1e29221aeca0), [`c900fdd`](https://github.com/mastra-ai/mastra/commit/c900fdd504c41348efdffb205cfe80d48c38fa33), [`b2e45ec`](https://github.com/mastra-ai/mastra/commit/b2e45eca727a8db01a81ba93f1a5219c7183c839), [`5d7000f`](https://github.com/mastra-ai/mastra/commit/5d7000f757cd65ea9dc5b05e662fd83dfd44e932), [`43ca8f2`](https://github.com/mastra-ai/mastra/commit/43ca8f2c7334851cc7b4d3d2f037d8784bfbdd5f), [`d6d49f7`](https://github.com/mastra-ai/mastra/commit/d6d49f7b8714fa19a52ff9c7cf7fb7e73751901e), [`00c2387`](https://github.com/mastra-ai/mastra/commit/00c2387f5f04a365316f851e58666ac43f8c4edf), [`a534e95`](https://github.com/mastra-ai/mastra/commit/a534e9591f83b3cc1ebff99c67edf4cda7bf81d3), [`9d0e7fe`](https://github.com/mastra-ai/mastra/commit/9d0e7feca8ed98de959f53476ee1456073673348), [`53d927c`](https://github.com/mastra-ai/mastra/commit/53d927cc6f03bff33655b7e2b788da445a08731d), [`ad6250d`](https://github.com/mastra-ai/mastra/commit/ad6250dbdaad927e29f74a27b83f6c468b50a705), [`604a79f`](https://github.com/mastra-ai/mastra/commit/604a79fecf276e26a54a3fe01bb94e65315d2e0e), [`42a42cf`](https://github.com/mastra-ai/mastra/commit/42a42cf3132b9786feecbb8c13c583dce5b0e198), [`3f2faf2`](https://github.com/mastra-ai/mastra/commit/3f2faf2e2d685d6c053cc5af1bf9fedf267b2ce5), [`22f64bc`](https://github.com/mastra-ai/mastra/commit/22f64bc1d37149480b58bf2fefe35b79a1e3e7d5), [`847c212`](https://github.com/mastra-ai/mastra/commit/847c212caba7df0d6f2fc756b494ac3c75c3720d), [`3a73998`](https://github.com/mastra-ai/mastra/commit/3a73998fa4ebeb7f3dc9301afe78095fc63e7999), [`83d5942`](https://github.com/mastra-ai/mastra/commit/83d5942669ce7bba4a6ca4fd4da697a10eb5ebdc), [`58e3931`](https://github.com/mastra-ai/mastra/commit/58e3931af9baa5921688566210f00fb0c10479fa), [`ae08bf0`](https://github.com/mastra-ai/mastra/commit/ae08bf0ebc6a4e4da992b711c4a389c32ba84cf4), [`0bed332`](https://github.com/mastra-ai/mastra/commit/0bed332843f627202c6520eaf671771313cd20f3), [`887f0b4`](https://github.com/mastra-ai/mastra/commit/887f0b4746cdbd7cb7d6b17ac9f82aeb58037ea5), [`2562143`](https://github.com/mastra-ai/mastra/commit/256214336b4faa78646c9c1776612393790d8784), [`b7959e6`](https://github.com/mastra-ai/mastra/commit/b7959e6e25a46b480f9ea2217c4c6c588c423791), [`a7ce182`](https://github.com/mastra-ai/mastra/commit/a7ce1822a8785ce45d62dd5c911af465e144f7d7), [`bda6370`](https://github.com/mastra-ai/mastra/commit/bda637009360649aaf579919e7873e33553c273e), [`d7acd8e`](https://github.com/mastra-ai/mastra/commit/d7acd8e987b5d7eff4fd98b0906c17c06a2e83d5), [`c7f1f7d`](https://github.com/mastra-ai/mastra/commit/c7f1f7d24f61f247f018cc2d1f33bf63212959a7), [`0bddc6d`](https://github.com/mastra-ai/mastra/commit/0bddc6d8dbd6f6008c0cba2e4960a2da75a55af1), [`5947fcd`](https://github.com/mastra-ai/mastra/commit/5947fcdd425531f29f9422026d466c2ee3113c93), [`4aa55b3`](https://github.com/mastra-ai/mastra/commit/4aa55b383cf06043943359ea316572fd969861a7), [`21735a7`](https://github.com/mastra-ai/mastra/commit/21735a7ef306963554a69a89b44f06c3bcd85141), [`735d8c1`](https://github.com/mastra-ai/mastra/commit/735d8c1c0d19fbc09e6f8b66cf41bc7655993838), [`7907fd1`](https://github.com/mastra-ai/mastra/commit/7907fd1c5059813b7b870b81ca71041dc807331b), [`acf322e`](https://github.com/mastra-ai/mastra/commit/acf322e0f1fd0189684cf529d91c694bea918a45), [`2ca67cc`](https://github.com/mastra-ai/mastra/commit/2ca67cc3bb1f6a617353fdcab197d9efebe60d6f), [`b339816`](https://github.com/mastra-ai/mastra/commit/b339816df0984d0243d944ac2655d6ba5f809cde), [`e16d553`](https://github.com/mastra-ai/mastra/commit/e16d55338403c7553531cc568125c63d53653dff), [`6f941c4`](https://github.com/mastra-ai/mastra/commit/6f941c438ca5f578619788acc7608fc2e23bd176), [`c942802`](https://github.com/mastra-ai/mastra/commit/c942802a477a925b01859a7b8688d4355715caaa), [`4f0331a`](https://github.com/mastra-ai/mastra/commit/4f0331a79bf6eb5ee598a5086e55de4b5a0ada03), [`a0c8c1b`](https://github.com/mastra-ai/mastra/commit/a0c8c1b87d4fee252aebda73e8637fbe01d761c9), [`1d877b8`](https://github.com/mastra-ai/mastra/commit/1d877b8d7b536a251c1a7a18db7ddcf4f68d6f8b), [`cc34739`](https://github.com/mastra-ai/mastra/commit/cc34739c34b6266a91bea561119240a7acf47887), [`c218bd3`](https://github.com/mastra-ai/mastra/commit/c218bd3759e32423735b04843a09404572631014), [`9e67002`](https://github.com/mastra-ai/mastra/commit/9e67002b52c9be19936c420a489dbee9c5fd6a78), [`2c4438b`](https://github.com/mastra-ai/mastra/commit/2c4438b87817ab7eed818c7990fef010475af1a3), [`35edc49`](https://github.com/mastra-ai/mastra/commit/35edc49ac0556db609189641d6341e76771b81fc), [`4d59f58`](https://github.com/mastra-ai/mastra/commit/4d59f58de2d90d6e2810a19d4518e38ddddb9038), [`ef11a61`](https://github.com/mastra-ai/mastra/commit/ef11a61920fa0ed08a5b7ceedd192875af119749), [`2b8893c`](https://github.com/mastra-ai/mastra/commit/2b8893cb108ef9acb72ee7835cd625610d2c1a4a), [`8e5c75b`](https://github.com/mastra-ai/mastra/commit/8e5c75bdb1d08a42d45309a4c72def4b6890230f), [`e1bb9c9`](https://github.com/mastra-ai/mastra/commit/e1bb9c94b4eb68b019ae275981be3feb769b5365), [`351a11f`](https://github.com/mastra-ai/mastra/commit/351a11fcaf2ed1008977fa9b9a489fc422e51cd4), [`8a73529`](https://github.com/mastra-ai/mastra/commit/8a73529ca01187f604b1f3019d0a725ac63ae55f), [`e59e0d3`](https://github.com/mastra-ai/mastra/commit/e59e0d32afb5fcf2c9f3c00c8f81f6c21d3a63fa), [`4fba91b`](https://github.com/mastra-ai/mastra/commit/4fba91bec7c95911dc28e369437596b152b04cd0), [`465ac05`](https://github.com/mastra-ai/mastra/commit/465ac0526a91d175542091c675181f1a96c98c46), [`fa8409b`](https://github.com/mastra-ai/mastra/commit/fa8409bc39cfd8ba6643b9db5269b90b22e2a2f7), [`8a000da`](https://github.com/mastra-ai/mastra/commit/8a000da0c09c679a2312f6b3aa05b2ca78ca7393), [`e7266a2`](https://github.com/mastra-ai/mastra/commit/e7266a278db02035c97a5e9cd9d1669a6b7a535d), [`173c535`](https://github.com/mastra-ai/mastra/commit/173c535c0645b0da404fe09f003778f0b0d4e019), [`12b0cc4`](https://github.com/mastra-ai/mastra/commit/12b0cc4077d886b1a552637dedb70a7ade93528c), [`3bf6c5f`](https://github.com/mastra-ai/mastra/commit/3bf6c5f104c25226cd84e0c77f9dec15f2cac2db)]:
855
+ - @mastra/core@0.0.0-remove-ai-peer-dep-from-evals-20260105220639
856
+
857
+ ## 1.0.0-beta.19
858
+
859
+ ### Patch Changes
860
+
861
+ - Updated dependencies [[`e54953e`](https://github.com/mastra-ai/mastra/commit/e54953ed8ce1b28c0d62a19950163039af7834b4), [`7d56d92`](https://github.com/mastra-ai/mastra/commit/7d56d9213886e8353956d7d40df10045fd12b299), [`fdac646`](https://github.com/mastra-ai/mastra/commit/fdac646033a0930a1a4e00d13aa64c40bb7f1e02), [`d07b568`](https://github.com/mastra-ai/mastra/commit/d07b5687819ea8cb1dffa776d0c1765faf4aa1ae), [`68ec97d`](https://github.com/mastra-ai/mastra/commit/68ec97d4c07c6393fcf95c2481fc5d73da99f8c8), [`4aa55b3`](https://github.com/mastra-ai/mastra/commit/4aa55b383cf06043943359ea316572fd969861a7)]:
862
+ - @mastra/core@1.0.0-beta.19
863
+
864
+ ## 1.0.0-beta.18
865
+
866
+ ### Patch Changes
867
+
868
+ - Updated dependencies [[`5947fcd`](https://github.com/mastra-ai/mastra/commit/5947fcdd425531f29f9422026d466c2ee3113c93)]:
869
+ - @mastra/core@1.0.0-beta.18
870
+
871
+ ## 1.0.0-beta.17
872
+
873
+ ### Patch Changes
874
+
875
+ - Updated dependencies [[`b5dc973`](https://github.com/mastra-ai/mastra/commit/b5dc9733a5158850298dfb103acb3babdba8a318)]:
876
+ - @mastra/core@1.0.0-beta.17
877
+
878
+ ## 1.0.0-beta.16
879
+
880
+ ### Patch Changes
881
+
882
+ - Fix workflow observability view broken by invalid entityType parameter ([#11427](https://github.com/mastra-ai/mastra/pull/11427))
883
+
884
+ The UI workflow observability view was failing with a Zod validation error when trying to filter traces by workflow. The UI was sending `entityType=workflow`, but the backend's `EntityType` enum only accepts `workflow_run`.
885
+
886
+ **Root Cause**: The legacy value transformation was happening in the handler (after validation), but Zod validation occurred earlier in the request pipeline, rejecting the request before it could be transformed.
887
+
888
+ **Solution**:
889
+ - Added `z.preprocess()` to the query schema to transform `workflow` → `workflow_run` before validation
890
+ - Kept handler transformation for defense in depth
891
+ - Updated UI to use `EntityType.WORKFLOW_RUN` enum value for type safety
892
+
893
+ This maintains backward compatibility with legacy clients while fixing the validation error.
894
+
895
+ Fixes #11412
896
+
897
+ - Add storage composition to MastraStorage ([#11401](https://github.com/mastra-ai/mastra/pull/11401))
898
+
899
+ `MastraStorage` can now compose storage domains from different adapters. Use it when you need different databases for different purposes - for example, PostgreSQL for memory and workflows, but a different database for observability.
900
+
901
+ ```typescript
902
+ import { MastraStorage } from '@mastra/core/storage';
903
+ import { MemoryPG, WorkflowsPG, ScoresPG } from '@mastra/pg';
904
+ import { MemoryLibSQL } from '@mastra/libsql';
905
+
906
+ // Compose domains from different stores
907
+ const storage = new MastraStorage({
908
+ id: 'composite',
909
+ domains: {
910
+ memory: new MemoryLibSQL({ url: 'file:./local.db' }),
911
+ workflows: new WorkflowsPG({ connectionString: process.env.DATABASE_URL }),
912
+ scores: new ScoresPG({ connectionString: process.env.DATABASE_URL }),
913
+ },
914
+ });
915
+ ```
916
+
917
+ **Breaking changes:**
918
+ - `storage.supports` property no longer exists
919
+ - `StorageSupports` type is no longer exported from `@mastra/core/storage`
920
+
921
+ All stores now support the same features. For domain availability, use `getStore()`:
922
+
923
+ ```typescript
924
+ const store = await storage.getStore('memory');
925
+ if (store) {
926
+ // domain is available
927
+ }
928
+ ```
929
+
930
+ - Updated dependencies [[`3d93a15`](https://github.com/mastra-ai/mastra/commit/3d93a15796b158c617461c8b98bede476ebb43e2), [`efe406a`](https://github.com/mastra-ai/mastra/commit/efe406a1353c24993280ebc2ed61dd9f65b84b26), [`119e5c6`](https://github.com/mastra-ai/mastra/commit/119e5c65008f3e5cfca954eefc2eb85e3bf40da4), [`74e504a`](https://github.com/mastra-ai/mastra/commit/74e504a3b584eafd2f198001c6a113bbec589fd3), [`e33fdbd`](https://github.com/mastra-ai/mastra/commit/e33fdbd07b33920d81e823122331b0c0bee0bb59), [`929f69c`](https://github.com/mastra-ai/mastra/commit/929f69c3436fa20dd0f0e2f7ebe8270bd82a1529), [`8a73529`](https://github.com/mastra-ai/mastra/commit/8a73529ca01187f604b1f3019d0a725ac63ae55f)]:
931
+ - @mastra/core@1.0.0-beta.16
932
+
933
+ ## 1.0.0-beta.15
934
+
935
+ ### Minor Changes
936
+
937
+ - Unified observability schema with entity-based span identification ([#11132](https://github.com/mastra-ai/mastra/pull/11132))
938
+
939
+ ## What changed
940
+
941
+ Spans now use a unified identification model with `entityId`, `entityType`, and `entityName` instead of separate `agentId`, `toolId`, `workflowId` fields.
942
+
943
+ **Before:**
944
+
945
+ ```typescript
946
+ // Old span structure
947
+ span.agentId; // 'my-agent'
948
+ span.toolId; // undefined
949
+ span.workflowId; // undefined
950
+ ```
951
+
952
+ **After:**
953
+
954
+ ```typescript
955
+ // New span structure
956
+ span.entityType; // EntityType.AGENT
957
+ span.entityId; // 'my-agent'
958
+ span.entityName; // 'My Agent'
959
+ ```
960
+
961
+ ## New `listTraces()` API
962
+
963
+ Query traces with filtering, pagination, and sorting:
964
+
965
+ ```typescript
966
+ const { spans, pagination } = await storage.listTraces({
967
+ filters: {
968
+ entityType: EntityType.AGENT,
969
+ entityId: 'my-agent',
970
+ userId: 'user-123',
971
+ environment: 'production',
972
+ status: TraceStatus.SUCCESS,
973
+ startedAt: { start: new Date('2024-01-01'), end: new Date('2024-01-31') },
974
+ },
975
+ pagination: { page: 0, perPage: 50 },
976
+ orderBy: { field: 'startedAt', direction: 'DESC' },
977
+ });
978
+ ```
979
+
980
+ **Available filters:** date ranges (`startedAt`, `endedAt`), entity (`entityType`, `entityId`, `entityName`), identity (`userId`, `organizationId`), correlation IDs (`runId`, `sessionId`, `threadId`), deployment (`environment`, `source`, `serviceName`), `tags`, `metadata`, and `status`.
981
+
982
+ ## New retrieval methods
983
+ - `getSpan({ traceId, spanId })` - Get a single span
984
+ - `getRootSpan({ traceId })` - Get the root span of a trace
985
+ - `getTrace({ traceId })` - Get all spans for a trace
986
+
987
+ ## Backward compatibility
988
+
989
+ The legacy `getTraces()` method continues to work. When you pass `name: "agent run: my-agent"`, it automatically transforms to `entityId: "my-agent", entityType: AGENT`.
990
+
991
+ ## Migration
992
+
993
+ **Automatic:** SQL-based stores (PostgreSQL, LibSQL, MSSQL) automatically add new columns to existing `spans` tables on initialization. Existing data is preserved with new columns set to `NULL`.
994
+
995
+ **No action required:** Your existing code continues to work. Adopt the new fields and `listTraces()` API at your convenience.
996
+
997
+ ### Patch Changes
998
+
999
+ - Refactor storage architecture to use domain-specific stores via `getStore()` pattern ([#11361](https://github.com/mastra-ai/mastra/pull/11361))
1000
+
1001
+ ### Summary
1002
+
1003
+ This release introduces a new storage architecture that replaces passthrough methods on `MastraStorage` with domain-specific storage interfaces accessed via `getStore()`. This change reduces code duplication across storage adapters and provides a cleaner, more modular API.
1004
+
1005
+ ### Migration Guide
1006
+
1007
+ All direct method calls on storage instances should be updated to use `getStore()`:
1008
+
1009
+ ```typescript
1010
+ // Before
1011
+ const thread = await storage.getThreadById({ threadId });
1012
+ await storage.persistWorkflowSnapshot({ workflowName, runId, snapshot });
1013
+ await storage.createSpan(span);
1014
+
1015
+ // After
1016
+ const memory = await storage.getStore('memory');
1017
+ const thread = await memory?.getThreadById({ threadId });
1018
+
1019
+ const workflows = await storage.getStore('workflows');
1020
+ await workflows?.persistWorkflowSnapshot({ workflowName, runId, snapshot });
1021
+
1022
+ const observability = await storage.getStore('observability');
1023
+ await observability?.createSpan(span);
1024
+ ```
1025
+
1026
+ ### Available Domains
1027
+ - **`memory`**: Thread and message operations (`getThreadById`, `saveThread`, `saveMessages`, etc.)
1028
+ - **`workflows`**: Workflow state persistence (`persistWorkflowSnapshot`, `loadWorkflowSnapshot`, `getWorkflowRunById`, etc.)
1029
+ - **`scores`**: Evaluation scores (`saveScore`, `listScoresByScorerId`, etc.)
1030
+ - **`observability`**: Tracing and spans (`createSpan`, `updateSpan`, `getTrace`, etc.)
1031
+ - **`agents`**: Stored agent configurations (`createAgent`, `getAgentById`, `listAgents`, etc.)
1032
+
1033
+ ### Breaking Changes
1034
+ - Passthrough methods have been removed from `MastraStorage` base class
1035
+ - All storage adapters now require accessing domains via `getStore()`
1036
+ - The `stores` property on storage instances is now the canonical way to access domain storage
1037
+
1038
+ ### Internal Changes
1039
+ - Each storage adapter now initializes domain-specific stores in its constructor
1040
+ - Domain stores share database connections and handle their own table initialization
1041
+
1042
+ - Add `/api/system/packages` endpoint that returns installed Mastra packages and versions from the dev environment ([#11211](https://github.com/mastra-ai/mastra/pull/11211))
1043
+
1044
+ - Add `perStep` option to workflow run methods, allowing a workflow to run just a step instead of all the workflow steps ([#11276](https://github.com/mastra-ai/mastra/pull/11276))
1045
+
1046
+ - Fixed voice transcription endpoint ([#11348](https://github.com/mastra-ai/mastra/pull/11348))
1047
+
1048
+ The voice transcription endpoint (`/api/agents/:agentId/voice/listen`) now correctly handles multipart/form-data requests for audio uploads rather than only parsing JSON request bodies.
1049
+
1050
+ Both Express and Hono adapters now parse multipart/form-data bodies and handle JSON-encoded form fields.
1051
+
1052
+ **Breaking change:** The server schema field for the transcription endpoint was renamed from `audioData` to `audio` to match the client SDK. If you are making direct API calls to the transcription endpoint (not using the SDK), you will need to update your request body to use `audio` instead of `audioData`.
1053
+
1054
+ - Updated dependencies [[`33a4d2e`](https://github.com/mastra-ai/mastra/commit/33a4d2e4ed8af51f69256232f00c34d6b6b51d48), [`4aaa844`](https://github.com/mastra-ai/mastra/commit/4aaa844a4f19d054490f43638a990cc57bda8d2f), [`4a1a6cb`](https://github.com/mastra-ai/mastra/commit/4a1a6cb3facad54b2bb6780b00ce91d6de1edc08), [`31d13d5`](https://github.com/mastra-ai/mastra/commit/31d13d5fdc2e2380e2e3ee3ec9fb29d2a00f265d), [`4c62166`](https://github.com/mastra-ai/mastra/commit/4c621669f4a29b1f443eca3ba70b814afa286266), [`7bcbf10`](https://github.com/mastra-ai/mastra/commit/7bcbf10133516e03df964b941f9a34e9e4ab4177), [`4353600`](https://github.com/mastra-ai/mastra/commit/43536005a65988a8eede236f69122e7f5a284ba2), [`6986fb0`](https://github.com/mastra-ai/mastra/commit/6986fb064f5db6ecc24aa655e1d26529087b43b3), [`053e979`](https://github.com/mastra-ai/mastra/commit/053e9793b28e970086b0507f7f3b76ea32c1e838), [`e26dc9c`](https://github.com/mastra-ai/mastra/commit/e26dc9c3ccfec54ae3dc3e2b2589f741f9ae60a6), [`55edf73`](https://github.com/mastra-ai/mastra/commit/55edf7302149d6c964fbb7908b43babfc2b52145), [`27c0009`](https://github.com/mastra-ai/mastra/commit/27c0009777a6073d7631b0eb7b481d94e165b5ca), [`dee388d`](https://github.com/mastra-ai/mastra/commit/dee388dde02f2e63c53385ae69252a47ab6825cc), [`3f3fc30`](https://github.com/mastra-ai/mastra/commit/3f3fc3096f24c4a26cffeecfe73085928f72aa63), [`d90ea65`](https://github.com/mastra-ai/mastra/commit/d90ea6536f7aa51c6545a4e9215b55858e98e16d), [`d171e55`](https://github.com/mastra-ai/mastra/commit/d171e559ead9f52ec728d424844c8f7b164c4510), [`10c2735`](https://github.com/mastra-ai/mastra/commit/10c27355edfdad1ee2b826b897df74125eb81fb8), [`1924cf0`](https://github.com/mastra-ai/mastra/commit/1924cf06816e5e4d4d5333065ec0f4bb02a97799), [`b339816`](https://github.com/mastra-ai/mastra/commit/b339816df0984d0243d944ac2655d6ba5f809cde)]:
1055
+ - @mastra/core@1.0.0-beta.15
1056
+
1057
+ ## 1.0.0-beta.14
1058
+
1059
+ ### Patch Changes
1060
+
1061
+ - Add execution metadata to A2A message/send responses. The A2A protocol now returns detailed execution information including tool calls, tool results, token usage, and finish reason in the task metadata. This allows clients to inspect which tools were invoked during agent execution and access execution statistics without additional queries. ([#11241](https://github.com/mastra-ai/mastra/pull/11241))
1062
+
1063
+ - feat: Add field filtering and nested workflow control to workflow execution result endpoint ([#11246](https://github.com/mastra-ai/mastra/pull/11246))
1064
+
1065
+ Adds two optional query parameters to `/api/workflows/:workflowId/runs/:runId/execution-result` endpoint:
1066
+ - `fields`: Request only specific fields (e.g., `status`, `result`, `error`)
1067
+ - `withNestedWorkflows`: Control whether to fetch nested workflow data
1068
+
1069
+ This significantly reduces response payload size and improves response times for large workflows.
1070
+
1071
+ ## Server Endpoint Usage
1072
+
1073
+ ```http
1074
+ # Get only status (minimal payload - fastest)
1075
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status
1076
+
1077
+ # Get status and result
1078
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status,result
1079
+
1080
+ # Get all fields but without nested workflow data (faster)
1081
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?withNestedWorkflows=false
1082
+
1083
+ # Get only specific fields without nested workflow data
1084
+ GET /api/workflows/:workflowId/runs/:runId/execution-result?fields=status,steps&withNestedWorkflows=false
1085
+
1086
+ # Get full data (default behavior)
1087
+ GET /api/workflows/:workflowId/runs/:runId/execution-result
1088
+ ```
1089
+
1090
+ ## Client SDK Usage
1091
+
1092
+ ```typescript
1093
+ import { MastraClient } from '@mastra/client-js';
1094
+
1095
+ const client = new MastraClient({ baseUrl: 'http://localhost:4111' });
1096
+ const workflow = client.getWorkflow('myWorkflow');
1097
+
1098
+ // Get only status (minimal payload - fastest)
1099
+ const statusOnly = await workflow.runExecutionResult(runId, {
1100
+ fields: ['status'],
1101
+ });
1102
+ console.log(statusOnly.status); // 'success' | 'failed' | 'running' | etc.
1103
+
1104
+ // Get status and result
1105
+ const statusAndResult = await workflow.runExecutionResult(runId, {
1106
+ fields: ['status', 'result'],
1107
+ });
1108
+
1109
+ // Get all fields but without nested workflow data (faster)
1110
+ const resultWithoutNested = await workflow.runExecutionResult(runId, {
1111
+ withNestedWorkflows: false,
1112
+ });
1113
+
1114
+ // Get specific fields without nested workflow data
1115
+ const optimized = await workflow.runExecutionResult(runId, {
1116
+ fields: ['status', 'steps'],
1117
+ withNestedWorkflows: false,
1118
+ });
1119
+
1120
+ // Get full execution result (default behavior)
1121
+ const fullResult = await workflow.runExecutionResult(runId);
1122
+ ```
1123
+
1124
+ ## Core API Changes
1125
+
1126
+ The `Workflow.getWorkflowRunExecutionResult` method now accepts an options object:
1127
+
1128
+ ```typescript
1129
+ await workflow.getWorkflowRunExecutionResult(runId, {
1130
+ withNestedWorkflows: false, // default: true, set to false to skip nested workflow data
1131
+ fields: ['status', 'result'], // optional field filtering
1132
+ });
1133
+ ```
1134
+
1135
+ ## Inngest Compatibility
1136
+
1137
+ The `@mastra/inngest` package has been updated to use the new options object API. This is a non-breaking internal change - no action required from inngest workflow users.
1138
+
1139
+ ## Performance Impact
1140
+
1141
+ For workflows with large step outputs:
1142
+ - Requesting only `status`: ~99% reduction in payload size
1143
+ - Requesting `status,result,error`: ~95% reduction in payload size
1144
+ - Using `withNestedWorkflows=false`: Avoids expensive nested workflow data fetching
1145
+ - Combining both: Maximum performance optimization
1146
+
1147
+ - Updated dependencies [[`4f94ed8`](https://github.com/mastra-ai/mastra/commit/4f94ed8177abfde3ec536e3574883e075423350c), [`ac3cc23`](https://github.com/mastra-ai/mastra/commit/ac3cc2397d1966bc0fc2736a223abc449d3c7719), [`a86f4df`](https://github.com/mastra-ai/mastra/commit/a86f4df0407311e0d2ea49b9a541f0938810d6a9), [`029540c`](https://github.com/mastra-ai/mastra/commit/029540ca1e582fc2dd8d288ecd4a9b0f31a954ef), [`66741d1`](https://github.com/mastra-ai/mastra/commit/66741d1a99c4f42cf23a16109939e8348ac6852e), [`01b20fe`](https://github.com/mastra-ai/mastra/commit/01b20fefb7c67c2b7d79417598ef4e60256d1225), [`0dbf199`](https://github.com/mastra-ai/mastra/commit/0dbf199110f22192ce5c95b1c8148d4872b4d119), [`a7ce182`](https://github.com/mastra-ai/mastra/commit/a7ce1822a8785ce45d62dd5c911af465e144f7d7)]:
1148
+ - @mastra/core@1.0.0-beta.14
1149
+
1150
+ ## 1.0.0-beta.13
1151
+
1152
+ ### Patch Changes
1153
+
1154
+ - Updated dependencies [[`919a22b`](https://github.com/mastra-ai/mastra/commit/919a22b25876f9ed5891efe5facbe682c30ff497)]:
1155
+ - @mastra/core@1.0.0-beta.13
1156
+
1157
+ ## 1.0.0-beta.12
1158
+
1159
+ ### Patch Changes
1160
+
1161
+ - Add resourceId to workflow routes ([#11166](https://github.com/mastra-ai/mastra/pull/11166))
1162
+
1163
+ - Fix MastraServer.tools typing to accept tools with input schemas ([`5118f38`](https://github.com/mastra-ai/mastra/commit/5118f384a70b1166012fde3b901f3227870b1009))
1164
+
1165
+ Fixes issue #11185 where `MastraServer.tools` was rejecting tools created with `createTool({ inputSchema })`. Changed the tools property type from `Record<string, Tool>` to `ToolsInput` to accept tools with any schema types (input, output, or none), as well as Vercel AI SDK tools and provider-defined tools.
1166
+
1167
+ Tools created with `createTool({ inputSchema: z.object(...) })` now work without TypeScript errors.
1168
+
1169
+ - Remove deprecated playground-only prompt generation handler (functionality moved to @mastra/server) ([#11074](https://github.com/mastra-ai/mastra/pull/11074))
1170
+
1171
+ Improve prompt enhancement UX: show toast errors when enhancement fails, disable button when no model has a configured API key, and prevent users from disabling all models in the model list
1172
+
1173
+ Add missing `/api/agents/:agentId/instructions/enhance` endpoint that was referenced by `@mastra/client-js` and `@mastra/playground-ui`
1174
+
1175
+ - Updated dependencies [[`d5ed981`](https://github.com/mastra-ai/mastra/commit/d5ed981c8701c1b8a27a5f35a9a2f7d9244e695f), [`9650cce`](https://github.com/mastra-ai/mastra/commit/9650cce52a1d917ff9114653398e2a0f5c3ba808), [`932d63d`](https://github.com/mastra-ai/mastra/commit/932d63dd51be9c8bf1e00e3671fe65606c6fb9cd), [`b760b73`](https://github.com/mastra-ai/mastra/commit/b760b731aca7c8a3f041f61d57a7f125ae9cb215), [`695a621`](https://github.com/mastra-ai/mastra/commit/695a621528bdabeb87f83c2277cf2bb084c7f2b4), [`2b459f4`](https://github.com/mastra-ai/mastra/commit/2b459f466fd91688eeb2a44801dc23f7f8a887ab), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`24b76d8`](https://github.com/mastra-ai/mastra/commit/24b76d8e17656269c8ed09a0c038adb9cc2ae95a), [`243a823`](https://github.com/mastra-ai/mastra/commit/243a8239c5906f5c94e4f78b54676793f7510ae3), [`486352b`](https://github.com/mastra-ai/mastra/commit/486352b66c746602b68a95839f830de14c7fb8c0), [`c61fac3`](https://github.com/mastra-ai/mastra/commit/c61fac3add96f0dcce0208c07415279e2537eb62), [`6f14f70`](https://github.com/mastra-ai/mastra/commit/6f14f706ccaaf81b69544b6c1b75ab66a41e5317), [`09e4bae`](https://github.com/mastra-ai/mastra/commit/09e4bae18dd5357d2ae078a4a95a2af32168ab08), [`4524734`](https://github.com/mastra-ai/mastra/commit/45247343e384717a7c8404296275c56201d6470f), [`2a53598`](https://github.com/mastra-ai/mastra/commit/2a53598c6d8cfeb904a7fc74e57e526d751c8fa6), [`c7cd3c7`](https://github.com/mastra-ai/mastra/commit/c7cd3c7a187d7aaf79e2ca139de328bf609a14b4), [`847c212`](https://github.com/mastra-ai/mastra/commit/847c212caba7df0d6f2fc756b494ac3c75c3720d), [`6f941c4`](https://github.com/mastra-ai/mastra/commit/6f941c438ca5f578619788acc7608fc2e23bd176)]:
1176
+ - @mastra/core@1.0.0-beta.12
1177
+
1178
+ ## 1.0.0-beta.11
1179
+
1180
+ ### Patch Changes
1181
+
1182
+ - Fix type safety for message ordering - restrict `orderBy` to only accept `'createdAt'` field ([#11069](https://github.com/mastra-ai/mastra/pull/11069))
1183
+
1184
+ Messages don't have an `updatedAt` field, but the previous type allowed ordering by it, which would return empty results. This change adds compile-time type safety by making `StorageOrderBy` generic and restricting `StorageListMessagesInput.orderBy` to only accept `'createdAt'`. The API validation schemas have also been updated to reject invalid orderBy values at runtime.
1185
+
1186
+ - Support new Workflow tripwire run status. Tripwires that are thrown from within a workflow will now bubble up and return a graceful state with information about tripwires. ([#10947](https://github.com/mastra-ai/mastra/pull/10947))
1187
+
1188
+ When a workflow contains an agent step that triggers a tripwire, the workflow returns with `status: 'tripwire'` and includes tripwire details:
1189
+
1190
+ ```typescript showLineNumbers copy
1191
+ const run = await workflow.createRun();
1192
+ const result = await run.start({ inputData: { message: 'Hello' } });
1193
+
1194
+ if (result.status === 'tripwire') {
1195
+ console.log('Workflow terminated by tripwire:', result.tripwire?.reason);
1196
+ console.log('Processor ID:', result.tripwire?.processorId);
1197
+ console.log('Retry requested:', result.tripwire?.retry);
1198
+ }
1199
+ ```
1200
+
1201
+ Adds new UI state for tripwire in agent chat and workflow UI.
1202
+
1203
+ This is distinct from `status: 'failed'` which indicates an unexpected error. A tripwire status means a processor intentionally stopped execution (e.g., for content moderation).
1204
+
1205
+ - Updated dependencies [[`38380b6`](https://github.com/mastra-ai/mastra/commit/38380b60fca905824bdf6b43df307a58efb1aa15), [`798d0c7`](https://github.com/mastra-ai/mastra/commit/798d0c740232653b1d754870e6b43a55c364ffe2), [`ffe84d5`](https://github.com/mastra-ai/mastra/commit/ffe84d54f3b0f85167fe977efd027dba027eb998), [`2c212e7`](https://github.com/mastra-ai/mastra/commit/2c212e704c90e2db83d4109e62c03f0f6ebd2667), [`4ca4306`](https://github.com/mastra-ai/mastra/commit/4ca430614daa5fa04730205a302a43bf4accfe9f), [`3bf6c5f`](https://github.com/mastra-ai/mastra/commit/3bf6c5f104c25226cd84e0c77f9dec15f2cac2db)]:
1206
+ - @mastra/core@1.0.0-beta.11
1207
+
1208
+ ## 1.0.0-beta.10
1209
+
1210
+ ### Patch Changes
1211
+
1212
+ - ### Breaking Changes ([#11028](https://github.com/mastra-ai/mastra/pull/11028))
1213
+ - Renamed `RuntimeContext` type to `ServerContext` to avoid confusion with the user-facing `RequestContext` (previously called `RuntimeContext`)
1214
+ - Removed `playground` and `isDev` options from server adapter constructors - these only set context variables without any actual functionality
1215
+
1216
+ ### Changes
1217
+
1218
+ **@mastra/server**
1219
+ - Renamed `RuntimeContext` type to `ServerContext` in route handler types
1220
+ - Renamed `createTestRuntimeContext` to `createTestServerContext` in test utilities
1221
+ - Renamed `isPlayground` parameter to `isStudio` in `formatAgent` function
1222
+
1223
+ **@mastra/hono**
1224
+ - Removed `playground` and `isDev` from `HonoVariables` type
1225
+ - Removed setting of `playground` and `isDev` context variables in middleware
1226
+
1227
+ **@mastra/express**
1228
+ - Removed `playground` and `isDev` from `Express.Locals` interface
1229
+ - Removed setting of `playground` and `isDev` in response locals
1230
+
1231
+ - Add delete workflow run API ([#10991](https://github.com/mastra-ai/mastra/pull/10991))
1232
+
1233
+ ```typescript
1234
+ await workflow.deleteWorkflowRunById(runId);
1235
+ ```
1236
+
1237
+ - Updated dependencies [[`edb07e4`](https://github.com/mastra-ai/mastra/commit/edb07e49283e0c28bd094a60e03439bf6ecf0221), [`b7e17d3`](https://github.com/mastra-ai/mastra/commit/b7e17d3f5390bb5a71efc112204413656fcdc18d), [`261473a`](https://github.com/mastra-ai/mastra/commit/261473ac637e633064a22076671e2e02b002214d), [`5d7000f`](https://github.com/mastra-ai/mastra/commit/5d7000f757cd65ea9dc5b05e662fd83dfd44e932), [`4f0331a`](https://github.com/mastra-ai/mastra/commit/4f0331a79bf6eb5ee598a5086e55de4b5a0ada03), [`8a000da`](https://github.com/mastra-ai/mastra/commit/8a000da0c09c679a2312f6b3aa05b2ca78ca7393)]:
1238
+ - @mastra/core@1.0.0-beta.10
1239
+
1240
+ ## 1.0.0-beta.9
1241
+
1242
+ ### Minor Changes
1243
+
1244
+ - Add stored agents support ([#10953](https://github.com/mastra-ai/mastra/pull/10953))
1245
+
1246
+ Agents can now be stored in the database and loaded at runtime. This lets you persist agent configurations and dynamically create executable Agent instances from storage.
1247
+
1248
+ ```typescript
1249
+ import { Mastra } from '@mastra/core';
1250
+ import { LibSQLStore } from '@mastra/libsql';
1251
+
1252
+ const mastra = new Mastra({
1253
+ storage: new LibSQLStore({ url: ':memory:' }),
1254
+ tools: { myTool },
1255
+ scorers: { myScorer },
1256
+ });
1257
+
1258
+ // Create agent in storage via API or directly
1259
+ await mastra.getStorage().createAgent({
1260
+ agent: {
1261
+ id: 'my-agent',
1262
+ name: 'My Agent',
1263
+ instructions: 'You are helpful',
1264
+ model: { provider: 'openai', name: 'gpt-4' },
1265
+ tools: { myTool: {} },
1266
+ scorers: { myScorer: { sampling: { type: 'ratio', rate: 0.5 } } },
1267
+ },
1268
+ });
1269
+
1270
+ // Load and use the agent
1271
+ const agent = await mastra.getStoredAgentById('my-agent');
1272
+ const response = await agent.generate({ messages: 'Hello!' });
1273
+
1274
+ // List all stored agents with pagination
1275
+ const { agents, total, hasMore } = await mastra.listStoredAgents({
1276
+ page: 0,
1277
+ perPage: 10,
1278
+ });
1279
+ ```
1280
+
1281
+ Also adds a memory registry to Mastra so stored agents can reference memory instances by key.
1282
+
1283
+ ### Patch Changes
1284
+
1285
+ - Updated dependencies [[`72df8ae`](https://github.com/mastra-ai/mastra/commit/72df8ae595584cdd7747d5c39ffaca45e4507227), [`9198899`](https://github.com/mastra-ai/mastra/commit/91988995c427b185c33714b7f3be955367911324), [`653e65a`](https://github.com/mastra-ai/mastra/commit/653e65ae1f9502c2958a32f47a5a2df11e612a92), [`c6fd6fe`](https://github.com/mastra-ai/mastra/commit/c6fd6fedd09e9cf8004b03a80925f5e94826ad7e), [`0bed332`](https://github.com/mastra-ai/mastra/commit/0bed332843f627202c6520eaf671771313cd20f3)]:
1286
+ - @mastra/core@1.0.0-beta.9
1287
+
1288
+ ## 1.0.0-beta.8
1289
+
1290
+ ### Patch Changes
1291
+
1292
+ - Updated dependencies [[`0d41fe2`](https://github.com/mastra-ai/mastra/commit/0d41fe245355dfc66d61a0d9c85d9400aac351ff), [`6b3ba91`](https://github.com/mastra-ai/mastra/commit/6b3ba91494cc10394df96782f349a4f7b1e152cc), [`7907fd1`](https://github.com/mastra-ai/mastra/commit/7907fd1c5059813b7b870b81ca71041dc807331b)]:
1293
+ - @mastra/core@1.0.0-beta.8
1294
+
1295
+ ## 1.0.0-beta.7
1296
+
1297
+ ### Patch Changes
1298
+
1299
+ - fix: standardize pagination params to page/perPage with backwards compatibility for limit/offset ([#10790](https://github.com/mastra-ai/mastra/pull/10790))
1300
+ - Server now accepts both `page`/`perPage` and legacy `limit`/`offset` params for workflow runs and MCP server listing endpoints
1301
+ - Client SDK sends both param formats to support older server versions
1302
+ - Added `createCombinedPaginationSchema` helper for endpoints needing backwards compatibility
1303
+ - Marked `limit` and `offset` as deprecated in client types
1304
+
1305
+ - feat: Add partial response support for agent and workflow list endpoints ([#10886](https://github.com/mastra-ai/mastra/pull/10886))
1306
+
1307
+ Add optional `partial` query parameter to `/api/agents` and `/api/workflows` endpoints to return minimal data without schemas, reducing payload size for list views:
1308
+ - When `partial=true`: tool schemas (inputSchema, outputSchema) are omitted
1309
+ - When `partial=true`: workflow steps are replaced with stepCount integer
1310
+ - When `partial=true`: workflow root schemas (inputSchema, outputSchema) are omitted
1311
+ - Maintains backward compatibility when partial parameter is not provided
1312
+
1313
+ ## Server Endpoint Usage
1314
+
1315
+ ```http
1316
+ # Get partial agent data (no tool schemas)
1317
+ GET /api/agents?partial=true
1318
+
1319
+ # Get full agent data (default behavior)
1320
+ GET /api/agents
1321
+
1322
+ # Get partial workflow data (stepCount instead of steps, no schemas)
1323
+ GET /api/workflows?partial=true
1324
+
1325
+ # Get full workflow data (default behavior)
1326
+ GET /api/workflows
1327
+ ```
1328
+
1329
+ ## Client SDK Usage
1330
+
1331
+ ```typescript
1332
+ import { MastraClient } from '@mastra/client-js';
1333
+
1334
+ const client = new MastraClient({ baseUrl: 'http://localhost:4111' });
1335
+
1336
+ // Get partial agent list (smaller payload)
1337
+ const partialAgents = await client.listAgents({ partial: true });
1338
+
1339
+ // Get full agent list with tool schemas
1340
+ const fullAgents = await client.listAgents();
1341
+
1342
+ // Get partial workflow list (smaller payload)
1343
+ const partialWorkflows = await client.listWorkflows({ partial: true });
1344
+
1345
+ // Get full workflow list with steps and schemas
1346
+ const fullWorkflows = await client.listWorkflows();
1347
+ ```
1348
+
1349
+ - Updated dependencies [[`3076c67`](https://github.com/mastra-ai/mastra/commit/3076c6778b18988ae7d5c4c5c466366974b2d63f), [`85d7ee1`](https://github.com/mastra-ai/mastra/commit/85d7ee18ff4e14d625a8a30ec6656bb49804989b), [`c6c1092`](https://github.com/mastra-ai/mastra/commit/c6c1092f8fbf76109303f69e000e96fd1960c4ce), [`81dc110`](https://github.com/mastra-ai/mastra/commit/81dc11008d147cf5bdc8996ead1aa61dbdebb6fc), [`7aedb74`](https://github.com/mastra-ai/mastra/commit/7aedb74883adf66af38e270e4068fd42e7a37036), [`8f02d80`](https://github.com/mastra-ai/mastra/commit/8f02d800777397e4b45d7f1ad041988a8b0c6630), [`d7aad50`](https://github.com/mastra-ai/mastra/commit/d7aad501ce61646b76b4b511e558ac4eea9884d0), [`ce0a73a`](https://github.com/mastra-ai/mastra/commit/ce0a73abeaa75b10ca38f9e40a255a645d50ebfb), [`a02e542`](https://github.com/mastra-ai/mastra/commit/a02e542d23179bad250b044b17ff023caa61739f), [`a372c64`](https://github.com/mastra-ai/mastra/commit/a372c640ad1fd12e8f0613cebdc682fc156b4d95), [`8846867`](https://github.com/mastra-ai/mastra/commit/8846867ffa9a3746767618e314bebac08eb77d87), [`42a42cf`](https://github.com/mastra-ai/mastra/commit/42a42cf3132b9786feecbb8c13c583dce5b0e198), [`ae08bf0`](https://github.com/mastra-ai/mastra/commit/ae08bf0ebc6a4e4da992b711c4a389c32ba84cf4), [`21735a7`](https://github.com/mastra-ai/mastra/commit/21735a7ef306963554a69a89b44f06c3bcd85141), [`1d877b8`](https://github.com/mastra-ai/mastra/commit/1d877b8d7b536a251c1a7a18db7ddcf4f68d6f8b)]:
1350
+ - @mastra/core@1.0.0-beta.7
1351
+
1352
+ ## 1.0.0-beta.6
1353
+
1354
+ ### Patch Changes
1355
+
1356
+ - Unified MastraServer API with MCP transport routes ([#10644](https://github.com/mastra-ai/mastra/pull/10644))
1357
+
1358
+ **Breaking Changes:**
1359
+ - Renamed `HonoServerAdapter` to `MastraServer` in `@mastra/hono`
1360
+ - Renamed `ExpressServerAdapter` to `MastraServer` in `@mastra/express`
1361
+ - Configuration now passed to constructor instead of separate method calls
1362
+ - Renamed base class from `ServerAdapter` to `MastraServerBase` in `@mastra/server`
1363
+
1364
+ **New Features:**
1365
+ - Added MCP transport routes (HTTP and SSE) to server adapters
1366
+ - MCP endpoints available at `/api/mcp/:serverId/mcp` (HTTP) and `/api/mcp/:serverId/sse` (SSE)
1367
+ - Added `express.json()` middleware compatibility for MCP routes
1368
+ - Moved authentication helpers from deployer to `@mastra/server/auth`
1369
+
1370
+ **Testing:**
1371
+ - Added shared MCP route and transport test suites in `@internal/server-adapter-test-utils`
1372
+ - Added comprehensive MCP endpoint tests for both Hono and Express adapters
1373
+ - Added GitHub Actions workflow for server adapter CI testing
1374
+
1375
+ - Allow direct access to server app handle directly from Mastra instance. ([#10598](https://github.com/mastra-ai/mastra/pull/10598))
1376
+
1377
+ ```ts
1378
+ // Before: HTTP request to localhost
1379
+ const response = await fetch(`http://localhost:5000/api/tools`);
1380
+
1381
+ // After: Direct call via app.fetch()
1382
+ const app = mastra.getServerApp<Hono>();
1383
+ const response = await app.fetch(new Request('http://internal/api/tools'));
1384
+ ```
1385
+
1386
+ - Added `mastra.getServerApp<T>()` to access the underlying Hono/Express app
1387
+ - Added `mastra.getMastraServer()` and `mastra.setMastraServer()` for adapter access
1388
+ - Added `MastraServerBase` class in `@mastra/core/server` for adapter implementations
1389
+ - Server adapters now auto-register with Mastra in their constructor
1390
+
1391
+ - fix(a2a): fix streaming and memory support for A2A protocol ([#10653](https://github.com/mastra-ai/mastra/pull/10653))
1392
+
1393
+ **Client (`@mastra/client-js`):**
1394
+ - Fixed `sendStreamingMessage` to properly return a streaming response instead of attempting to parse it as JSON
1395
+
1396
+ **Server (`@mastra/server`):**
1397
+ - Fixed A2A message handler to pass `contextId` as `threadId` for memory persistence across conversations
1398
+ - Added support for user-provided `resourceId` via `params.metadata.resourceId` or `message.metadata.resourceId`, falling back to `agentId`
1399
+
1400
+ - Add stream data redaction to prevent sensitive information leaks in agent stream API responses. ([#10705](https://github.com/mastra-ai/mastra/pull/10705))
1401
+
1402
+ The `stream` API endpoint now automatically redacts `request` data from stream chunks (`step-start`, `step-finish`, `finish`) which could contain system prompts, tool definitions, and API keys. Redaction is enabled by default and can be disabled for debugging/internal services via `streamOptions.redact`.
1403
+
1404
+ - Updated dependencies [[`ac0d2f4`](https://github.com/mastra-ai/mastra/commit/ac0d2f4ff8831f72c1c66c2be809706d17f65789), [`1a0d3fc`](https://github.com/mastra-ai/mastra/commit/1a0d3fc811482c9c376cdf79ee615c23bae9b2d6), [`85a628b`](https://github.com/mastra-ai/mastra/commit/85a628b1224a8f64cd82ea7f033774bf22df7a7e), [`c237233`](https://github.com/mastra-ai/mastra/commit/c23723399ccedf7f5744b3f40997b79246bfbe64), [`15f9e21`](https://github.com/mastra-ai/mastra/commit/15f9e216177201ea6e3f6d0bfb063fcc0953444f), [`ff94dea`](https://github.com/mastra-ai/mastra/commit/ff94dea935f4e34545c63bcb6c29804732698809), [`5b2ff46`](https://github.com/mastra-ai/mastra/commit/5b2ff4651df70c146523a7fca773f8eb0a2272f8), [`db41688`](https://github.com/mastra-ai/mastra/commit/db4168806d007417e2e60b4f68656dca4e5f40c9), [`5ca599d`](https://github.com/mastra-ai/mastra/commit/5ca599d0bb59a1595f19f58473fcd67cc71cef58), [`bff1145`](https://github.com/mastra-ai/mastra/commit/bff114556b3cbadad9b2768488708f8ad0e91475), [`5c8ca24`](https://github.com/mastra-ai/mastra/commit/5c8ca247094e0cc2cdbd7137822fb47241f86e77), [`e191844`](https://github.com/mastra-ai/mastra/commit/e1918444ca3f80e82feef1dad506cd4ec6e2875f), [`22553f1`](https://github.com/mastra-ai/mastra/commit/22553f11c63ee5e966a9c034a349822249584691), [`7237163`](https://github.com/mastra-ai/mastra/commit/72371635dbf96a87df4b073cc48fc655afbdce3d), [`2500740`](https://github.com/mastra-ai/mastra/commit/2500740ea23da067d6e50ec71c625ab3ce275e64), [`873ecbb`](https://github.com/mastra-ai/mastra/commit/873ecbb517586aa17d2f1e99283755b3ebb2863f), [`4f9bbe5`](https://github.com/mastra-ai/mastra/commit/4f9bbe5968f42c86f4930b8193de3c3c17e5bd36), [`02e51fe`](https://github.com/mastra-ai/mastra/commit/02e51feddb3d4155cfbcc42624fd0d0970d032c0), [`8f3fa3a`](https://github.com/mastra-ai/mastra/commit/8f3fa3a652bb77da092f913ec51ae46e3a7e27dc), [`cd29ad2`](https://github.com/mastra-ai/mastra/commit/cd29ad23a255534e8191f249593849ed29160886), [`bdf4d8c`](https://github.com/mastra-ai/mastra/commit/bdf4d8cdc656d8a2c21d81834bfa3bfa70f56c16), [`854e3da`](https://github.com/mastra-ai/mastra/commit/854e3dad5daac17a91a20986399d3a51f54bf68b), [`ce18d38`](https://github.com/mastra-ai/mastra/commit/ce18d38678c65870350d123955014a8432075fd9), [`cccf9c8`](https://github.com/mastra-ai/mastra/commit/cccf9c8b2d2dfc1a5e63919395b83d78c89682a0), [`61a5705`](https://github.com/mastra-ai/mastra/commit/61a570551278b6743e64243b3ce7d73de915ca8a), [`db70a48`](https://github.com/mastra-ai/mastra/commit/db70a48aeeeeb8e5f92007e8ede52c364ce15287), [`f0fdc14`](https://github.com/mastra-ai/mastra/commit/f0fdc14ee233d619266b3d2bbdeea7d25cfc6d13), [`db18bc9`](https://github.com/mastra-ai/mastra/commit/db18bc9c3825e2c1a0ad9a183cc9935f6691bfa1), [`9b37b56`](https://github.com/mastra-ai/mastra/commit/9b37b565e1f2a76c24f728945cc740c2b09be9da), [`41a23c3`](https://github.com/mastra-ai/mastra/commit/41a23c32f9877d71810f37e24930515df2ff7a0f), [`5d171ad`](https://github.com/mastra-ai/mastra/commit/5d171ad9ef340387276b77c2bb3e83e83332d729), [`f03ae60`](https://github.com/mastra-ai/mastra/commit/f03ae60500fe350c9d828621006cdafe1975fdd8), [`d1e74a0`](https://github.com/mastra-ai/mastra/commit/d1e74a0a293866dece31022047f5dbab65a304d0), [`39e7869`](https://github.com/mastra-ai/mastra/commit/39e7869bc7d0ee391077ce291474d8a84eedccff), [`5761926`](https://github.com/mastra-ai/mastra/commit/57619260c4a2cdd598763abbacd90de594c6bc76), [`c900fdd`](https://github.com/mastra-ai/mastra/commit/c900fdd504c41348efdffb205cfe80d48c38fa33), [`604a79f`](https://github.com/mastra-ai/mastra/commit/604a79fecf276e26a54a3fe01bb94e65315d2e0e), [`887f0b4`](https://github.com/mastra-ai/mastra/commit/887f0b4746cdbd7cb7d6b17ac9f82aeb58037ea5), [`2562143`](https://github.com/mastra-ai/mastra/commit/256214336b4faa78646c9c1776612393790d8784), [`ef11a61`](https://github.com/mastra-ai/mastra/commit/ef11a61920fa0ed08a5b7ceedd192875af119749)]:
1405
+ - @mastra/core@1.0.0-beta.6
1406
+
1407
+ ## 1.0.0-beta.5
1408
+
1409
+ ### Patch Changes
1410
+
1411
+ - Extract routing from @deployer/server into server adapter packages. ([#10263](https://github.com/mastra-ai/mastra/pull/10263))
1412
+ New packages:
1413
+ - @mastra/express
1414
+ - @mastra/hono
1415
+
1416
+ These packages support mastra server routes on express and hono respectively.
1417
+ Better abstractions will be built on top of these packages in the near future, enabling users to easily attach mastra routes to any existing server framework.
1418
+
1419
+ - Add timeTravel APIs and add timeTravel feature to studio ([#10361](https://github.com/mastra-ai/mastra/pull/10361))
1420
+
1421
+ - Fixed server handler bugs: filter parsing now handles colons in values (timestamps, URLs), dateRange validation now converts JSON strings to Date objects, deleteMessages schema accepts object forms, and added missing responseSchema for legacy stream route ([#10362](https://github.com/mastra-ai/mastra/pull/10362))
1422
+
1423
+ - Updated dependencies [[`21a15de`](https://github.com/mastra-ai/mastra/commit/21a15de369fe82aac26bb642ed7be73505475e8b), [`feb7ee4`](https://github.com/mastra-ai/mastra/commit/feb7ee4d09a75edb46c6669a3beaceec78811747), [`b0e2ea5`](https://github.com/mastra-ai/mastra/commit/b0e2ea5b52c40fae438b9e2f7baee6f0f89c5442), [`c456e01`](https://github.com/mastra-ai/mastra/commit/c456e0149e3c176afcefdbd9bb1d2c5917723725), [`ab035c2`](https://github.com/mastra-ai/mastra/commit/ab035c2ef6d8cc7bb25f06f1a38508bd9e6f126b), [`1a46a56`](https://github.com/mastra-ai/mastra/commit/1a46a566f45a3fcbadc1cf36bf86d351f264bfa3), [`3cf540b`](https://github.com/mastra-ai/mastra/commit/3cf540b9fbfea8f4fc8d3a2319a4e6c0b0cbfd52), [`1c6ce51`](https://github.com/mastra-ai/mastra/commit/1c6ce51f875915ab57fd36873623013699a2a65d), [`898a972`](https://github.com/mastra-ai/mastra/commit/898a9727d286c2510d6b702dfd367e6aaf5c6b0f), [`a97003a`](https://github.com/mastra-ai/mastra/commit/a97003aa1cf2f4022a41912324a1e77263b326b8), [`ccc141e`](https://github.com/mastra-ai/mastra/commit/ccc141ed27da0abc3a3fc28e9e5128152e8e37f4), [`fe3b897`](https://github.com/mastra-ai/mastra/commit/fe3b897c2ccbcd2b10e81b099438c7337feddf89), [`00123ba`](https://github.com/mastra-ai/mastra/commit/00123ba96dc9e5cd0b110420ebdba56d8f237b25), [`29c4309`](https://github.com/mastra-ai/mastra/commit/29c4309f818b24304c041bcb4a8f19b5f13f6b62), [`16785ce`](https://github.com/mastra-ai/mastra/commit/16785ced928f6f22638f4488cf8a125d99211799), [`de8239b`](https://github.com/mastra-ai/mastra/commit/de8239bdcb1d8c0cfa06da21f1569912a66bbc8a), [`b5e6cd7`](https://github.com/mastra-ai/mastra/commit/b5e6cd77fc8c8e64e0494c1d06cee3d84e795d1e), [`3759cb0`](https://github.com/mastra-ai/mastra/commit/3759cb064935b5f74c65ac2f52a1145f7352899d), [`651e772`](https://github.com/mastra-ai/mastra/commit/651e772eb1475fb13e126d3fcc01751297a88214), [`b61b93f`](https://github.com/mastra-ai/mastra/commit/b61b93f9e058b11dd2eec169853175d31dbdd567), [`bae33d9`](https://github.com/mastra-ai/mastra/commit/bae33d91a63fbb64d1e80519e1fc1acaed1e9013), [`c0b731f`](https://github.com/mastra-ai/mastra/commit/c0b731fb27d712dc8582e846df5c0332a6a0c5ba), [`43ca8f2`](https://github.com/mastra-ai/mastra/commit/43ca8f2c7334851cc7b4d3d2f037d8784bfbdd5f), [`2ca67cc`](https://github.com/mastra-ai/mastra/commit/2ca67cc3bb1f6a617353fdcab197d9efebe60d6f), [`9e67002`](https://github.com/mastra-ai/mastra/commit/9e67002b52c9be19936c420a489dbee9c5fd6a78), [`35edc49`](https://github.com/mastra-ai/mastra/commit/35edc49ac0556db609189641d6341e76771b81fc)]:
1424
+ - @mastra/core@1.0.0-beta.5
1425
+
1426
+ ## 1.0.0-beta.4
1427
+
1428
+ ### Patch Changes
1429
+
1430
+ - Network handler now accesses thread and resource parameters from the nested memory object instead of directly from request body. ([#10294](https://github.com/mastra-ai/mastra/pull/10294))
1431
+
1432
+ - Updated dependencies [[`352a5d6`](https://github.com/mastra-ai/mastra/commit/352a5d625cfe09849b21e8f52a24c9f0366759d5), [`a0a5b4b`](https://github.com/mastra-ai/mastra/commit/a0a5b4bbebe6c701ebbadf744873aa0d5ca01371), [`69ea758`](https://github.com/mastra-ai/mastra/commit/69ea758358edd7117f191c2e69c8bb5fc79e7a1a), [`993ad98`](https://github.com/mastra-ai/mastra/commit/993ad98d7ad3bebda9ecef5fec5c94349a0d04bc), [`3ff2c17`](https://github.com/mastra-ai/mastra/commit/3ff2c17a58e312fad5ea37377262c12d92ca0908)]:
1433
+ - @mastra/core@1.0.0-beta.4
1434
+
1435
+ ## 1.0.0-beta.3
1436
+
1437
+ ### Patch Changes
1438
+
1439
+ - Fix semantic search endpoint to return results in the correct format. Also fix the delete messages endpoint to properly normalize ids in the expected format. ([#10032](https://github.com/mastra-ai/mastra/pull/10032))
1440
+
1441
+ - Updated dependencies [[`2319326`](https://github.com/mastra-ai/mastra/commit/2319326f8c64e503a09bbcf14be2dd65405445e0), [`d629361`](https://github.com/mastra-ai/mastra/commit/d629361a60f6565b5bfb11976fdaf7308af858e2), [`08c31c1`](https://github.com/mastra-ai/mastra/commit/08c31c188ebccd598acaf55e888b6397d01f7eae), [`fd3d338`](https://github.com/mastra-ai/mastra/commit/fd3d338a2c362174ed5b383f1f011ad9fb0302aa), [`c30400a`](https://github.com/mastra-ai/mastra/commit/c30400a49b994b1b97256fe785eb6c906fc2b232), [`69e0a87`](https://github.com/mastra-ai/mastra/commit/69e0a878896a2da9494945d86e056a5f8f05b851), [`01f8878`](https://github.com/mastra-ai/mastra/commit/01f88783de25e4de048c1c8aace43e26373c6ea5), [`4c77209`](https://github.com/mastra-ai/mastra/commit/4c77209e6c11678808b365d545845918c40045c8), [`d827d08`](https://github.com/mastra-ai/mastra/commit/d827d0808ffe1f3553a84e975806cc989b9735dd), [`23c10a1`](https://github.com/mastra-ai/mastra/commit/23c10a1efdd9a693c405511ab2dc8a1236603162), [`676ccc7`](https://github.com/mastra-ai/mastra/commit/676ccc7fe92468d2d45d39c31a87825c89fd1ea0), [`c10398d`](https://github.com/mastra-ai/mastra/commit/c10398d5b88f1d4af556f4267ff06f1d11e89179), [`00c2387`](https://github.com/mastra-ai/mastra/commit/00c2387f5f04a365316f851e58666ac43f8c4edf), [`ad6250d`](https://github.com/mastra-ai/mastra/commit/ad6250dbdaad927e29f74a27b83f6c468b50a705), [`3a73998`](https://github.com/mastra-ai/mastra/commit/3a73998fa4ebeb7f3dc9301afe78095fc63e7999), [`e16d553`](https://github.com/mastra-ai/mastra/commit/e16d55338403c7553531cc568125c63d53653dff), [`4d59f58`](https://github.com/mastra-ai/mastra/commit/4d59f58de2d90d6e2810a19d4518e38ddddb9038), [`e1bb9c9`](https://github.com/mastra-ai/mastra/commit/e1bb9c94b4eb68b019ae275981be3feb769b5365), [`351a11f`](https://github.com/mastra-ai/mastra/commit/351a11fcaf2ed1008977fa9b9a489fc422e51cd4)]:
1442
+ - @mastra/core@1.0.0-beta.3
1443
+
1444
+ ## 1.0.0-beta.2
1445
+
1446
+ ### Patch Changes
1447
+
1448
+ - Updated dependencies [[`465ac05`](https://github.com/mastra-ai/mastra/commit/465ac0526a91d175542091c675181f1a96c98c46)]:
1449
+ - @mastra/core@1.0.0-beta.2
1450
+
1451
+ ## 1.0.0-beta.1
1452
+
1453
+ ### Patch Changes
1454
+
1455
+ - Updated dependencies [[`910db9e`](https://github.com/mastra-ai/mastra/commit/910db9e0312888495eb5617b567f247d03303814), [`e7266a2`](https://github.com/mastra-ai/mastra/commit/e7266a278db02035c97a5e9cd9d1669a6b7a535d)]:
1456
+ - @mastra/core@1.0.0-beta.1
1457
+
1458
+ ## 1.0.0-beta.0
1459
+
1460
+ ### Major Changes
1461
+
1462
+ - Moving scorers under the eval domain, api method consistency, prebuilt evals, scorers require ids. ([#9589](https://github.com/mastra-ai/mastra/pull/9589))
1463
+
1464
+ - Every Mastra primitive (agent, MCPServer, workflow, tool, processor, scorer, and vector) now has a get, list, and add method associated with it. Each primitive also now requires an id to be set. ([#9675](https://github.com/mastra-ai/mastra/pull/9675))
1465
+
1466
+ Primitives that are added to other primitives are also automatically added to the Mastra instance
1467
+
7
1468
  - Update handlers to use `listWorkflowRuns` instead of `getWorkflowRuns`. Fix type names from `StoragelistThreadsByResourceIdInput/Output` to `StorageListThreadsByResourceIdInput/Output`. ([#9507](https://github.com/mastra-ai/mastra/pull/9507))
8
1469
 
1470
+ - **BREAKING:** Remove `getMessagesPaginated()` and add `perPage: false` support ([#9670](https://github.com/mastra-ai/mastra/pull/9670))
1471
+
1472
+ Removes deprecated `getMessagesPaginated()` method. The `listMessages()` API and score handlers now support `perPage: false` to fetch all records without pagination limits.
1473
+
1474
+ **Storage changes:**
1475
+ - `StoragePagination.perPage` type changed from `number` to `number | false`
1476
+ - All storage implementations support `perPage: false`:
1477
+ - Memory: `listMessages()`
1478
+ - Scores: `listScoresBySpan()`, `listScoresByRunId()`, `listScoresByExecutionId()`
1479
+ - HTTP query parser accepts `"false"` string (e.g., `?perPage=false`)
1480
+
1481
+ **Memory changes:**
1482
+ - `memory.query()` parameter type changed from `StorageGetMessagesArg` to `StorageListMessagesInput`
1483
+ - Uses flat parameters (`page`, `perPage`, `include`, `filter`, `vectorSearchString`) instead of `selectBy` object
1484
+
1485
+ **Stricter validation:**
1486
+ - `listMessages()` requires non-empty, non-whitespace `threadId` (throws error instead of returning empty results)
1487
+
1488
+ **Migration:**
1489
+
1490
+ ```typescript
1491
+ // Storage/Memory: Replace getMessagesPaginated with listMessages
1492
+ - storage.getMessagesPaginated({ threadId, selectBy: { pagination: { page: 0, perPage: 20 } } })
1493
+ + storage.listMessages({ threadId, page: 0, perPage: 20 })
1494
+ + storage.listMessages({ threadId, page: 0, perPage: false }) // Fetch all
1495
+
1496
+ // Memory: Replace selectBy with flat parameters
1497
+ - memory.query({ threadId, selectBy: { last: 20, include: [...] } })
1498
+ + memory.query({ threadId, perPage: 20, include: [...] })
1499
+
1500
+ // Client SDK
1501
+ - thread.getMessagesPaginated({ selectBy: { pagination: { page: 0 } } })
1502
+ + thread.listMessages({ page: 0, perPage: 20 })
1503
+ ```
1504
+
1505
+ - # Major Changes ([#9695](https://github.com/mastra-ai/mastra/pull/9695))
1506
+
1507
+ ## Storage Layer
1508
+
1509
+ ### BREAKING: Removed `storage.getMessages()`
1510
+
1511
+ The `getMessages()` method has been removed from all storage implementations. Use `listMessages()` instead, which provides pagination support.
1512
+
1513
+ **Migration:**
1514
+
1515
+ ```typescript
1516
+ // Before
1517
+ const messages = await storage.getMessages({ threadId: 'thread-1' });
1518
+
1519
+ // After
1520
+ const result = await storage.listMessages({
1521
+ threadId: 'thread-1',
1522
+ page: 0,
1523
+ perPage: 50,
1524
+ });
1525
+ const messages = result.messages; // Access messages array
1526
+ console.log(result.total); // Total count
1527
+ console.log(result.hasMore); // Whether more pages exist
1528
+ ```
1529
+
1530
+ ### Message ordering default
1531
+
1532
+ `listMessages()` defaults to ASC (oldest first) ordering by `createdAt`, matching the previous `getMessages()` behavior.
1533
+
1534
+ **To use DESC ordering (newest first):**
1535
+
1536
+ ```typescript
1537
+ const result = await storage.listMessages({
1538
+ threadId: 'thread-1',
1539
+ orderBy: { field: 'createdAt', direction: 'DESC' },
1540
+ });
1541
+ ```
1542
+
1543
+ ## Client SDK
1544
+
1545
+ ### BREAKING: Renamed `client.getThreadMessages()` → `client.listThreadMessages()`
1546
+
1547
+ **Migration:**
1548
+
1549
+ ```typescript
1550
+ // Before
1551
+ const response = await client.getThreadMessages(threadId, { agentId });
1552
+
1553
+ // After
1554
+ const response = await client.listThreadMessages(threadId, { agentId });
1555
+ ```
1556
+
1557
+ The response format remains the same.
1558
+
1559
+ ## Type Changes
1560
+
1561
+ ### BREAKING: Removed `StorageGetMessagesArg` type
1562
+
1563
+ Use `StorageListMessagesInput` instead:
1564
+
1565
+ ```typescript
1566
+ // Before
1567
+ import type { StorageGetMessagesArg } from '@mastra/core';
1568
+
1569
+ // After
1570
+ import type { StorageListMessagesInput } from '@mastra/core';
1571
+ ```
1572
+
1573
+ - Bump minimum required Node.js version to 22.13.0 ([#9706](https://github.com/mastra-ai/mastra/pull/9706))
1574
+
9
1575
  - Replace `getThreadsByResourceIdPaginated` with `listThreadsByResourceId` across memory handlers. Update client SDK to use `listThreads()` with `offset`/`limit` parameters instead of deprecated `getMemoryThreads()`. Consolidate `/api/memory/threads` routes to single paginated endpoint. ([#9508](https://github.com/mastra-ai/mastra/pull/9508))
10
1576
 
1577
+ - This simplifies the Memory API by removing the confusing rememberMessages method and renaming query to recall for better clarity. ([#9701](https://github.com/mastra-ai/mastra/pull/9701))
1578
+
1579
+ The rememberMessages method name implied it might persist data when it was actually just retrieving messages, same as query. Having two methods that did essentially the same thing was unnecessary.
1580
+
1581
+ Before:
1582
+
1583
+ ```typescript
1584
+ // Two methods that did the same thing
1585
+ memory.rememberMessages({ threadId, resourceId, config, vectorMessageSearch });
1586
+ memory.query({ threadId, resourceId, perPage, vectorSearchString });
1587
+ ```
1588
+
1589
+ After:
1590
+
1591
+ ```typescript
1592
+ // Single unified method with clear purpose
1593
+ memory.recall({ threadId, resourceId, perPage, vectorMessageSearch, threadConfig });
1594
+ ```
1595
+
1596
+ All usages have been updated across the codebase including tests. The agent now calls recall directly with the appropriate parameters.
1597
+
11
1598
  - Rename RuntimeContext to RequestContext ([#9511](https://github.com/mastra-ai/mastra/pull/9511))
12
1599
 
1600
+ - Rename `defaultVNextStreamOptions` to `defaultOptions`. Add "Legacy" suffix to v1 option properties and methods (`defaultGenerateOptions` → `defaultGenerateOptionsLegacy`, `defaultStreamOptions` → `defaultStreamOptionsLegacy`). ([#9535](https://github.com/mastra-ai/mastra/pull/9535))
1601
+
1602
+ - Remove `getThreadsByResourceId` and `getThreadsByResourceIdPaginated` methods from storage interfaces in favor of `listThreadsByResourceId`. The new method uses `offset`/`limit` pagination and a nested `orderBy` object structure (`{ field, direction }`). ([#9536](https://github.com/mastra-ai/mastra/pull/9536))
1603
+
1604
+ - Renamed a bunch of observability/tracing-related things to drop the AI prefix. ([#9744](https://github.com/mastra-ai/mastra/pull/9744))
1605
+
1606
+ - **Breaking Change**: Remove legacy v1 watch events and consolidate on v2 implementation. ([#9252](https://github.com/mastra-ai/mastra/pull/9252))
1607
+
1608
+ This change simplifies the workflow watching API by removing the legacy v1 event system and promoting v2 as the standard (renamed to just `watch`).
1609
+
1610
+ ### What's Changed
1611
+ - Removed legacy v1 watch event handlers and types
1612
+ - Renamed `watch-v2` to `watch` throughout the codebase
1613
+ - Removed `.watch()` method from client-js SDK (`Workflow` and `AgentBuilder` classes)
1614
+ - Removed `/watch` HTTP endpoints from server and deployer
1615
+ - Removed `WorkflowWatchResult` and v1 `WatchEvent` types
1616
+
1617
+ - **BREAKING CHANGE**: Pagination APIs now use `page`/`perPage` instead of `offset`/`limit` ([#9592](https://github.com/mastra-ai/mastra/pull/9592))
1618
+
1619
+ All storage and memory pagination APIs have been updated to use `page` (0-indexed) and `perPage` instead of `offset` and `limit`, aligning with standard REST API patterns.
1620
+
1621
+ **Affected APIs:**
1622
+ - `Memory.listThreadsByResourceId()`
1623
+ - `Memory.listMessages()`
1624
+ - `Storage.listWorkflowRuns()`
1625
+
1626
+ **Migration:**
1627
+
1628
+ ```typescript
1629
+ // Before
1630
+ await memory.listThreadsByResourceId({
1631
+ resourceId: 'user-123',
1632
+ offset: 20,
1633
+ limit: 10,
1634
+ });
1635
+
1636
+ // After
1637
+ await memory.listThreadsByResourceId({
1638
+ resourceId: 'user-123',
1639
+ page: 2, // page = Math.floor(offset / limit)
1640
+ perPage: 10,
1641
+ });
1642
+
1643
+ // Before
1644
+ await memory.listMessages({
1645
+ threadId: 'thread-456',
1646
+ offset: 20,
1647
+ limit: 10,
1648
+ });
1649
+
1650
+ // After
1651
+ await memory.listMessages({
1652
+ threadId: 'thread-456',
1653
+ page: 2,
1654
+ perPage: 10,
1655
+ });
1656
+
1657
+ // Before
1658
+ await storage.listWorkflowRuns({
1659
+ workflowName: 'my-workflow',
1660
+ offset: 20,
1661
+ limit: 10,
1662
+ });
1663
+
1664
+ // After
1665
+ await storage.listWorkflowRuns({
1666
+ workflowName: 'my-workflow',
1667
+ page: 2,
1668
+ perPage: 10,
1669
+ });
1670
+ ```
1671
+
1672
+ **Additional improvements:**
1673
+ - Added validation for negative `page` values in all storage implementations
1674
+ - Improved `perPage` validation to handle edge cases (negative values, `0`, `false`)
1675
+ - Added reusable query parser utilities for consistent validation in handlers
1676
+
13
1677
  - Changing getAgents -> listAgents, getTools -> listTools, getWorkflows -> listWorkflows ([#9495](https://github.com/mastra-ai/mastra/pull/9495))
14
1678
 
15
1679
  - Removed old tracing code based on OpenTelemetry ([#9237](https://github.com/mastra-ai/mastra/pull/9237))
16
1680
 
1681
+ - Remove deprecated vector prompts and cohere provider from code ([#9596](https://github.com/mastra-ai/mastra/pull/9596))
1682
+
1683
+ - Mark as stable ([`83d5942`](https://github.com/mastra-ai/mastra/commit/83d5942669ce7bba4a6ca4fd4da697a10eb5ebdc))
1684
+
1685
+ - Enforcing id required on Processor primitive ([#9591](https://github.com/mastra-ai/mastra/pull/9591))
1686
+
1687
+ - Renamed `MastraMessageV2` to `MastraDBMessage` ([#9255](https://github.com/mastra-ai/mastra/pull/9255))
1688
+ Made the return format of all methods that return db messages consistent. It's always `{ messages: MastraDBMessage[] }` now, and messages can be converted after that using `@mastra/ai-sdk/ui`'s `toAISdkV4/5Messages()` function
1689
+
1690
+ - moved ai-tracing code into @mastra/observability ([#9661](https://github.com/mastra-ai/mastra/pull/9661))
1691
+
17
1692
  - Remove legacy evals from Mastra ([#9491](https://github.com/mastra-ai/mastra/pull/9491))
18
1693
 
19
1694
  ### Minor Changes
@@ -63,8 +1738,62 @@
63
1738
 
64
1739
  - Make step optional in all resume APIs ([#9454](https://github.com/mastra-ai/mastra/pull/9454))
65
1740
 
1741
+ - Add agent id to the list agent ([#9770](https://github.com/mastra-ai/mastra/pull/9770))
1742
+
1743
+ - Update tool execution signature ([#9587](https://github.com/mastra-ai/mastra/pull/9587))
1744
+
1745
+ Consolidated the 3 different execution contexts to one
1746
+
1747
+ ```typescript
1748
+ // before depending on the context the tool was executed in
1749
+ tool.execute({ context: data });
1750
+ tool.execute({ context: { inputData: data } });
1751
+ tool.execute(data);
1752
+
1753
+ // now, for all contexts
1754
+ tool.execute(data, context);
1755
+ ```
1756
+
1757
+ **Before:**
1758
+
1759
+ ```typescript
1760
+ inputSchema: z.object({ something: z.string() }),
1761
+ execute: async ({ context, tracingContext, runId, ... }) => {
1762
+ return doSomething(context.string);
1763
+ }
1764
+ ```
1765
+
1766
+ **After:**
1767
+
1768
+ ```typescript
1769
+ inputSchema: z.object({ something: z.string() }),
1770
+ execute: async (inputData, context) => {
1771
+ const { agent, mcp, workflow, ...sharedContext } = context
1772
+
1773
+ // context that only an agent would get like toolCallId, messages, suspend, resume, etc
1774
+ if (agent) {
1775
+ doSomething(inputData.something, agent)
1776
+ // context that only a workflow would get like runId, state, suspend, resume, etc
1777
+ } else if (workflow) {
1778
+ doSomething(inputData.something, workflow)
1779
+ // context that only a workflow would get like "extra", "elicitation"
1780
+ } else if (mcp) {
1781
+ doSomething(inputData.something, mcp)
1782
+ } else {
1783
+ // Running a tool in no execution context
1784
+ return doSomething(inputData.something);
1785
+ }
1786
+ }
1787
+ ```
1788
+
1789
+ - Add the description field to listAgents ([#9672](https://github.com/mastra-ai/mastra/pull/9672))
1790
+
1791
+ - Fix the link issue in observability ([#9764](https://github.com/mastra-ai/mastra/pull/9764))
1792
+
66
1793
  - Add tool call approval ([#8649](https://github.com/mastra-ai/mastra/pull/8649))
67
1794
 
1795
+ - Fix scorers listing filtring ([#9801](https://github.com/mastra-ai/mastra/pull/9801))
1796
+
68
1797
  - Fixes issue where clicking the reset button in the model picker would fail to restore the original LanguageModelV2 (or any other types) object that was passed during agent construction. ([#9481](https://github.com/mastra-ai/mastra/pull/9481))
69
1798
 
70
1799
  - Update peer dependencies to match core package version bump (1.0.0) ([#9489](https://github.com/mastra-ai/mastra/pull/9489))
@@ -73,10 +1802,14 @@
73
1802
 
74
1803
  - Make step optional in resumeStreamVNext API ([#9453](https://github.com/mastra-ai/mastra/pull/9453))
75
1804
 
1805
+ - Remove `waitForEvent` from workflows. `waitForEvent` is now removed, please use suspend & resume flow instead. See https://mastra.ai/en/docs/workflows/suspend-and-resume for more details on suspend & resume flow. ([#9214](https://github.com/mastra-ai/mastra/pull/9214))
1806
+
76
1807
  - Use memory mock in server tests ([#9486](https://github.com/mastra-ai/mastra/pull/9486))
77
1808
 
78
- - Updated dependencies [[`f743dbb`](https://github.com/mastra-ai/mastra/commit/f743dbb8b40d1627b5c10c0e6fc154f4ebb6e394), [`0e8ed46`](https://github.com/mastra-ai/mastra/commit/0e8ed467c54d6901a6a365f270ec15d6faadb36c), [`6c049d9`](https://github.com/mastra-ai/mastra/commit/6c049d94063fdcbd5b81c4912a2bf82a92c9cc0b), [`3443770`](https://github.com/mastra-ai/mastra/commit/3443770662df8eb24c9df3589b2792d78cfcb811), [`9e1911d`](https://github.com/mastra-ai/mastra/commit/9e1911db2b4db85e0e768c3f15e0d61e319869f6), [`ebac155`](https://github.com/mastra-ai/mastra/commit/ebac15564a590117db7078233f927a7e28a85106), [`5948e6a`](https://github.com/mastra-ai/mastra/commit/5948e6a5146c83666ba3f294b2be576c82a513fb), [`8940859`](https://github.com/mastra-ai/mastra/commit/89408593658199b4ad67f7b65e888f344e64a442), [`e629310`](https://github.com/mastra-ai/mastra/commit/e629310f1a73fa236d49ec7a1d1cceb6229dc7cc), [`4c6b492`](https://github.com/mastra-ai/mastra/commit/4c6b492c4dd591c6a592520c1f6855d6e936d71f), [`9d819d5`](https://github.com/mastra-ai/mastra/commit/9d819d54b61481639f4008e4694791bddf187edd), [`71c8d6c`](https://github.com/mastra-ai/mastra/commit/71c8d6c161253207b2b9588bdadb7eed604f7253), [`6179a9b`](https://github.com/mastra-ai/mastra/commit/6179a9ba36ffac326de3cc3c43cdc8028d37c251), [`7051bf3`](https://github.com/mastra-ai/mastra/commit/7051bf38b3b122a069008f861f7bfc004a6d9f6e), [`a8f1494`](https://github.com/mastra-ai/mastra/commit/a8f1494f4bbdc2770bcf327d4c7d869e332183f1), [`5df9cce`](https://github.com/mastra-ai/mastra/commit/5df9cce1a753438413f64c11eeef8f845745c2a8), [`c576fc0`](https://github.com/mastra-ai/mastra/commit/c576fc0b100b2085afded91a37c97a0ea0ec09c7), [`3defc80`](https://github.com/mastra-ai/mastra/commit/3defc80cf2b88a1b7fc1cc4ddcb91e982a614609), [`9f4a683`](https://github.com/mastra-ai/mastra/commit/9f4a6833e88b52574665c028fd5508ad5c2f6004), [`57d157f`](https://github.com/mastra-ai/mastra/commit/57d157f0b163a95c3e6c9eae31bdb11d1bfc64f9), [`2a90c55`](https://github.com/mastra-ai/mastra/commit/2a90c55a86a9210697d5adaab5ee94584b079adc), [`d78b38d`](https://github.com/mastra-ai/mastra/commit/d78b38d898fce285260d3bbb4befade54331617f), [`c710c16`](https://github.com/mastra-ai/mastra/commit/c710c1652dccfdc4111c8412bca7a6bb1d48b441), [`cfae733`](https://github.com/mastra-ai/mastra/commit/cfae73394f4920635e6c919c8e95ff9a0788e2e5), [`e3dfda7`](https://github.com/mastra-ai/mastra/commit/e3dfda7b11bf3b8c4bb55637028befb5f387fc74), [`844ea5d`](https://github.com/mastra-ai/mastra/commit/844ea5dc0c248961e7bf73629ae7dcff503e853c), [`f0f8f12`](https://github.com/mastra-ai/mastra/commit/f0f8f125c308f2d0fd36942ef652fd852df7522f), [`7b763e5`](https://github.com/mastra-ai/mastra/commit/7b763e52fc3eaf699c2a99f2adf418dd46e4e9a5), [`d36cfbb`](https://github.com/mastra-ai/mastra/commit/d36cfbbb6565ba5f827883cc9bb648eb14befdc1), [`3697853`](https://github.com/mastra-ai/mastra/commit/3697853deeb72017d90e0f38a93c1e29221aeca0), [`a534e95`](https://github.com/mastra-ai/mastra/commit/a534e9591f83b3cc1ebff99c67edf4cda7bf81d3), [`9d0e7fe`](https://github.com/mastra-ai/mastra/commit/9d0e7feca8ed98de959f53476ee1456073673348), [`53d927c`](https://github.com/mastra-ai/mastra/commit/53d927cc6f03bff33655b7e2b788da445a08731d), [`22f64bc`](https://github.com/mastra-ai/mastra/commit/22f64bc1d37149480b58bf2fefe35b79a1e3e7d5), [`bda6370`](https://github.com/mastra-ai/mastra/commit/bda637009360649aaf579919e7873e33553c273e), [`c7f1f7d`](https://github.com/mastra-ai/mastra/commit/c7f1f7d24f61f247f018cc2d1f33bf63212959a7), [`735d8c1`](https://github.com/mastra-ai/mastra/commit/735d8c1c0d19fbc09e6f8b66cf41bc7655993838), [`c218bd3`](https://github.com/mastra-ai/mastra/commit/c218bd3759e32423735b04843a09404572631014), [`2c4438b`](https://github.com/mastra-ai/mastra/commit/2c4438b87817ab7eed818c7990fef010475af1a3), [`2b8893c`](https://github.com/mastra-ai/mastra/commit/2b8893cb108ef9acb72ee7835cd625610d2c1a4a), [`8e5c75b`](https://github.com/mastra-ai/mastra/commit/8e5c75bdb1d08a42d45309a4c72def4b6890230f), [`fa8409b`](https://github.com/mastra-ai/mastra/commit/fa8409bc39cfd8ba6643b9db5269b90b22e2a2f7), [`173c535`](https://github.com/mastra-ai/mastra/commit/173c535c0645b0da404fe09f003778f0b0d4e019)]:
79
- - @mastra/core@0.0.0-remove-unused-model-providers-api-20251030210744
1809
+ - Remove format from stream/generate ([#9577](https://github.com/mastra-ai/mastra/pull/9577))
1810
+
1811
+ - Updated dependencies [[`39c9743`](https://github.com/mastra-ai/mastra/commit/39c97432d084294f8ba85fbf3ef28098ff21459e), [`f743dbb`](https://github.com/mastra-ai/mastra/commit/f743dbb8b40d1627b5c10c0e6fc154f4ebb6e394), [`fec5129`](https://github.com/mastra-ai/mastra/commit/fec5129de7fc64423ea03661a56cef31dc747a0d), [`0491e7c`](https://github.com/mastra-ai/mastra/commit/0491e7c9b714cb0ba22187ee062147ec2dd7c712), [`f6f4903`](https://github.com/mastra-ai/mastra/commit/f6f4903397314f73362061dc5a3e8e7c61ea34aa), [`0e8ed46`](https://github.com/mastra-ai/mastra/commit/0e8ed467c54d6901a6a365f270ec15d6faadb36c), [`6c049d9`](https://github.com/mastra-ai/mastra/commit/6c049d94063fdcbd5b81c4912a2bf82a92c9cc0b), [`2f897df`](https://github.com/mastra-ai/mastra/commit/2f897df208508f46f51b7625e5dd20c37f93e0e3), [`3443770`](https://github.com/mastra-ai/mastra/commit/3443770662df8eb24c9df3589b2792d78cfcb811), [`f0a07e0`](https://github.com/mastra-ai/mastra/commit/f0a07e0111b3307c5fabfa4094c5c2cfb734fbe6), [`aaa40e7`](https://github.com/mastra-ai/mastra/commit/aaa40e788628b319baa8e889407d11ad626547fa), [`1521d71`](https://github.com/mastra-ai/mastra/commit/1521d716e5daedc74690c983fbd961123c56756b), [`9e1911d`](https://github.com/mastra-ai/mastra/commit/9e1911db2b4db85e0e768c3f15e0d61e319869f6), [`ebac155`](https://github.com/mastra-ai/mastra/commit/ebac15564a590117db7078233f927a7e28a85106), [`dd1c38d`](https://github.com/mastra-ai/mastra/commit/dd1c38d1b75f1b695c27b40d8d9d6ed00d5e0f6f), [`5948e6a`](https://github.com/mastra-ai/mastra/commit/5948e6a5146c83666ba3f294b2be576c82a513fb), [`8940859`](https://github.com/mastra-ai/mastra/commit/89408593658199b4ad67f7b65e888f344e64a442), [`e629310`](https://github.com/mastra-ai/mastra/commit/e629310f1a73fa236d49ec7a1d1cceb6229dc7cc), [`4c6b492`](https://github.com/mastra-ai/mastra/commit/4c6b492c4dd591c6a592520c1f6855d6e936d71f), [`dff01d8`](https://github.com/mastra-ai/mastra/commit/dff01d81ce1f4e4087cfac20fa868e6db138dd14), [`9d819d5`](https://github.com/mastra-ai/mastra/commit/9d819d54b61481639f4008e4694791bddf187edd), [`71c8d6c`](https://github.com/mastra-ai/mastra/commit/71c8d6c161253207b2b9588bdadb7eed604f7253), [`6179a9b`](https://github.com/mastra-ai/mastra/commit/6179a9ba36ffac326de3cc3c43cdc8028d37c251), [`00f4921`](https://github.com/mastra-ai/mastra/commit/00f4921dd2c91a1e5446799599ef7116a8214a1a), [`ca8041c`](https://github.com/mastra-ai/mastra/commit/ca8041cce0379fda22ed293a565bcb5b6ddca68a), [`7051bf3`](https://github.com/mastra-ai/mastra/commit/7051bf38b3b122a069008f861f7bfc004a6d9f6e), [`a8f1494`](https://github.com/mastra-ai/mastra/commit/a8f1494f4bbdc2770bcf327d4c7d869e332183f1), [`0793497`](https://github.com/mastra-ai/mastra/commit/079349753620c40246ffd673e3f9d7d9820beff3), [`5df9cce`](https://github.com/mastra-ai/mastra/commit/5df9cce1a753438413f64c11eeef8f845745c2a8), [`a854ede`](https://github.com/mastra-ai/mastra/commit/a854ede62bf5ac0945a624ac48913dd69c73aabf), [`c576fc0`](https://github.com/mastra-ai/mastra/commit/c576fc0b100b2085afded91a37c97a0ea0ec09c7), [`3defc80`](https://github.com/mastra-ai/mastra/commit/3defc80cf2b88a1b7fc1cc4ddcb91e982a614609), [`16153fe`](https://github.com/mastra-ai/mastra/commit/16153fe7eb13c99401f48e6ca32707c965ee28b9), [`9f4a683`](https://github.com/mastra-ai/mastra/commit/9f4a6833e88b52574665c028fd5508ad5c2f6004), [`bc94344`](https://github.com/mastra-ai/mastra/commit/bc943444a1342d8a662151b7bce1df7dae32f59c), [`57d157f`](https://github.com/mastra-ai/mastra/commit/57d157f0b163a95c3e6c9eae31bdb11d1bfc64f9), [`903f67d`](https://github.com/mastra-ai/mastra/commit/903f67d184504a273893818c02b961f5423a79ad), [`2a90c55`](https://github.com/mastra-ai/mastra/commit/2a90c55a86a9210697d5adaab5ee94584b079adc), [`eb09742`](https://github.com/mastra-ai/mastra/commit/eb09742197f66c4c38154c3beec78313e69760b2), [`96d35f6`](https://github.com/mastra-ai/mastra/commit/96d35f61376bc2b1bf148648a2c1985bd51bef55), [`5cbe88a`](https://github.com/mastra-ai/mastra/commit/5cbe88aefbd9f933bca669fd371ea36bf939ac6d), [`a1bd7b8`](https://github.com/mastra-ai/mastra/commit/a1bd7b8571db16b94eb01588f451a74758c96d65), [`d78b38d`](https://github.com/mastra-ai/mastra/commit/d78b38d898fce285260d3bbb4befade54331617f), [`0633100`](https://github.com/mastra-ai/mastra/commit/0633100a911ad22f5256471bdf753da21c104742), [`c710c16`](https://github.com/mastra-ai/mastra/commit/c710c1652dccfdc4111c8412bca7a6bb1d48b441), [`354ad0b`](https://github.com/mastra-ai/mastra/commit/354ad0b7b1b8183ac567f236a884fc7ede6d7138), [`cfae733`](https://github.com/mastra-ai/mastra/commit/cfae73394f4920635e6c919c8e95ff9a0788e2e5), [`e3dfda7`](https://github.com/mastra-ai/mastra/commit/e3dfda7b11bf3b8c4bb55637028befb5f387fc74), [`844ea5d`](https://github.com/mastra-ai/mastra/commit/844ea5dc0c248961e7bf73629ae7dcff503e853c), [`398fde3`](https://github.com/mastra-ai/mastra/commit/398fde3f39e707cda79372cdae8f9870e3b57c8d), [`f0f8f12`](https://github.com/mastra-ai/mastra/commit/f0f8f125c308f2d0fd36942ef652fd852df7522f), [`0d7618b`](https://github.com/mastra-ai/mastra/commit/0d7618bc650bf2800934b243eca5648f4aeed9c2), [`7b763e5`](https://github.com/mastra-ai/mastra/commit/7b763e52fc3eaf699c2a99f2adf418dd46e4e9a5), [`d36cfbb`](https://github.com/mastra-ai/mastra/commit/d36cfbbb6565ba5f827883cc9bb648eb14befdc1), [`3697853`](https://github.com/mastra-ai/mastra/commit/3697853deeb72017d90e0f38a93c1e29221aeca0), [`b2e45ec`](https://github.com/mastra-ai/mastra/commit/b2e45eca727a8db01a81ba93f1a5219c7183c839), [`d6d49f7`](https://github.com/mastra-ai/mastra/commit/d6d49f7b8714fa19a52ff9c7cf7fb7e73751901e), [`a534e95`](https://github.com/mastra-ai/mastra/commit/a534e9591f83b3cc1ebff99c67edf4cda7bf81d3), [`9d0e7fe`](https://github.com/mastra-ai/mastra/commit/9d0e7feca8ed98de959f53476ee1456073673348), [`53d927c`](https://github.com/mastra-ai/mastra/commit/53d927cc6f03bff33655b7e2b788da445a08731d), [`3f2faf2`](https://github.com/mastra-ai/mastra/commit/3f2faf2e2d685d6c053cc5af1bf9fedf267b2ce5), [`22f64bc`](https://github.com/mastra-ai/mastra/commit/22f64bc1d37149480b58bf2fefe35b79a1e3e7d5), [`83d5942`](https://github.com/mastra-ai/mastra/commit/83d5942669ce7bba4a6ca4fd4da697a10eb5ebdc), [`b7959e6`](https://github.com/mastra-ai/mastra/commit/b7959e6e25a46b480f9ea2217c4c6c588c423791), [`bda6370`](https://github.com/mastra-ai/mastra/commit/bda637009360649aaf579919e7873e33553c273e), [`d7acd8e`](https://github.com/mastra-ai/mastra/commit/d7acd8e987b5d7eff4fd98b0906c17c06a2e83d5), [`c7f1f7d`](https://github.com/mastra-ai/mastra/commit/c7f1f7d24f61f247f018cc2d1f33bf63212959a7), [`0bddc6d`](https://github.com/mastra-ai/mastra/commit/0bddc6d8dbd6f6008c0cba2e4960a2da75a55af1), [`735d8c1`](https://github.com/mastra-ai/mastra/commit/735d8c1c0d19fbc09e6f8b66cf41bc7655993838), [`acf322e`](https://github.com/mastra-ai/mastra/commit/acf322e0f1fd0189684cf529d91c694bea918a45), [`c942802`](https://github.com/mastra-ai/mastra/commit/c942802a477a925b01859a7b8688d4355715caaa), [`a0c8c1b`](https://github.com/mastra-ai/mastra/commit/a0c8c1b87d4fee252aebda73e8637fbe01d761c9), [`cc34739`](https://github.com/mastra-ai/mastra/commit/cc34739c34b6266a91bea561119240a7acf47887), [`c218bd3`](https://github.com/mastra-ai/mastra/commit/c218bd3759e32423735b04843a09404572631014), [`2c4438b`](https://github.com/mastra-ai/mastra/commit/2c4438b87817ab7eed818c7990fef010475af1a3), [`2b8893c`](https://github.com/mastra-ai/mastra/commit/2b8893cb108ef9acb72ee7835cd625610d2c1a4a), [`8e5c75b`](https://github.com/mastra-ai/mastra/commit/8e5c75bdb1d08a42d45309a4c72def4b6890230f), [`e59e0d3`](https://github.com/mastra-ai/mastra/commit/e59e0d32afb5fcf2c9f3c00c8f81f6c21d3a63fa), [`fa8409b`](https://github.com/mastra-ai/mastra/commit/fa8409bc39cfd8ba6643b9db5269b90b22e2a2f7), [`173c535`](https://github.com/mastra-ai/mastra/commit/173c535c0645b0da404fe09f003778f0b0d4e019)]:
1812
+ - @mastra/core@1.0.0-beta.0
80
1813
 
81
1814
  ## 0.22.2
82
1815