@mastra/server 1.33.0-alpha.7 → 1.33.0-alpha.9

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 (261) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/{api-schema-manifest-QMJFKSSQ.cjs → api-schema-manifest-DAVSYP7S.cjs} +6 -6
  3. package/dist/{api-schema-manifest-QMJFKSSQ.cjs.map → api-schema-manifest-DAVSYP7S.cjs.map} +1 -1
  4. package/dist/{api-schema-manifest-JLJ555JD.js → api-schema-manifest-XFGCTZQI.js} +4 -4
  5. package/dist/{api-schema-manifest-JLJ555JD.js.map → api-schema-manifest-XFGCTZQI.js.map} +1 -1
  6. package/dist/{chunk-WYQDPZNZ.cjs → chunk-22HQDEJS.cjs} +7 -7
  7. package/dist/{chunk-WYQDPZNZ.cjs.map → chunk-22HQDEJS.cjs.map} +1 -1
  8. package/dist/{chunk-GP45BMSR.js → chunk-23SS3KHR.js} +4 -4
  9. package/dist/{chunk-GP45BMSR.js.map → chunk-23SS3KHR.js.map} +1 -1
  10. package/dist/{chunk-B3CHYE7C.js → chunk-26XBPHLY.js} +3 -3
  11. package/dist/{chunk-B3CHYE7C.js.map → chunk-26XBPHLY.js.map} +1 -1
  12. package/dist/{chunk-WN62DURP.js → chunk-2CXXD77Z.js} +16 -13
  13. package/dist/chunk-2CXXD77Z.js.map +1 -0
  14. package/dist/{chunk-EWN5J4RH.js → chunk-2L4CZREW.js} +7 -7
  15. package/dist/{chunk-EWN5J4RH.js.map → chunk-2L4CZREW.js.map} +1 -1
  16. package/dist/{chunk-MAG4W3GZ.cjs → chunk-2PS73C7N.cjs} +8 -8
  17. package/dist/{chunk-MAG4W3GZ.cjs.map → chunk-2PS73C7N.cjs.map} +1 -1
  18. package/dist/{chunk-YQILRC5Y.cjs → chunk-2WN5INZT.cjs} +12 -12
  19. package/dist/{chunk-YQILRC5Y.cjs.map → chunk-2WN5INZT.cjs.map} +1 -1
  20. package/dist/{chunk-T3X7ZXVR.cjs → chunk-2XBOJWX6.cjs} +68 -68
  21. package/dist/{chunk-T3X7ZXVR.cjs.map → chunk-2XBOJWX6.cjs.map} +1 -1
  22. package/dist/{chunk-SX3C7B3A.cjs → chunk-3PVYHM4V.cjs} +29 -29
  23. package/dist/{chunk-SX3C7B3A.cjs.map → chunk-3PVYHM4V.cjs.map} +1 -1
  24. package/dist/{chunk-LRYHYARK.js → chunk-4BC5KLOR.js} +4 -4
  25. package/dist/{chunk-LRYHYARK.js.map → chunk-4BC5KLOR.js.map} +1 -1
  26. package/dist/{chunk-VZV7DUW7.cjs → chunk-4Z43J2NI.cjs} +13 -13
  27. package/dist/{chunk-VZV7DUW7.cjs.map → chunk-4Z43J2NI.cjs.map} +1 -1
  28. package/dist/chunk-5RJA64TI.cjs +636 -0
  29. package/dist/{chunk-7Y6MST2S.cjs.map → chunk-5RJA64TI.cjs.map} +1 -1
  30. package/dist/{chunk-TFJZGWXX.cjs → chunk-6P2SSFBG.cjs} +20 -20
  31. package/dist/{chunk-TFJZGWXX.cjs.map → chunk-6P2SSFBG.cjs.map} +1 -1
  32. package/dist/{chunk-6DAZZPVO.cjs → chunk-745QEKXS.cjs} +38 -38
  33. package/dist/{chunk-6DAZZPVO.cjs.map → chunk-745QEKXS.cjs.map} +1 -1
  34. package/dist/{chunk-DXZFPYNO.js → chunk-7I7FD6ZN.js} +5 -5
  35. package/dist/{chunk-DXZFPYNO.js.map → chunk-7I7FD6ZN.js.map} +1 -1
  36. package/dist/{chunk-GCR6GN77.js → chunk-7MJVRDXM.js} +8 -8
  37. package/dist/{chunk-GCR6GN77.js.map → chunk-7MJVRDXM.js.map} +1 -1
  38. package/dist/{chunk-7UMTLDZF.js → chunk-7QLWKUN5.js} +7 -7
  39. package/dist/{chunk-7UMTLDZF.js.map → chunk-7QLWKUN5.js.map} +1 -1
  40. package/dist/{chunk-SOH5VORA.js → chunk-7RLQ6356.js} +3 -3
  41. package/dist/{chunk-SOH5VORA.js.map → chunk-7RLQ6356.js.map} +1 -1
  42. package/dist/{chunk-NWD2SPUH.js → chunk-ABI3C4IO.js} +6 -6
  43. package/dist/{chunk-NWD2SPUH.js.map → chunk-ABI3C4IO.js.map} +1 -1
  44. package/dist/{chunk-34UYZN53.js → chunk-APFQBTJ4.js} +6 -6
  45. package/dist/{chunk-34UYZN53.js.map → chunk-APFQBTJ4.js.map} +1 -1
  46. package/dist/{chunk-Z7FXNI2N.cjs → chunk-ARXEAN4R.cjs} +53 -53
  47. package/dist/{chunk-Z7FXNI2N.cjs.map → chunk-ARXEAN4R.cjs.map} +1 -1
  48. package/dist/{chunk-C45QKFMT.js → chunk-B5IEITDG.js} +37 -37
  49. package/dist/{chunk-C45QKFMT.js.map → chunk-B5IEITDG.js.map} +1 -1
  50. package/dist/{chunk-ZOILZWQD.cjs → chunk-BFL6JXZ5.cjs} +6 -6
  51. package/dist/{chunk-ZOILZWQD.cjs.map → chunk-BFL6JXZ5.cjs.map} +1 -1
  52. package/dist/{chunk-6IR53OXN.js → chunk-BJLZSJMY.js} +5 -5
  53. package/dist/{chunk-6IR53OXN.js.map → chunk-BJLZSJMY.js.map} +1 -1
  54. package/dist/{chunk-5FHBVBU2.js → chunk-BVRJ7SIO.js} +4 -4
  55. package/dist/{chunk-5FHBVBU2.js.map → chunk-BVRJ7SIO.js.map} +1 -1
  56. package/dist/{chunk-CXWOBZOJ.cjs → chunk-BXCFRUU6.cjs} +17 -17
  57. package/dist/{chunk-CXWOBZOJ.cjs.map → chunk-BXCFRUU6.cjs.map} +1 -1
  58. package/dist/{chunk-KRMMYAXW.cjs → chunk-CIY3D5PJ.cjs} +11 -11
  59. package/dist/{chunk-KRMMYAXW.cjs.map → chunk-CIY3D5PJ.cjs.map} +1 -1
  60. package/dist/{chunk-TTJ3DYZH.cjs → chunk-D47RSSPG.cjs} +7 -7
  61. package/dist/{chunk-TTJ3DYZH.cjs.map → chunk-D47RSSPG.cjs.map} +1 -1
  62. package/dist/{chunk-IJFWBMHN.js → chunk-DCKEXVVR.js} +5 -5
  63. package/dist/{chunk-IJFWBMHN.js.map → chunk-DCKEXVVR.js.map} +1 -1
  64. package/dist/{chunk-WE5GUI23.js → chunk-DIGIMNZN.js} +3 -3
  65. package/dist/{chunk-WE5GUI23.js.map → chunk-DIGIMNZN.js.map} +1 -1
  66. package/dist/{chunk-C7Q5IMST.js → chunk-EDAQ2XMN.js} +3 -3
  67. package/dist/{chunk-C7Q5IMST.js.map → chunk-EDAQ2XMN.js.map} +1 -1
  68. package/dist/{chunk-AHKXIRNB.cjs → chunk-EOENI5I2.cjs} +109 -106
  69. package/dist/chunk-EOENI5I2.cjs.map +1 -0
  70. package/dist/{chunk-3EK2EVVE.js → chunk-F2D6QQYI.js} +5 -5
  71. package/dist/{chunk-3EK2EVVE.js.map → chunk-F2D6QQYI.js.map} +1 -1
  72. package/dist/{chunk-QJD675UA.js → chunk-GP65L3TF.js} +10 -8
  73. package/dist/chunk-GP65L3TF.js.map +1 -0
  74. package/dist/{chunk-Q3JFNANT.js → chunk-HCCJ4RDW.js} +5 -5
  75. package/dist/{chunk-Q3JFNANT.js.map → chunk-HCCJ4RDW.js.map} +1 -1
  76. package/dist/{chunk-4NPFEKIP.js → chunk-HLRHVRCC.js} +6 -6
  77. package/dist/{chunk-4NPFEKIP.js.map → chunk-HLRHVRCC.js.map} +1 -1
  78. package/dist/{chunk-JOUPK2UV.js → chunk-I4PTYMZO.js} +3 -3
  79. package/dist/{chunk-JOUPK2UV.js.map → chunk-I4PTYMZO.js.map} +1 -1
  80. package/dist/{chunk-MWXGGCHD.cjs → chunk-ICJHOMSN.cjs} +11 -11
  81. package/dist/{chunk-MWXGGCHD.cjs.map → chunk-ICJHOMSN.cjs.map} +1 -1
  82. package/dist/{chunk-MCS43WKI.cjs → chunk-IO6ZYBLC.cjs} +11 -11
  83. package/dist/{chunk-MCS43WKI.cjs.map → chunk-IO6ZYBLC.cjs.map} +1 -1
  84. package/dist/{chunk-GKN4IFE7.js → chunk-IOHENFKZ.js} +3 -3
  85. package/dist/{chunk-GKN4IFE7.js.map → chunk-IOHENFKZ.js.map} +1 -1
  86. package/dist/{chunk-BGRKLLHE.cjs → chunk-J62R54QE.cjs} +6 -6
  87. package/dist/{chunk-BGRKLLHE.cjs.map → chunk-J62R54QE.cjs.map} +1 -1
  88. package/dist/{chunk-ZO7SOILM.js → chunk-JHZ6A7UZ.js} +5 -5
  89. package/dist/{chunk-ZO7SOILM.js.map → chunk-JHZ6A7UZ.js.map} +1 -1
  90. package/dist/{chunk-KUBAQ732.cjs → chunk-JIHHJ4GI.cjs} +11 -11
  91. package/dist/{chunk-KUBAQ732.cjs.map → chunk-JIHHJ4GI.cjs.map} +1 -1
  92. package/dist/{chunk-HLDBO2H6.js → chunk-JSHKUN5Y.js} +3 -3
  93. package/dist/{chunk-HLDBO2H6.js.map → chunk-JSHKUN5Y.js.map} +1 -1
  94. package/dist/{chunk-STNEFHHA.js → chunk-KPK6F3OS.js} +6 -6
  95. package/dist/{chunk-STNEFHHA.js.map → chunk-KPK6F3OS.js.map} +1 -1
  96. package/dist/{chunk-VWBVA272.cjs → chunk-L4MG45WI.cjs} +5 -5
  97. package/dist/{chunk-VWBVA272.cjs.map → chunk-L4MG45WI.cjs.map} +1 -1
  98. package/dist/{chunk-AMZMBCKG.cjs → chunk-L7L75NRN.cjs} +11 -11
  99. package/dist/{chunk-AMZMBCKG.cjs.map → chunk-L7L75NRN.cjs.map} +1 -1
  100. package/dist/{chunk-6PJXFSA6.cjs → chunk-LA6ODA4O.cjs} +78 -78
  101. package/dist/{chunk-6PJXFSA6.cjs.map → chunk-LA6ODA4O.cjs.map} +1 -1
  102. package/dist/{chunk-NB7LJMYF.js → chunk-LNHVRSMV.js} +3 -3
  103. package/dist/{chunk-NB7LJMYF.js.map → chunk-LNHVRSMV.js.map} +1 -1
  104. package/dist/{chunk-S4L4CSQD.js → chunk-LRUC4D2Q.js} +3 -3
  105. package/dist/{chunk-S4L4CSQD.js.map → chunk-LRUC4D2Q.js.map} +1 -1
  106. package/dist/{chunk-BLK2XYVU.cjs → chunk-MJS57D3F.cjs} +12 -12
  107. package/dist/{chunk-BLK2XYVU.cjs.map → chunk-MJS57D3F.cjs.map} +1 -1
  108. package/dist/{chunk-YN57WYLS.cjs → chunk-N5VTBHLF.cjs} +11 -11
  109. package/dist/{chunk-YN57WYLS.cjs.map → chunk-N5VTBHLF.cjs.map} +1 -1
  110. package/dist/{chunk-PYT4SLHO.js → chunk-NBYC7LRK.js} +3 -3
  111. package/dist/{chunk-PYT4SLHO.js.map → chunk-NBYC7LRK.js.map} +1 -1
  112. package/dist/{chunk-KFEM2S5D.cjs → chunk-NFY5I7J7.cjs} +12 -12
  113. package/dist/{chunk-KFEM2S5D.cjs.map → chunk-NFY5I7J7.cjs.map} +1 -1
  114. package/dist/{chunk-RVAPXLP2.js → chunk-NG6ETDLL.js} +3 -3
  115. package/dist/{chunk-RVAPXLP2.js.map → chunk-NG6ETDLL.js.map} +1 -1
  116. package/dist/{chunk-3OTCA7TP.js → chunk-NKCUF5ZH.js} +3 -3
  117. package/dist/{chunk-3OTCA7TP.js.map → chunk-NKCUF5ZH.js.map} +1 -1
  118. package/dist/{chunk-ICJ2ZVI2.cjs → chunk-OJFDLVAO.cjs} +13 -13
  119. package/dist/{chunk-ICJ2ZVI2.cjs.map → chunk-OJFDLVAO.cjs.map} +1 -1
  120. package/dist/{chunk-HYYXUP35.cjs → chunk-PJDFXAOL.cjs} +2 -2
  121. package/dist/{chunk-HYYXUP35.cjs.map → chunk-PJDFXAOL.cjs.map} +1 -1
  122. package/dist/{chunk-UMXIU6E3.cjs → chunk-Q4MVDWQP.cjs} +7 -7
  123. package/dist/{chunk-UMXIU6E3.cjs.map → chunk-Q4MVDWQP.cjs.map} +1 -1
  124. package/dist/{chunk-HFF6QRLL.cjs → chunk-QISQJJPS.cjs} +6 -6
  125. package/dist/{chunk-HFF6QRLL.cjs.map → chunk-QISQJJPS.cjs.map} +1 -1
  126. package/dist/{chunk-VESPCO5X.js → chunk-QNVSISW7.js} +4 -4
  127. package/dist/{chunk-VESPCO5X.js.map → chunk-QNVSISW7.js.map} +1 -1
  128. package/dist/{chunk-SYDZFUZI.js → chunk-QQVZ6MBB.js} +4 -4
  129. package/dist/{chunk-SYDZFUZI.js.map → chunk-QQVZ6MBB.js.map} +1 -1
  130. package/dist/{chunk-PM3UPQWH.cjs → chunk-QYUEG7GK.cjs} +13 -13
  131. package/dist/{chunk-PM3UPQWH.cjs.map → chunk-QYUEG7GK.cjs.map} +1 -1
  132. package/dist/{chunk-2S4WCY5N.js → chunk-RIDGG66B.js} +4 -4
  133. package/dist/{chunk-2S4WCY5N.js.map → chunk-RIDGG66B.js.map} +1 -1
  134. package/dist/{chunk-E74QCKFN.cjs → chunk-RLG4SNKV.cjs} +6 -6
  135. package/dist/{chunk-E74QCKFN.cjs.map → chunk-RLG4SNKV.cjs.map} +1 -1
  136. package/dist/{chunk-WLDDOYXP.cjs → chunk-RSEAK6CZ.cjs} +12 -12
  137. package/dist/{chunk-WLDDOYXP.cjs.map → chunk-RSEAK6CZ.cjs.map} +1 -1
  138. package/dist/{chunk-OAE7ZFYO.cjs → chunk-SAO5OUDV.cjs} +25 -25
  139. package/dist/{chunk-OAE7ZFYO.cjs.map → chunk-SAO5OUDV.cjs.map} +1 -1
  140. package/dist/{chunk-ZSGVBBC4.js → chunk-SJMLVGDJ.js} +4 -4
  141. package/dist/{chunk-ZSGVBBC4.js.map → chunk-SJMLVGDJ.js.map} +1 -1
  142. package/dist/{chunk-PX7NE2KG.js → chunk-T2JGWULY.js} +6 -6
  143. package/dist/{chunk-PX7NE2KG.js.map → chunk-T2JGWULY.js.map} +1 -1
  144. package/dist/{chunk-7QLLMDX3.js → chunk-TGX2KAGG.js} +6 -6
  145. package/dist/{chunk-7QLLMDX3.js.map → chunk-TGX2KAGG.js.map} +1 -1
  146. package/dist/{chunk-6ICH4PZY.cjs → chunk-TKL3TH2H.cjs} +17 -17
  147. package/dist/{chunk-6ICH4PZY.cjs.map → chunk-TKL3TH2H.cjs.map} +1 -1
  148. package/dist/{chunk-HCIKFLLE.js → chunk-VMF4AV2C.js} +2 -2
  149. package/dist/{chunk-HCIKFLLE.js.map → chunk-VMF4AV2C.js.map} +1 -1
  150. package/dist/{chunk-72W42JL4.cjs → chunk-VZXZYFJQ.cjs} +3 -3
  151. package/dist/{chunk-72W42JL4.cjs.map → chunk-VZXZYFJQ.cjs.map} +1 -1
  152. package/dist/{chunk-XUFBFMUU.cjs → chunk-W5EXV5QT.cjs} +24 -24
  153. package/dist/{chunk-XUFBFMUU.cjs.map → chunk-W5EXV5QT.cjs.map} +1 -1
  154. package/dist/{chunk-OAWMKZCM.cjs → chunk-WS74GHGL.cjs} +12 -12
  155. package/dist/{chunk-OAWMKZCM.cjs.map → chunk-WS74GHGL.cjs.map} +1 -1
  156. package/dist/{chunk-AWXCTLMK.cjs → chunk-WSGBL2OF.cjs} +11 -11
  157. package/dist/{chunk-AWXCTLMK.cjs.map → chunk-WSGBL2OF.cjs.map} +1 -1
  158. package/dist/{chunk-7UYUFWJS.js → chunk-Y2D4IW6S.js} +9 -9
  159. package/dist/{chunk-7UYUFWJS.js.map → chunk-Y2D4IW6S.js.map} +1 -1
  160. package/dist/{chunk-VGNQKFWM.js → chunk-YMITHLC7.js} +4 -4
  161. package/dist/{chunk-VGNQKFWM.js.map → chunk-YMITHLC7.js.map} +1 -1
  162. package/dist/{chunk-E55OUW7R.js → chunk-YOLWJGGN.js} +7 -7
  163. package/dist/{chunk-E55OUW7R.js.map → chunk-YOLWJGGN.js.map} +1 -1
  164. package/dist/{chunk-HN23LS75.cjs → chunk-YTRLYSPD.cjs} +89 -89
  165. package/dist/{chunk-HN23LS75.cjs.map → chunk-YTRLYSPD.cjs.map} +1 -1
  166. package/dist/{chunk-FST7LM2Z.cjs → chunk-YYTMNPB7.cjs} +10 -8
  167. package/dist/chunk-YYTMNPB7.cjs.map +1 -0
  168. package/dist/{chunk-7MXANTMR.cjs → chunk-ZWAO22PF.cjs} +12 -12
  169. package/dist/{chunk-7MXANTMR.cjs.map → chunk-ZWAO22PF.cjs.map} +1 -1
  170. package/dist/docs/SKILL.md +1 -1
  171. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  172. package/dist/{observational-memory-IP2RVQQG-5IHDRYAB.cjs → observational-memory-2PRVG6BF-3V6S3B2J.cjs} +26 -26
  173. package/dist/{observational-memory-IP2RVQQG-5IHDRYAB.cjs.map → observational-memory-2PRVG6BF-3V6S3B2J.cjs.map} +1 -1
  174. package/dist/{observational-memory-IP2RVQQG-DIZILT73.js → observational-memory-2PRVG6BF-4MT3GXPA.js} +3 -3
  175. package/dist/{observational-memory-IP2RVQQG-DIZILT73.js.map → observational-memory-2PRVG6BF-4MT3GXPA.js.map} +1 -1
  176. package/dist/server/handlers/a2a.cjs +14 -14
  177. package/dist/server/handlers/a2a.js +1 -1
  178. package/dist/server/handlers/agent-builder.cjs +16 -16
  179. package/dist/server/handlers/agent-builder.js +1 -1
  180. package/dist/server/handlers/agent-versions.cjs +8 -8
  181. package/dist/server/handlers/agent-versions.js +1 -1
  182. package/dist/server/handlers/agents.cjs +39 -39
  183. package/dist/server/handlers/agents.js +1 -1
  184. package/dist/server/handlers/auth.cjs +11 -11
  185. package/dist/server/handlers/auth.js +1 -1
  186. package/dist/server/handlers/background-tasks.cjs +4 -4
  187. package/dist/server/handlers/background-tasks.js +1 -1
  188. package/dist/server/handlers/channels.cjs +5 -5
  189. package/dist/server/handlers/channels.js +1 -1
  190. package/dist/server/handlers/conversations.cjs +5 -5
  191. package/dist/server/handlers/conversations.js +1 -1
  192. package/dist/server/handlers/datasets.cjs +26 -26
  193. package/dist/server/handlers/datasets.js +1 -1
  194. package/dist/server/handlers/logs.cjs +4 -4
  195. package/dist/server/handlers/logs.js +1 -1
  196. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  197. package/dist/server/handlers/mcp-client-versions.js +1 -1
  198. package/dist/server/handlers/mcp.cjs +11 -11
  199. package/dist/server/handlers/mcp.js +1 -1
  200. package/dist/server/handlers/memory.cjs +27 -27
  201. package/dist/server/handlers/memory.js +1 -1
  202. package/dist/server/handlers/observability-new-endpoints.cjs +28 -28
  203. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  204. package/dist/server/handlers/observability.cjs +38 -38
  205. package/dist/server/handlers/observability.js +2 -2
  206. package/dist/server/handlers/processor-providers.cjs +3 -3
  207. package/dist/server/handlers/processor-providers.js +1 -1
  208. package/dist/server/handlers/processors.cjs +4 -4
  209. package/dist/server/handlers/processors.js +1 -1
  210. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  211. package/dist/server/handlers/prompt-block-versions.js +1 -1
  212. package/dist/server/handlers/responses.cjs +4 -4
  213. package/dist/server/handlers/responses.js +1 -1
  214. package/dist/server/handlers/responses.storage.cjs +8 -8
  215. package/dist/server/handlers/responses.storage.js +1 -1
  216. package/dist/server/handlers/schedules.cjs +6 -6
  217. package/dist/server/handlers/schedules.js +1 -1
  218. package/dist/server/handlers/scorer-versions.cjs +8 -8
  219. package/dist/server/handlers/scorer-versions.js +1 -1
  220. package/dist/server/handlers/scores.cjs +7 -7
  221. package/dist/server/handlers/scores.js +1 -1
  222. package/dist/server/handlers/stored-agents.cjs +7 -7
  223. package/dist/server/handlers/stored-agents.js +1 -1
  224. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  225. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  226. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  227. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  228. package/dist/server/handlers/stored-scorers.cjs +6 -6
  229. package/dist/server/handlers/stored-scorers.js +1 -1
  230. package/dist/server/handlers/stored-skills.cjs +7 -7
  231. package/dist/server/handlers/stored-skills.js +1 -1
  232. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  233. package/dist/server/handlers/stored-workspaces.js +1 -1
  234. package/dist/server/handlers/system.cjs +3 -3
  235. package/dist/server/handlers/system.js +1 -1
  236. package/dist/server/handlers/tool-providers.cjs +5 -5
  237. package/dist/server/handlers/tool-providers.js +1 -1
  238. package/dist/server/handlers/tools.cjs +6 -6
  239. package/dist/server/handlers/tools.js +1 -1
  240. package/dist/server/handlers/utils.cjs +10 -10
  241. package/dist/server/handlers/utils.js +1 -1
  242. package/dist/server/handlers/vector.cjs +16 -16
  243. package/dist/server/handlers/vector.js +1 -1
  244. package/dist/server/handlers/voice.cjs +8 -8
  245. package/dist/server/handlers/voice.js +1 -1
  246. package/dist/server/handlers/workflows.cjs +26 -26
  247. package/dist/server/handlers/workflows.js +1 -1
  248. package/dist/server/handlers/workspace.cjs +26 -26
  249. package/dist/server/handlers/workspace.js +1 -1
  250. package/dist/server/handlers.cjs +39 -39
  251. package/dist/server/handlers.js +15 -15
  252. package/dist/server/schemas/index.cjs +185 -185
  253. package/dist/server/schemas/index.js +5 -5
  254. package/dist/server/server-adapter/index.cjs +39 -39
  255. package/dist/server/server-adapter/index.js +7 -7
  256. package/package.json +6 -6
  257. package/dist/chunk-7Y6MST2S.cjs +0 -636
  258. package/dist/chunk-AHKXIRNB.cjs.map +0 -1
  259. package/dist/chunk-FST7LM2Z.cjs.map +0 -1
  260. package/dist/chunk-QJD675UA.js.map +0 -1
  261. package/dist/chunk-WN62DURP.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/observability.ts"],"names":[],"mappings":"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","file":"chunk-ZO7SOILM.js","sourcesContent":["import type { Mastra } from '@mastra/core';\nimport { extractTrajectoryFromTrace, listScoresResponseSchema } from '@mastra/core/evals';\nimport { scoreTraces } from '@mastra/core/evals/scoreTraces';\nimport type { ScoresStorage } from '@mastra/core/storage';\nimport {\n tracesFilterSchema,\n tracesOrderBySchema,\n paginationArgsSchema,\n spanIdsSchema,\n listTracesResponseSchema,\n scoreTracesRequestSchema,\n scoreTracesResponseSchema,\n getTraceArgsSchema,\n getTraceResponseSchema,\n getTraceLightResponseSchema,\n getSpanArgsSchema,\n getSpanResponseSchema,\n dateRangeSchema,\n} from '@mastra/core/storage';\n// `branches*`, `listBranches*`, and `getBranch*` schemas are new in\n// @mastra/core@1.32.0; route them through a shim that tolerates older cores\n// (see ./observability-storage-schemas.ts for full rationale).\nimport { z } from 'zod/v4';\nimport { HTTPException } from '../http-exception';\nimport { createRoute, pickParams, wrapSchemaForQueryParams } from '../server-adapter/routes/route-builder';\nimport { handleError } from './error';\nimport { getObservabilityStore, getStorage } from './observability-shared';\nimport {\n branchesFilterSchema,\n branchesOrderBySchema,\n listBranchesResponseSchema,\n getBranchArgsSchema,\n getBranchResponseSchema,\n} from './observability-storage-schemas';\n\nexport * from './observability-new-endpoints';\n\n// ============================================================================\n// Legacy Parameter Support (backward compatibility with main branch API)\n// ============================================================================\n\n/**\n * Legacy query parameters from the old API (main branch).\n * These are accepted for backward compatibility and transformed to new format.\n */\nconst legacyQueryParamsSchema = z.object({\n // Old: dateRange was in pagination, now it's startedAt in filters\n dateRange: dateRangeSchema.optional(),\n // Old: name matched span names like \"agent run: 'myAgent'\"\n name: z.string().optional(),\n // entityType needs preprocessing to handle legacy 'workflow' value\n entityType: z.preprocess(val => (val === 'workflow' ? 'workflow_run' : val), z.string().optional()),\n});\n\n/**\n * Transforms legacy query parameters to the new format.\n * - dateRange -> startedAt (if startedAt not already set)\n * - name=\"agent run: 'x'\" -> entityId='x', entityType='agent'\n * - name=\"workflow run: 'x'\" -> entityId='x', entityType='workflow_run'\n * - entityType='workflow' -> entityType='workflow_run' (enum value fix)\n */\nfunction transformLegacyParams(params: Record<string, unknown>): Record<string, unknown> {\n const result = { ...params };\n\n // Transform old entityType='workflow' -> 'workflow_run' to support direct handler usage in tests\n if (result.entityType === 'workflow') {\n result.entityType = 'workflow_run';\n }\n\n // Transform old dateRange -> new startedAt\n if (params.dateRange && !params.startedAt) {\n result.startedAt = params.dateRange;\n delete result.dateRange;\n }\n\n // Transform old name -> entityId + entityType\n // Old format: name matched span names like \"agent run: 'myAgent'\" or \"workflow run: 'myWorkflow'\"\n if (typeof params.name === 'string' && !params.entityId) {\n const agentMatch = params.name.match(/^agent run: '([^']+)'$/);\n const workflowMatch = params.name.match(/^workflow run: '([^']+)'$/);\n\n if (agentMatch) {\n result.entityId = agentMatch[1];\n result.entityType = 'agent';\n } else if (workflowMatch) {\n result.entityId = workflowMatch[1];\n result.entityType = 'workflow_run';\n }\n delete result.name;\n }\n\n return result;\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nasync function getScoresStore(mastra: Mastra): Promise<ScoresStorage> {\n const storage = getStorage(mastra);\n const scores = await storage.getStore('scores');\n if (!scores) {\n throw new HTTPException(500, { message: 'Scores storage domain is not available' });\n }\n return scores;\n}\n\n/** Route: GET /observability/traces - paginated trace listing with filtering and sorting. */\nexport const LIST_TRACES_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces',\n responseType: 'json',\n queryParamSchema: wrapSchemaForQueryParams(\n tracesFilterSchema\n .extend(paginationArgsSchema.shape)\n .extend(tracesOrderBySchema.shape)\n .extend(legacyQueryParamsSchema.shape) // Accept legacy params for backward compatibility\n .partial(),\n ),\n responseSchema: listTracesResponseSchema,\n summary: 'List traces',\n description: 'Returns a paginated list of traces with optional filtering and sorting',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n // Transform legacy params to new format before processing\n const transformedParams = transformLegacyParams(params);\n\n const filters = pickParams(tracesFilterSchema, transformedParams);\n const pagination = pickParams(paginationArgsSchema, transformedParams);\n const orderBy = pickParams(tracesOrderBySchema, transformedParams);\n\n const observabilityStore = await getObservabilityStore(mastra);\n return await observabilityStore.listTraces({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing traces');\n }\n },\n});\n\n/** Route: GET /observability/branches - paginated branch-anchor span listing across all traces. */\nexport const LIST_BRANCHES_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/branches',\n responseType: 'json',\n queryParamSchema: wrapSchemaForQueryParams(\n branchesFilterSchema.extend(paginationArgsSchema.shape).extend(branchesOrderBySchema.shape).partial(),\n ),\n responseSchema: listBranchesResponseSchema,\n summary: 'List trace branches',\n description:\n 'Returns a paginated list of branch-anchor spans (e.g., AGENT_RUN, WORKFLOW_RUN, TOOL_CALL) across all traces. Unlike listTraces (one row per root-rooted trace), each row here is a single anchor span -- including ones nested under a different root entity.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const filters = pickParams(branchesFilterSchema, params);\n const pagination = pickParams(paginationArgsSchema, params);\n const orderBy = pickParams(branchesOrderBySchema, params);\n\n const observabilityStore = await getObservabilityStore(mastra);\n return await observabilityStore.listBranches({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing branches');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/branches/:spanId - retrieve the subtree rooted at a span. */\nexport const GET_BRANCH_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/branches/:spanId',\n responseType: 'json',\n pathParamSchema: getBranchArgsSchema.pick({ traceId: true, spanId: true }),\n queryParamSchema: wrapSchemaForQueryParams(getBranchArgsSchema.pick({ depth: true })),\n responseSchema: getBranchResponseSchema,\n summary: 'Get trace branch by span ID',\n description:\n 'Returns the subtree of spans rooted at the given span. The optional `depth` query param bounds descendant levels below the anchor (0 = anchor only; omitted = full subtree).',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId, spanId, depth }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const branch = await observabilityStore.getBranch({ traceId, spanId, depth });\n\n if (!branch) {\n throw new HTTPException(404, { message: `Branch not found for span '${spanId}' in trace '${traceId}'` });\n }\n\n return branch;\n } catch (error) {\n return handleError(error, 'Error getting branch');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId - retrieve a single trace with all spans. */\nexport const GET_TRACE_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: getTraceResponseSchema,\n summary: 'Get AI trace by ID',\n description: 'Returns a complete AI trace with all spans by trace ID',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTrace({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n return trace;\n } catch (error) {\n return handleError(error, 'Error getting trace');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/light - lightweight trace for timeline rendering. */\nexport const GET_TRACE_LIGHT_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/light',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: getTraceLightResponseSchema,\n summary: 'Get lightweight AI trace by ID',\n description:\n 'Returns a trace with lightweight span data (timeline fields only, excludes input/output/attributes/metadata/tags/links)',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTraceLight({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n return trace;\n } catch (error) {\n return handleError(error, 'Error getting lightweight trace');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/spans/:spanId - get a single span with full details. */\nexport const GET_SPAN_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/spans/:spanId',\n responseType: 'json',\n pathParamSchema: getSpanArgsSchema,\n responseSchema: getSpanResponseSchema,\n summary: 'Get a single span by ID',\n description: 'Returns a complete span record with all details by trace ID and span ID',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId, spanId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const span = await observabilityStore.getSpan({ traceId, spanId });\n\n if (!span) {\n throw new HTTPException(404, { message: `Span not found` });\n }\n\n return span;\n } catch (error) {\n return handleError(error, 'Error getting span');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/trajectory - extract trajectory from a trace. */\nexport const GET_TRACE_TRAJECTORY_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/trajectory',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: z.object({\n steps: z.array(z.unknown()),\n totalDurationMs: z.number().optional(),\n rawOutput: z.unknown().optional(),\n rawWorkflowResult: z.unknown().optional(),\n }),\n summary: 'Extract trajectory from trace',\n description: 'Extracts a structured trajectory (ordered steps) from a trace by analyzing its spans',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTrace({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n const trajectory = extractTrajectoryFromTrace(trace.spans);\n return trajectory;\n } catch (error) {\n return handleError(error, 'Error extracting trajectory from trace');\n }\n },\n});\n\n/** Route: POST /observability/traces/score - score traces using a specified scorer (fire-and-forget). */\nexport const SCORE_TRACES_ROUTE = createRoute({\n method: 'POST',\n path: '/observability/traces/score',\n responseType: 'json',\n bodySchema: scoreTracesRequestSchema,\n responseSchema: scoreTracesResponseSchema,\n summary: 'Score traces',\n description: 'Scores one or more traces using a specified scorer (fire-and-forget)',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n // Validate storage exists before starting background task\n getStorage(mastra);\n\n const { scorerName, targets } = params;\n\n const scorer = mastra.getScorerById(scorerName);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer '${scorerName}' not found` });\n }\n\n scoreTraces({\n scorerId: scorer.config.id || scorer.config.name,\n targets,\n mastra,\n }).catch(error => {\n const logger = mastra.getLogger();\n logger?.error(`Background trace scoring failed: ${error.message}`, error);\n });\n\n return {\n status: 'success',\n message: `Scoring started for ${targets.length} ${targets.length === 1 ? 'trace' : 'traces'}`,\n traceCount: targets.length,\n };\n } catch (error) {\n return handleError(error, 'Error processing trace scoring');\n }\n },\n});\n\nexport const LIST_SCORES_BY_SPAN_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/:spanId/scores',\n responseType: 'json',\n pathParamSchema: spanIdsSchema,\n // List endpoints accept optional query params; use partial() to allow empty queries.\n queryParamSchema: wrapSchemaForQueryParams(paginationArgsSchema.partial()),\n responseSchema: listScoresResponseSchema,\n summary: 'List scores by span',\n description: 'Returns all scores for a specific span within a trace',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const pagination = pickParams(paginationArgsSchema, params);\n const spanIds = pickParams(spanIdsSchema, params);\n\n const scoresStore = await getScoresStore(mastra);\n\n return await scoresStore.listScoresBySpan({\n ...spanIds,\n pagination,\n });\n } catch (error) {\n return handleError(error, 'Error getting scores by span');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/observability.ts"],"names":[],"mappings":"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","file":"chunk-JHZ6A7UZ.js","sourcesContent":["import type { Mastra } from '@mastra/core';\nimport { extractTrajectoryFromTrace, listScoresResponseSchema } from '@mastra/core/evals';\nimport { scoreTraces } from '@mastra/core/evals/scoreTraces';\nimport type { ScoresStorage } from '@mastra/core/storage';\nimport {\n tracesFilterSchema,\n tracesOrderBySchema,\n paginationArgsSchema,\n spanIdsSchema,\n listTracesResponseSchema,\n scoreTracesRequestSchema,\n scoreTracesResponseSchema,\n getTraceArgsSchema,\n getTraceResponseSchema,\n getTraceLightResponseSchema,\n getSpanArgsSchema,\n getSpanResponseSchema,\n dateRangeSchema,\n} from '@mastra/core/storage';\n// `branches*`, `listBranches*`, and `getBranch*` schemas are new in\n// @mastra/core@1.32.0; route them through a shim that tolerates older cores\n// (see ./observability-storage-schemas.ts for full rationale).\nimport { z } from 'zod/v4';\nimport { HTTPException } from '../http-exception';\nimport { createRoute, pickParams, wrapSchemaForQueryParams } from '../server-adapter/routes/route-builder';\nimport { handleError } from './error';\nimport { getObservabilityStore, getStorage } from './observability-shared';\nimport {\n branchesFilterSchema,\n branchesOrderBySchema,\n listBranchesResponseSchema,\n getBranchArgsSchema,\n getBranchResponseSchema,\n} from './observability-storage-schemas';\n\nexport * from './observability-new-endpoints';\n\n// ============================================================================\n// Legacy Parameter Support (backward compatibility with main branch API)\n// ============================================================================\n\n/**\n * Legacy query parameters from the old API (main branch).\n * These are accepted for backward compatibility and transformed to new format.\n */\nconst legacyQueryParamsSchema = z.object({\n // Old: dateRange was in pagination, now it's startedAt in filters\n dateRange: dateRangeSchema.optional(),\n // Old: name matched span names like \"agent run: 'myAgent'\"\n name: z.string().optional(),\n // entityType needs preprocessing to handle legacy 'workflow' value\n entityType: z.preprocess(val => (val === 'workflow' ? 'workflow_run' : val), z.string().optional()),\n});\n\n/**\n * Transforms legacy query parameters to the new format.\n * - dateRange -> startedAt (if startedAt not already set)\n * - name=\"agent run: 'x'\" -> entityId='x', entityType='agent'\n * - name=\"workflow run: 'x'\" -> entityId='x', entityType='workflow_run'\n * - entityType='workflow' -> entityType='workflow_run' (enum value fix)\n */\nfunction transformLegacyParams(params: Record<string, unknown>): Record<string, unknown> {\n const result = { ...params };\n\n // Transform old entityType='workflow' -> 'workflow_run' to support direct handler usage in tests\n if (result.entityType === 'workflow') {\n result.entityType = 'workflow_run';\n }\n\n // Transform old dateRange -> new startedAt\n if (params.dateRange && !params.startedAt) {\n result.startedAt = params.dateRange;\n delete result.dateRange;\n }\n\n // Transform old name -> entityId + entityType\n // Old format: name matched span names like \"agent run: 'myAgent'\" or \"workflow run: 'myWorkflow'\"\n if (typeof params.name === 'string' && !params.entityId) {\n const agentMatch = params.name.match(/^agent run: '([^']+)'$/);\n const workflowMatch = params.name.match(/^workflow run: '([^']+)'$/);\n\n if (agentMatch) {\n result.entityId = agentMatch[1];\n result.entityType = 'agent';\n } else if (workflowMatch) {\n result.entityId = workflowMatch[1];\n result.entityType = 'workflow_run';\n }\n delete result.name;\n }\n\n return result;\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nasync function getScoresStore(mastra: Mastra): Promise<ScoresStorage> {\n const storage = getStorage(mastra);\n const scores = await storage.getStore('scores');\n if (!scores) {\n throw new HTTPException(500, { message: 'Scores storage domain is not available' });\n }\n return scores;\n}\n\n/** Route: GET /observability/traces - paginated trace listing with filtering and sorting. */\nexport const LIST_TRACES_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces',\n responseType: 'json',\n queryParamSchema: wrapSchemaForQueryParams(\n tracesFilterSchema\n .extend(paginationArgsSchema.shape)\n .extend(tracesOrderBySchema.shape)\n .extend(legacyQueryParamsSchema.shape) // Accept legacy params for backward compatibility\n .partial(),\n ),\n responseSchema: listTracesResponseSchema,\n summary: 'List traces',\n description: 'Returns a paginated list of traces with optional filtering and sorting',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n // Transform legacy params to new format before processing\n const transformedParams = transformLegacyParams(params);\n\n const filters = pickParams(tracesFilterSchema, transformedParams);\n const pagination = pickParams(paginationArgsSchema, transformedParams);\n const orderBy = pickParams(tracesOrderBySchema, transformedParams);\n\n const observabilityStore = await getObservabilityStore(mastra);\n return await observabilityStore.listTraces({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing traces');\n }\n },\n});\n\n/** Route: GET /observability/branches - paginated branch-anchor span listing across all traces. */\nexport const LIST_BRANCHES_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/branches',\n responseType: 'json',\n queryParamSchema: wrapSchemaForQueryParams(\n branchesFilterSchema.extend(paginationArgsSchema.shape).extend(branchesOrderBySchema.shape).partial(),\n ),\n responseSchema: listBranchesResponseSchema,\n summary: 'List trace branches',\n description:\n 'Returns a paginated list of branch-anchor spans (e.g., AGENT_RUN, WORKFLOW_RUN, TOOL_CALL) across all traces. Unlike listTraces (one row per root-rooted trace), each row here is a single anchor span -- including ones nested under a different root entity.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const filters = pickParams(branchesFilterSchema, params);\n const pagination = pickParams(paginationArgsSchema, params);\n const orderBy = pickParams(branchesOrderBySchema, params);\n\n const observabilityStore = await getObservabilityStore(mastra);\n return await observabilityStore.listBranches({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing branches');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/branches/:spanId - retrieve the subtree rooted at a span. */\nexport const GET_BRANCH_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/branches/:spanId',\n responseType: 'json',\n pathParamSchema: getBranchArgsSchema.pick({ traceId: true, spanId: true }),\n queryParamSchema: wrapSchemaForQueryParams(getBranchArgsSchema.pick({ depth: true })),\n responseSchema: getBranchResponseSchema,\n summary: 'Get trace branch by span ID',\n description:\n 'Returns the subtree of spans rooted at the given span. The optional `depth` query param bounds descendant levels below the anchor (0 = anchor only; omitted = full subtree).',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId, spanId, depth }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const branch = await observabilityStore.getBranch({ traceId, spanId, depth });\n\n if (!branch) {\n throw new HTTPException(404, { message: `Branch not found for span '${spanId}' in trace '${traceId}'` });\n }\n\n return branch;\n } catch (error) {\n return handleError(error, 'Error getting branch');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId - retrieve a single trace with all spans. */\nexport const GET_TRACE_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: getTraceResponseSchema,\n summary: 'Get AI trace by ID',\n description: 'Returns a complete AI trace with all spans by trace ID',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTrace({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n return trace;\n } catch (error) {\n return handleError(error, 'Error getting trace');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/light - lightweight trace for timeline rendering. */\nexport const GET_TRACE_LIGHT_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/light',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: getTraceLightResponseSchema,\n summary: 'Get lightweight AI trace by ID',\n description:\n 'Returns a trace with lightweight span data (timeline fields only, excludes input/output/attributes/metadata/tags/links)',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTraceLight({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n return trace;\n } catch (error) {\n return handleError(error, 'Error getting lightweight trace');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/spans/:spanId - get a single span with full details. */\nexport const GET_SPAN_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/spans/:spanId',\n responseType: 'json',\n pathParamSchema: getSpanArgsSchema,\n responseSchema: getSpanResponseSchema,\n summary: 'Get a single span by ID',\n description: 'Returns a complete span record with all details by trace ID and span ID',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId, spanId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const span = await observabilityStore.getSpan({ traceId, spanId });\n\n if (!span) {\n throw new HTTPException(404, { message: `Span not found` });\n }\n\n return span;\n } catch (error) {\n return handleError(error, 'Error getting span');\n }\n },\n});\n\n/** Route: GET /observability/traces/:traceId/trajectory - extract trajectory from a trace. */\nexport const GET_TRACE_TRAJECTORY_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/trajectory',\n responseType: 'json',\n pathParamSchema: getTraceArgsSchema,\n responseSchema: z.object({\n steps: z.array(z.unknown()),\n totalDurationMs: z.number().optional(),\n rawOutput: z.unknown().optional(),\n rawWorkflowResult: z.unknown().optional(),\n }),\n summary: 'Extract trajectory from trace',\n description: 'Extracts a structured trajectory (ordered steps) from a trace by analyzing its spans',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, traceId }) => {\n try {\n const observabilityStore = await getObservabilityStore(mastra);\n const trace = await observabilityStore.getTrace({ traceId });\n\n if (!trace) {\n throw new HTTPException(404, { message: `Trace with ID '${traceId}' not found` });\n }\n\n const trajectory = extractTrajectoryFromTrace(trace.spans);\n return trajectory;\n } catch (error) {\n return handleError(error, 'Error extracting trajectory from trace');\n }\n },\n});\n\n/** Route: POST /observability/traces/score - score traces using a specified scorer (fire-and-forget). */\nexport const SCORE_TRACES_ROUTE = createRoute({\n method: 'POST',\n path: '/observability/traces/score',\n responseType: 'json',\n bodySchema: scoreTracesRequestSchema,\n responseSchema: scoreTracesResponseSchema,\n summary: 'Score traces',\n description: 'Scores one or more traces using a specified scorer (fire-and-forget)',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n // Validate storage exists before starting background task\n getStorage(mastra);\n\n const { scorerName, targets } = params;\n\n const scorer = mastra.getScorerById(scorerName);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer '${scorerName}' not found` });\n }\n\n scoreTraces({\n scorerId: scorer.config.id || scorer.config.name,\n targets,\n mastra,\n }).catch(error => {\n const logger = mastra.getLogger();\n logger?.error(`Background trace scoring failed: ${error.message}`, error);\n });\n\n return {\n status: 'success',\n message: `Scoring started for ${targets.length} ${targets.length === 1 ? 'trace' : 'traces'}`,\n traceCount: targets.length,\n };\n } catch (error) {\n return handleError(error, 'Error processing trace scoring');\n }\n },\n});\n\nexport const LIST_SCORES_BY_SPAN_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/:traceId/:spanId/scores',\n responseType: 'json',\n pathParamSchema: spanIdsSchema,\n // List endpoints accept optional query params; use partial() to allow empty queries.\n queryParamSchema: wrapSchemaForQueryParams(paginationArgsSchema.partial()),\n responseSchema: listScoresResponseSchema,\n summary: 'List scores by span',\n description: 'Returns all scores for a specific span within a trace',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const pagination = pickParams(paginationArgsSchema, params);\n const spanIds = pickParams(spanIdsSchema, params);\n\n const scoresStore = await getScoresStore(mastra);\n\n return await scoresStore.listScoresBySpan({\n ...spanIds,\n pagination,\n });\n } catch (error) {\n return handleError(error, 'Error getting scores by span');\n }\n },\n});\n"]}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkCIPZ4VOZ_cjs = require('./chunk-CIPZ4VOZ.cjs');
4
3
  var chunk2XZ2466F_cjs = require('./chunk-2XZ2466F.cjs');
5
- var chunkHYYXUP35_cjs = require('./chunk-HYYXUP35.cjs');
4
+ var chunkCIPZ4VOZ_cjs = require('./chunk-CIPZ4VOZ.cjs');
6
5
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
6
+ var chunkPJDFXAOL_cjs = require('./chunk-PJDFXAOL.cjs');
7
7
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
8
8
 
9
9
  // src/server/handlers/scorer-versions.ts
@@ -17,7 +17,7 @@ var SNAPSHOT_CONFIG_FIELDS = [
17
17
  "presetConfig",
18
18
  "defaultSampling"
19
19
  ];
20
- var LIST_SCORER_VERSIONS_ROUTE = chunkHYYXUP35_cjs.createRoute({
20
+ var LIST_SCORER_VERSIONS_ROUTE = chunkPJDFXAOL_cjs.createRoute({
21
21
  method: "GET",
22
22
  path: "/stored/scorers/:scorerId/versions",
23
23
  requiresAuth: true,
@@ -54,7 +54,7 @@ var LIST_SCORER_VERSIONS_ROUTE = chunkHYYXUP35_cjs.createRoute({
54
54
  }
55
55
  }
56
56
  });
57
- var CREATE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
57
+ var CREATE_SCORER_VERSION_ROUTE = chunkPJDFXAOL_cjs.createRoute({
58
58
  method: "POST",
59
59
  path: "/stored/scorers/:scorerId/versions",
60
60
  requiresAuth: true,
@@ -122,7 +122,7 @@ var CREATE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
122
122
  }
123
123
  }
124
124
  });
125
- var GET_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
125
+ var GET_SCORER_VERSION_ROUTE = chunkPJDFXAOL_cjs.createRoute({
126
126
  method: "GET",
127
127
  path: "/stored/scorers/:scorerId/versions/:versionId",
128
128
  requiresAuth: true,
@@ -157,7 +157,7 @@ var GET_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
157
157
  }
158
158
  }
159
159
  });
160
- var ACTIVATE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
160
+ var ACTIVATE_SCORER_VERSION_ROUTE = chunkPJDFXAOL_cjs.createRoute({
161
161
  method: "POST",
162
162
  path: "/stored/scorers/:scorerId/versions/:versionId/activate",
163
163
  requiresAuth: true,
@@ -206,7 +206,7 @@ var ACTIVATE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
206
206
  }
207
207
  }
208
208
  });
209
- var RESTORE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
209
+ var RESTORE_SCORER_VERSION_ROUTE = chunkPJDFXAOL_cjs.createRoute({
210
210
  method: "POST",
211
211
  path: "/stored/scorers/:scorerId/versions/:versionId/restore",
212
212
  requiresAuth: true,
@@ -277,7 +277,7 @@ var RESTORE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
277
277
  }
278
278
  }
279
279
  });
280
- var DELETE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
280
+ var DELETE_SCORER_VERSION_ROUTE = chunkPJDFXAOL_cjs.createRoute({
281
281
  method: "DELETE",
282
282
  path: "/stored/scorers/:scorerId/versions/:versionId",
283
283
  requiresAuth: true,
@@ -326,7 +326,7 @@ var DELETE_SCORER_VERSION_ROUTE = chunkHYYXUP35_cjs.createRoute({
326
326
  }
327
327
  }
328
328
  });
329
- var COMPARE_SCORER_VERSIONS_ROUTE = chunkHYYXUP35_cjs.createRoute({
329
+ var COMPARE_SCORER_VERSIONS_ROUTE = chunkPJDFXAOL_cjs.createRoute({
330
330
  method: "GET",
331
331
  path: "/stored/scorers/:scorerId/versions/compare",
332
332
  requiresAuth: true,
@@ -392,5 +392,5 @@ exports.DELETE_SCORER_VERSION_ROUTE = DELETE_SCORER_VERSION_ROUTE;
392
392
  exports.GET_SCORER_VERSION_ROUTE = GET_SCORER_VERSION_ROUTE;
393
393
  exports.LIST_SCORER_VERSIONS_ROUTE = LIST_SCORER_VERSIONS_ROUTE;
394
394
  exports.RESTORE_SCORER_VERSION_ROUTE = RESTORE_SCORER_VERSION_ROUTE;
395
- //# sourceMappingURL=chunk-KUBAQ732.cjs.map
396
- //# sourceMappingURL=chunk-KUBAQ732.cjs.map
395
+ //# sourceMappingURL=chunk-JIHHJ4GI.cjs.map
396
+ //# sourceMappingURL=chunk-JIHHJ4GI.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/scorer-versions.ts"],"names":["createRoute","scorerVersionPathParams","listScorerVersionsQuerySchema","listScorerVersionsResponseSchema","HTTPException","handleError","createScorerVersionBodySchema","createScorerVersionResponseSchema","extractConfigFromVersion","calculateChangedFields","createVersionWithRetry","enforceRetentionLimit","scorerVersionIdPathParams","getScorerVersionResponseSchema","activateScorerVersionResponseSchema","restoreScorerVersionResponseSchema","deleteScorerVersionResponseSchema","compareScorerVersionsQuerySchema","compareScorerVersionsResponseSchema","computeVersionDiffs"],"mappings":"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","file":"chunk-KUBAQ732.cjs","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n scorerVersionPathParams,\n scorerVersionIdPathParams,\n listScorerVersionsQuerySchema,\n createScorerVersionBodySchema,\n compareScorerVersionsQuerySchema,\n listScorerVersionsResponseSchema,\n getScorerVersionResponseSchema,\n createScorerVersionResponseSchema,\n activateScorerVersionResponseSchema,\n restoreScorerVersionResponseSchema,\n deleteScorerVersionResponseSchema,\n compareScorerVersionsResponseSchema,\n} from '../schemas/scorer-versions';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport {\n extractConfigFromVersion,\n calculateChangedFields,\n computeVersionDiffs,\n createVersionWithRetry,\n enforceRetentionLimit,\n} from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'type',\n 'model',\n 'instructions',\n 'scoreRange',\n 'presetConfig',\n 'defaultSampling',\n] as const;\n\n/**\n * GET /stored/scorers/:scorerId/versions - List all versions for a scorer\n */\nexport const LIST_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: listScorerVersionsQuerySchema,\n responseSchema: listScorerVersionsResponseSchema,\n summary: 'List scorer versions',\n description: 'Returns a paginated list of all versions for a stored scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, page, perPage, orderBy }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const result = await scorerStore.listVersions({\n scorerDefinitionId: scorerId,\n page,\n perPage,\n orderBy,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing scorer versions');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions - Create a new version snapshot\n */\nexport const CREATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n bodySchema: createScorerVersionBodySchema,\n responseSchema: createScorerVersionResponseSchema,\n summary: 'Create scorer version',\n description: 'Creates a new version snapshot of the current scorer configuration',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, changeMessage }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n let currentConfig: Record<string, unknown> = {};\n if (scorer.activeVersionId) {\n const activeVersion = await scorerStore.getVersion(scorer.activeVersionId);\n if (activeVersion) {\n currentConfig = extractConfigFromVersion(\n activeVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n }\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n\n // If no activeVersionId, fall back to latest version config\n if (!scorer.activeVersionId && latestVersion) {\n currentConfig = extractConfigFromVersion(\n latestVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, currentConfig);\n\n const { versionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n currentConfig,\n changedFields,\n { changeMessage },\n );\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n return version;\n } catch (error) {\n return handleError(error, 'Error creating scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/:versionId - Get a specific version\n */\nexport const GET_SCORER_VERSION_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: getScorerVersionResponseSchema,\n summary: 'Get scorer version',\n description: 'Returns a specific version of a scorer by its version ID',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const version = await scorerStore.getVersion(versionId);\n\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n return version;\n } catch (error) {\n return handleError(error, 'Error getting scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/activate - Set a version as active\n */\nexport const ACTIVATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/activate',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: activateScorerVersionResponseSchema,\n summary: 'Activate scorer version',\n description: 'Sets a specific version as the active version for the scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n await scorerStore.update({\n id: scorerId,\n activeVersionId: versionId,\n status: 'published',\n });\n\n // Clear the editor cache so subsequent requests see the new active version\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} is now active`,\n activeVersionId: versionId,\n };\n } catch (error) {\n return handleError(error, 'Error activating scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/restore - Restore scorer to a version\n */\nexport const RESTORE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/restore',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: restoreScorerVersionResponseSchema,\n summary: 'Restore scorer version',\n description: 'Restores the scorer configuration from a version, creating a new version',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const versionToRestore = await scorerStore.getVersion(versionId);\n if (!versionToRestore) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (versionToRestore.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n const restoredConfig = extractConfigFromVersion(\n versionToRestore as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n await scorerStore.update({\n id: scorerId,\n ...restoredConfig,\n });\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, restoredConfig);\n\n const { versionId: newVersionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n restoredConfig,\n changedFields,\n {\n changeMessage: `Restored from version ${versionToRestore.versionNumber}`,\n },\n );\n\n const newVersion = await scorerStore.getVersion(newVersionId);\n if (!newVersion) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return newVersion;\n } catch (error) {\n return handleError(error, 'Error restoring scorer version');\n }\n },\n});\n\n/**\n * DELETE /stored/scorers/:scorerId/versions/:versionId - Delete a version\n */\nexport const DELETE_SCORER_VERSION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: deleteScorerVersionResponseSchema,\n summary: 'Delete scorer version',\n description: 'Deletes a specific version (cannot delete the active version)',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n if (scorer.activeVersionId === versionId) {\n throw new HTTPException(400, {\n message: 'Cannot delete the active version. Activate a different version first.',\n });\n }\n\n await scorerStore.deleteVersion(versionId);\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/compare - Compare two versions\n */\nexport const COMPARE_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/compare',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: compareScorerVersionsQuerySchema,\n responseSchema: compareScorerVersionsResponseSchema,\n summary: 'Compare scorer versions',\n description: 'Compares two versions and returns the differences between them',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, from, to }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const fromVersion = await scorerStore.getVersion(from);\n if (!fromVersion) {\n throw new HTTPException(404, { message: `Version with id ${from} not found` });\n }\n if (fromVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${from} not found for scorer ${scorerId}`,\n });\n }\n\n const toVersion = await scorerStore.getVersion(to);\n if (!toVersion) {\n throw new HTTPException(404, { message: `Version with id ${to} not found` });\n }\n if (toVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${to} not found for scorer ${scorerId}`,\n });\n }\n\n const fromConfig = extractConfigFromVersion(\n fromVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n const toConfig = extractConfigFromVersion(\n toVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n const diffs = computeVersionDiffs(fromConfig, toConfig);\n\n return {\n diffs,\n fromVersion,\n toVersion,\n };\n } catch (error) {\n return handleError(error, 'Error comparing scorer versions');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/scorer-versions.ts"],"names":["createRoute","scorerVersionPathParams","listScorerVersionsQuerySchema","listScorerVersionsResponseSchema","HTTPException","handleError","createScorerVersionBodySchema","createScorerVersionResponseSchema","extractConfigFromVersion","calculateChangedFields","createVersionWithRetry","enforceRetentionLimit","scorerVersionIdPathParams","getScorerVersionResponseSchema","activateScorerVersionResponseSchema","restoreScorerVersionResponseSchema","deleteScorerVersionResponseSchema","compareScorerVersionsQuerySchema","compareScorerVersionsResponseSchema","computeVersionDiffs"],"mappings":"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","file":"chunk-JIHHJ4GI.cjs","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n scorerVersionPathParams,\n scorerVersionIdPathParams,\n listScorerVersionsQuerySchema,\n createScorerVersionBodySchema,\n compareScorerVersionsQuerySchema,\n listScorerVersionsResponseSchema,\n getScorerVersionResponseSchema,\n createScorerVersionResponseSchema,\n activateScorerVersionResponseSchema,\n restoreScorerVersionResponseSchema,\n deleteScorerVersionResponseSchema,\n compareScorerVersionsResponseSchema,\n} from '../schemas/scorer-versions';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport {\n extractConfigFromVersion,\n calculateChangedFields,\n computeVersionDiffs,\n createVersionWithRetry,\n enforceRetentionLimit,\n} from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'type',\n 'model',\n 'instructions',\n 'scoreRange',\n 'presetConfig',\n 'defaultSampling',\n] as const;\n\n/**\n * GET /stored/scorers/:scorerId/versions - List all versions for a scorer\n */\nexport const LIST_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: listScorerVersionsQuerySchema,\n responseSchema: listScorerVersionsResponseSchema,\n summary: 'List scorer versions',\n description: 'Returns a paginated list of all versions for a stored scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, page, perPage, orderBy }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const result = await scorerStore.listVersions({\n scorerDefinitionId: scorerId,\n page,\n perPage,\n orderBy,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing scorer versions');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions - Create a new version snapshot\n */\nexport const CREATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n bodySchema: createScorerVersionBodySchema,\n responseSchema: createScorerVersionResponseSchema,\n summary: 'Create scorer version',\n description: 'Creates a new version snapshot of the current scorer configuration',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, changeMessage }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n let currentConfig: Record<string, unknown> = {};\n if (scorer.activeVersionId) {\n const activeVersion = await scorerStore.getVersion(scorer.activeVersionId);\n if (activeVersion) {\n currentConfig = extractConfigFromVersion(\n activeVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n }\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n\n // If no activeVersionId, fall back to latest version config\n if (!scorer.activeVersionId && latestVersion) {\n currentConfig = extractConfigFromVersion(\n latestVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, currentConfig);\n\n const { versionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n currentConfig,\n changedFields,\n { changeMessage },\n );\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n return version;\n } catch (error) {\n return handleError(error, 'Error creating scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/:versionId - Get a specific version\n */\nexport const GET_SCORER_VERSION_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: getScorerVersionResponseSchema,\n summary: 'Get scorer version',\n description: 'Returns a specific version of a scorer by its version ID',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const version = await scorerStore.getVersion(versionId);\n\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n return version;\n } catch (error) {\n return handleError(error, 'Error getting scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/activate - Set a version as active\n */\nexport const ACTIVATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/activate',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: activateScorerVersionResponseSchema,\n summary: 'Activate scorer version',\n description: 'Sets a specific version as the active version for the scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n await scorerStore.update({\n id: scorerId,\n activeVersionId: versionId,\n status: 'published',\n });\n\n // Clear the editor cache so subsequent requests see the new active version\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} is now active`,\n activeVersionId: versionId,\n };\n } catch (error) {\n return handleError(error, 'Error activating scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/restore - Restore scorer to a version\n */\nexport const RESTORE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/restore',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: restoreScorerVersionResponseSchema,\n summary: 'Restore scorer version',\n description: 'Restores the scorer configuration from a version, creating a new version',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const versionToRestore = await scorerStore.getVersion(versionId);\n if (!versionToRestore) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (versionToRestore.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n const restoredConfig = extractConfigFromVersion(\n versionToRestore as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n await scorerStore.update({\n id: scorerId,\n ...restoredConfig,\n });\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, restoredConfig);\n\n const { versionId: newVersionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n restoredConfig,\n changedFields,\n {\n changeMessage: `Restored from version ${versionToRestore.versionNumber}`,\n },\n );\n\n const newVersion = await scorerStore.getVersion(newVersionId);\n if (!newVersion) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return newVersion;\n } catch (error) {\n return handleError(error, 'Error restoring scorer version');\n }\n },\n});\n\n/**\n * DELETE /stored/scorers/:scorerId/versions/:versionId - Delete a version\n */\nexport const DELETE_SCORER_VERSION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: deleteScorerVersionResponseSchema,\n summary: 'Delete scorer version',\n description: 'Deletes a specific version (cannot delete the active version)',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n if (scorer.activeVersionId === versionId) {\n throw new HTTPException(400, {\n message: 'Cannot delete the active version. Activate a different version first.',\n });\n }\n\n await scorerStore.deleteVersion(versionId);\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/compare - Compare two versions\n */\nexport const COMPARE_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/compare',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: compareScorerVersionsQuerySchema,\n responseSchema: compareScorerVersionsResponseSchema,\n summary: 'Compare scorer versions',\n description: 'Compares two versions and returns the differences between them',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, from, to }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const fromVersion = await scorerStore.getVersion(from);\n if (!fromVersion) {\n throw new HTTPException(404, { message: `Version with id ${from} not found` });\n }\n if (fromVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${from} not found for scorer ${scorerId}`,\n });\n }\n\n const toVersion = await scorerStore.getVersion(to);\n if (!toVersion) {\n throw new HTTPException(404, { message: `Version with id ${to} not found` });\n }\n if (toVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${to} not found for scorer ${scorerId}`,\n });\n }\n\n const fromConfig = extractConfigFromVersion(\n fromVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n const toConfig = extractConfigFromVersion(\n toVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n const diffs = computeVersionDiffs(fromConfig, toConfig);\n\n return {\n diffs,\n fromVersion,\n toVersion,\n };\n } catch (error) {\n return handleError(error, 'Error comparing scorer versions');\n }\n },\n});\n"]}
@@ -1,4 +1,4 @@
1
- import { createRoute } from './chunk-HCIKFLLE.js';
1
+ import { createRoute } from './chunk-VMF4AV2C.js';
2
2
  import { HTTPException } from './chunk-6QWQZI4Q.js';
3
3
  import { z } from 'zod';
4
4
 
@@ -135,5 +135,5 @@ var GET_BACKGROUND_TASK_ROUTE = createRoute({
135
135
  });
136
136
 
137
137
  export { BACKGROUND_TASK_STREAM_ROUTE, GET_BACKGROUND_TASK_ROUTE, LIST_BACKGROUND_TASKS_ROUTE };
138
- //# sourceMappingURL=chunk-HLDBO2H6.js.map
139
- //# sourceMappingURL=chunk-HLDBO2H6.js.map
138
+ //# sourceMappingURL=chunk-JSHKUN5Y.js.map
139
+ //# sourceMappingURL=chunk-JSHKUN5Y.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/schemas/background-tasks.ts","../src/server/handlers/background-tasks.ts"],"names":[],"mappings":"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","file":"chunk-HLDBO2H6.js","sourcesContent":["import { z } from 'zod';\n\nexport const backgroundTaskStatusSchema = z.enum([\n 'pending',\n 'running',\n 'suspended',\n 'completed',\n 'failed',\n 'cancelled',\n 'timed_out',\n]);\n\nexport const backgroundTaskStreamQuerySchema = z.object({\n agentId: z.string().optional(),\n runId: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n taskId: z.string().optional(),\n});\n\nexport const backgroundTaskDateColumnSchema = z.enum(['createdAt', 'startedAt', 'suspendedAt', 'completedAt']);\n\nexport const listBackgroundTasksQuerySchema = z.object({\n agentId: z.string().optional(),\n status: backgroundTaskStatusSchema.optional(),\n runId: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n toolName: z.string().optional(),\n toolCallId: z.string().optional(),\n fromDate: z.coerce.date().optional(),\n toDate: z.coerce.date().optional(),\n dateFilterBy: backgroundTaskDateColumnSchema.optional(),\n orderBy: backgroundTaskDateColumnSchema.optional(),\n orderDirection: z.enum(['asc', 'desc']).optional(),\n page: z.coerce.number().optional(),\n perPage: z.coerce.number().optional(),\n});\n\nexport const backgroundTaskIdPathParams = z.object({\n backgroundTaskId: z.string(),\n});\n\nexport const backgroundTaskResponseSchema = z.object({\n id: z.string(),\n status: backgroundTaskStatusSchema,\n toolName: z.string(),\n toolCallId: z.string(),\n args: z.record(z.string(), z.unknown()),\n agentId: z.string(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n runId: z.string(),\n result: z.unknown().optional(),\n error: z.object({ message: z.string(), stack: z.string().optional() }).optional(),\n createdAt: z.date(),\n startedAt: z.date().optional(),\n completedAt: z.date().optional(),\n retryCount: z.number(),\n maxRetries: z.number(),\n timeoutMs: z.number(),\n suspendPayload: z.unknown().optional(),\n});\n\nexport const listBackgroundTaskResponseSchema = z.object({\n tasks: z.array(backgroundTaskResponseSchema),\n total: z.number(),\n});\n\nexport const backgroundTaskStreamResponseSchema = z.any();\n","import { HTTPException } from '../http-exception';\nimport {\n backgroundTaskResponseSchema,\n backgroundTaskStreamQuerySchema,\n backgroundTaskStreamResponseSchema,\n listBackgroundTaskResponseSchema,\n listBackgroundTasksQuerySchema,\n backgroundTaskIdPathParams,\n} from '../schemas/background-tasks';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nexport const BACKGROUND_TASK_STREAM_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks/stream',\n responseType: 'stream' as const,\n streamFormat: 'sse' as const,\n queryParamSchema: backgroundTaskStreamQuerySchema,\n responseSchema: backgroundTaskStreamResponseSchema,\n summary: 'Stream background task events via SSE',\n description: 'Real-time Server-Sent Events stream of background task completion/failure events.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, runId, threadId, resourceId, taskId, abortSignal }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks are not enabled — return an empty stream that stays\n // open until the client disconnects. This avoids spamming the logs with\n // false-positive errors when clients (e.g. the studio UI) optimistically\n // subscribe to the stream.\n return new ReadableStream({\n start(controller) {\n abortSignal?.addEventListener('abort', () => {\n try {\n controller.close();\n } catch {\n // Already closed\n }\n });\n },\n });\n }\n\n return bgManager.stream({ agentId, runId, threadId, resourceId, taskId, abortSignal });\n },\n});\n\nexport const LIST_BACKGROUND_TASKS_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks',\n responseType: 'json' as const,\n queryParamSchema: listBackgroundTasksQuerySchema,\n responseSchema: listBackgroundTaskResponseSchema,\n summary: 'List background tasks',\n description: 'Returns background tasks filtered by status, agent, run, etc.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks not enabled — there are no tasks to return.\n return { tasks: [], total: 0 };\n }\n\n return bgManager.listTasks(params);\n },\n});\n\nexport const GET_BACKGROUND_TASK_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks/:backgroundTaskId',\n responseType: 'json' as const,\n pathParamSchema: backgroundTaskIdPathParams,\n responseSchema: backgroundTaskResponseSchema,\n summary: 'Get a background task by ID',\n description: 'Returns a background task by ID.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, backgroundTaskId }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks not enabled — the task can't exist.\n throw new HTTPException(404, { message: 'Background task not found' });\n }\n\n const task = await bgManager.getTask(backgroundTaskId);\n if (!task) {\n throw new HTTPException(404, { message: 'Background task not found' });\n }\n return task;\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/schemas/background-tasks.ts","../src/server/handlers/background-tasks.ts"],"names":[],"mappings":"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","file":"chunk-JSHKUN5Y.js","sourcesContent":["import { z } from 'zod';\n\nexport const backgroundTaskStatusSchema = z.enum([\n 'pending',\n 'running',\n 'suspended',\n 'completed',\n 'failed',\n 'cancelled',\n 'timed_out',\n]);\n\nexport const backgroundTaskStreamQuerySchema = z.object({\n agentId: z.string().optional(),\n runId: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n taskId: z.string().optional(),\n});\n\nexport const backgroundTaskDateColumnSchema = z.enum(['createdAt', 'startedAt', 'suspendedAt', 'completedAt']);\n\nexport const listBackgroundTasksQuerySchema = z.object({\n agentId: z.string().optional(),\n status: backgroundTaskStatusSchema.optional(),\n runId: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n toolName: z.string().optional(),\n toolCallId: z.string().optional(),\n fromDate: z.coerce.date().optional(),\n toDate: z.coerce.date().optional(),\n dateFilterBy: backgroundTaskDateColumnSchema.optional(),\n orderBy: backgroundTaskDateColumnSchema.optional(),\n orderDirection: z.enum(['asc', 'desc']).optional(),\n page: z.coerce.number().optional(),\n perPage: z.coerce.number().optional(),\n});\n\nexport const backgroundTaskIdPathParams = z.object({\n backgroundTaskId: z.string(),\n});\n\nexport const backgroundTaskResponseSchema = z.object({\n id: z.string(),\n status: backgroundTaskStatusSchema,\n toolName: z.string(),\n toolCallId: z.string(),\n args: z.record(z.string(), z.unknown()),\n agentId: z.string(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n runId: z.string(),\n result: z.unknown().optional(),\n error: z.object({ message: z.string(), stack: z.string().optional() }).optional(),\n createdAt: z.date(),\n startedAt: z.date().optional(),\n completedAt: z.date().optional(),\n retryCount: z.number(),\n maxRetries: z.number(),\n timeoutMs: z.number(),\n suspendPayload: z.unknown().optional(),\n});\n\nexport const listBackgroundTaskResponseSchema = z.object({\n tasks: z.array(backgroundTaskResponseSchema),\n total: z.number(),\n});\n\nexport const backgroundTaskStreamResponseSchema = z.any();\n","import { HTTPException } from '../http-exception';\nimport {\n backgroundTaskResponseSchema,\n backgroundTaskStreamQuerySchema,\n backgroundTaskStreamResponseSchema,\n listBackgroundTaskResponseSchema,\n listBackgroundTasksQuerySchema,\n backgroundTaskIdPathParams,\n} from '../schemas/background-tasks';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nexport const BACKGROUND_TASK_STREAM_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks/stream',\n responseType: 'stream' as const,\n streamFormat: 'sse' as const,\n queryParamSchema: backgroundTaskStreamQuerySchema,\n responseSchema: backgroundTaskStreamResponseSchema,\n summary: 'Stream background task events via SSE',\n description: 'Real-time Server-Sent Events stream of background task completion/failure events.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, runId, threadId, resourceId, taskId, abortSignal }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks are not enabled — return an empty stream that stays\n // open until the client disconnects. This avoids spamming the logs with\n // false-positive errors when clients (e.g. the studio UI) optimistically\n // subscribe to the stream.\n return new ReadableStream({\n start(controller) {\n abortSignal?.addEventListener('abort', () => {\n try {\n controller.close();\n } catch {\n // Already closed\n }\n });\n },\n });\n }\n\n return bgManager.stream({ agentId, runId, threadId, resourceId, taskId, abortSignal });\n },\n});\n\nexport const LIST_BACKGROUND_TASKS_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks',\n responseType: 'json' as const,\n queryParamSchema: listBackgroundTasksQuerySchema,\n responseSchema: listBackgroundTaskResponseSchema,\n summary: 'List background tasks',\n description: 'Returns background tasks filtered by status, agent, run, etc.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks not enabled — there are no tasks to return.\n return { tasks: [], total: 0 };\n }\n\n return bgManager.listTasks(params);\n },\n});\n\nexport const GET_BACKGROUND_TASK_ROUTE = createRoute({\n method: 'GET',\n path: '/background-tasks/:backgroundTaskId',\n responseType: 'json' as const,\n pathParamSchema: backgroundTaskIdPathParams,\n responseSchema: backgroundTaskResponseSchema,\n summary: 'Get a background task by ID',\n description: 'Returns a background task by ID.',\n tags: ['Background Tasks'],\n requiresAuth: true,\n handler: async ({ mastra, backgroundTaskId }) => {\n const bgManager = mastra.backgroundTaskManager;\n if (!bgManager) {\n // Background tasks not enabled — the task can't exist.\n throw new HTTPException(404, { message: 'Background task not found' });\n }\n\n const task = await bgManager.getTask(backgroundTaskId);\n if (!task) {\n throw new HTTPException(404, { message: 'Background task not found' });\n }\n return task;\n },\n});\n"]}
@@ -1,10 +1,10 @@
1
- import { listStoredPromptBlocksResponseSchema, listStoredPromptBlocksQuerySchema, getStoredPromptBlockResponseSchema, storedPromptBlockIdPathParams, createStoredPromptBlockResponseSchema, createStoredPromptBlockBodySchema, updateStoredPromptBlockResponseSchema, updateStoredPromptBlockBodySchema, deleteStoredPromptBlockResponseSchema } from './chunk-BUFXUC67.js';
2
- import { toSlug } from './chunk-SOH5VORA.js';
3
1
  import { handleAutoVersioning } from './chunk-33QPJPK4.js';
4
- import { statusQuerySchema } from './chunk-2YY3EMMS.js';
5
- import { createRoute } from './chunk-HCIKFLLE.js';
2
+ import { listStoredPromptBlocksResponseSchema, listStoredPromptBlocksQuerySchema, getStoredPromptBlockResponseSchema, storedPromptBlockIdPathParams, createStoredPromptBlockResponseSchema, createStoredPromptBlockBodySchema, updateStoredPromptBlockResponseSchema, updateStoredPromptBlockBodySchema, deleteStoredPromptBlockResponseSchema } from './chunk-BUFXUC67.js';
3
+ import { toSlug } from './chunk-7RLQ6356.js';
6
4
  import { handleError } from './chunk-P23KBWKB.js';
5
+ import { createRoute } from './chunk-VMF4AV2C.js';
7
6
  import { HTTPException } from './chunk-6QWQZI4Q.js';
7
+ import { statusQuerySchema } from './chunk-2YY3EMMS.js';
8
8
 
9
9
  // src/server/handlers/stored-prompt-blocks.ts
10
10
  var PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS = [
@@ -259,5 +259,5 @@ var DELETE_STORED_PROMPT_BLOCK_ROUTE = createRoute({
259
259
  });
260
260
 
261
261
  export { CREATE_STORED_PROMPT_BLOCK_ROUTE, DELETE_STORED_PROMPT_BLOCK_ROUTE, GET_STORED_PROMPT_BLOCK_ROUTE, LIST_STORED_PROMPT_BLOCKS_ROUTE, UPDATE_STORED_PROMPT_BLOCK_ROUTE };
262
- //# sourceMappingURL=chunk-STNEFHHA.js.map
263
- //# sourceMappingURL=chunk-STNEFHHA.js.map
262
+ //# sourceMappingURL=chunk-KPK6F3OS.js.map
263
+ //# sourceMappingURL=chunk-KPK6F3OS.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/stored-prompt-blocks.ts"],"names":[],"mappings":"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","file":"chunk-STNEFHHA.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedPromptBlockIdPathParams,\n statusQuerySchema,\n listStoredPromptBlocksQuerySchema,\n createStoredPromptBlockBodySchema,\n updateStoredPromptBlockBodySchema,\n listStoredPromptBlocksResponseSchema,\n getStoredPromptBlockResponseSchema,\n createStoredPromptBlockResponseSchema,\n updateStoredPromptBlockResponseSchema,\n deleteStoredPromptBlockResponseSchema,\n} from '../schemas/stored-prompt-blocks';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\nimport { handleAutoVersioning } from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'content',\n 'rules',\n 'requestContextSchema',\n] as const;\n\n/** Computes whether a prompt block has an unpublished draft version. */\nfunction computeHasDraft(\n latestVersion: { id: string } | null | undefined,\n activeVersionId: string | null | undefined,\n): boolean {\n return !!(latestVersion && (!activeVersionId || latestVersion.id !== activeVersionId));\n}\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/prompt-blocks - List all stored prompt blocks\n */\nexport const LIST_STORED_PROMPT_BLOCKS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/prompt-blocks',\n responseType: 'json',\n queryParamSchema: listStoredPromptBlocksQuerySchema,\n responseSchema: listStoredPromptBlocksResponseSchema,\n summary: 'List stored prompt blocks',\n description: 'Returns a paginated list of all prompt blocks stored in the database',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, status, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n const result = await promptBlockStore.listResolved({\n page,\n perPage,\n orderBy,\n status,\n authorId,\n metadata,\n });\n\n // For each block, fetch the latest version to compute hasDraft.\n // resolvedVersionId from listResolved defaults to 'published' resolution,\n // so we need the actual latest version to detect unpublished drafts.\n const promptBlocks = await Promise.all(\n result.promptBlocks.map(async (block: (typeof result.promptBlocks)[number]) => {\n const latestVersion = await promptBlockStore.getLatestVersion(block.id);\n return { ...block, hasDraft: computeHasDraft(latestVersion, block.activeVersionId) };\n }),\n );\n\n return { ...result, promptBlocks };\n } catch (error) {\n return handleError(error, 'Error listing stored prompt blocks');\n }\n },\n});\n\n/**\n * GET /stored/prompt-blocks/:storedPromptBlockId - Get a stored prompt block by ID\n */\nexport const GET_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n queryParamSchema: statusQuerySchema,\n responseSchema: getStoredPromptBlockResponseSchema,\n summary: 'Get stored prompt block by ID',\n description:\n 'Returns a specific prompt block from storage by its unique identifier. Use ?status=draft to resolve with the latest (draft) version, or ?status=published (default) for the active published version.',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, storedPromptBlockId, status }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n const promptBlock = await promptBlockStore.getByIdResolved(storedPromptBlockId, { status });\n\n if (!promptBlock) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(storedPromptBlockId);\n\n return { ...promptBlock, hasDraft: computeHasDraft(latestVersion, promptBlock.activeVersionId) };\n } catch (error) {\n return handleError(error, 'Error getting stored prompt block');\n }\n },\n});\n\n/**\n * POST /stored/prompt-blocks - Create a new stored prompt block\n */\nexport const CREATE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/prompt-blocks',\n responseType: 'json',\n bodySchema: createStoredPromptBlockBodySchema,\n responseSchema: createStoredPromptBlockResponseSchema,\n summary: 'Create stored prompt block',\n description: 'Creates a new prompt block in storage with the provided configuration',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive prompt block ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if prompt block with this ID already exists\n const existing = await promptBlockStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Prompt block with id ${id} already exists` });\n }\n\n await promptBlockStore.create({\n promptBlock: {\n id,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n },\n });\n\n // Return the resolved prompt block (thin record + version config)\n // Use draft status since newly created entities start as drafts\n const resolved = await promptBlockStore.getByIdResolved(id, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created prompt block' });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(id);\n const hasDraft = !!(\n latestVersion &&\n (!resolved.activeVersionId || latestVersion.id !== resolved.activeVersionId)\n );\n\n return { ...resolved, hasDraft };\n } catch (error) {\n return handleError(error, 'Error creating stored prompt block');\n }\n },\n});\n\n/**\n * PATCH /stored/prompt-blocks/:storedPromptBlockId - Update a stored prompt block\n */\nexport const UPDATE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n bodySchema: updateStoredPromptBlockBodySchema,\n responseSchema: updateStoredPromptBlockResponseSchema,\n summary: 'Update stored prompt block',\n description: 'Updates an existing prompt block in storage with the provided fields',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedPromptBlockId,\n // Metadata-level fields\n authorId,\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n content,\n rules,\n requestContextSchema,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Check if prompt block exists\n const existing = await promptBlockStore.getById(storedPromptBlockId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n // Update the prompt block with both metadata-level and config-level fields\n const updatedPromptBlock = await promptBlockStore.update({\n id: storedPromptBlockId,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n });\n\n // Build the snapshot config for auto-versioning comparison\n const configFields = { name, description, content, rules, requestContextSchema };\n\n // Filter out undefined values to get only the config fields that were provided\n const providedConfigFields = Object.fromEntries(Object.entries(configFields).filter(([_, v]) => v !== undefined));\n\n // Handle auto-versioning with retry logic for race conditions\n // This creates a new version if there are meaningful config changes.\n // It does NOT update activeVersionId — the version stays as a draft until explicitly published.\n await handleAutoVersioning(\n promptBlockStore as unknown as VersionedStoreInterface,\n storedPromptBlockId,\n 'blockId',\n PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS,\n existing,\n updatedPromptBlock,\n providedConfigFields,\n );\n\n // Return the resolved prompt block with the latest (draft) version so the UI sees its edits\n const resolved = await promptBlockStore.getByIdResolved(storedPromptBlockId, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated prompt block' });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(storedPromptBlockId);\n const hasDraft = !!(\n latestVersion &&\n (!resolved.activeVersionId || latestVersion.id !== resolved.activeVersionId)\n );\n\n return { ...resolved, hasDraft };\n } catch (error) {\n return handleError(error, 'Error updating stored prompt block');\n }\n },\n});\n\n/**\n * DELETE /stored/prompt-blocks/:storedPromptBlockId - Delete a stored prompt block\n */\nexport const DELETE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n responseSchema: deleteStoredPromptBlockResponseSchema,\n summary: 'Delete stored prompt block',\n description: 'Deletes a prompt block from storage by its unique identifier',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, storedPromptBlockId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Check if prompt block exists\n const existing = await promptBlockStore.getById(storedPromptBlockId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n await promptBlockStore.delete(storedPromptBlockId);\n\n return {\n success: true,\n message: `Prompt block ${storedPromptBlockId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored prompt block');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/stored-prompt-blocks.ts"],"names":[],"mappings":"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","file":"chunk-KPK6F3OS.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedPromptBlockIdPathParams,\n statusQuerySchema,\n listStoredPromptBlocksQuerySchema,\n createStoredPromptBlockBodySchema,\n updateStoredPromptBlockBodySchema,\n listStoredPromptBlocksResponseSchema,\n getStoredPromptBlockResponseSchema,\n createStoredPromptBlockResponseSchema,\n updateStoredPromptBlockResponseSchema,\n deleteStoredPromptBlockResponseSchema,\n} from '../schemas/stored-prompt-blocks';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { toSlug } from '../utils';\n\nimport { handleError } from './error';\nimport { handleAutoVersioning } from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'content',\n 'rules',\n 'requestContextSchema',\n] as const;\n\n/** Computes whether a prompt block has an unpublished draft version. */\nfunction computeHasDraft(\n latestVersion: { id: string } | null | undefined,\n activeVersionId: string | null | undefined,\n): boolean {\n return !!(latestVersion && (!activeVersionId || latestVersion.id !== activeVersionId));\n}\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/prompt-blocks - List all stored prompt blocks\n */\nexport const LIST_STORED_PROMPT_BLOCKS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/prompt-blocks',\n responseType: 'json',\n queryParamSchema: listStoredPromptBlocksQuerySchema,\n responseSchema: listStoredPromptBlocksResponseSchema,\n summary: 'List stored prompt blocks',\n description: 'Returns a paginated list of all prompt blocks stored in the database',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, status, authorId, metadata }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n const result = await promptBlockStore.listResolved({\n page,\n perPage,\n orderBy,\n status,\n authorId,\n metadata,\n });\n\n // For each block, fetch the latest version to compute hasDraft.\n // resolvedVersionId from listResolved defaults to 'published' resolution,\n // so we need the actual latest version to detect unpublished drafts.\n const promptBlocks = await Promise.all(\n result.promptBlocks.map(async (block: (typeof result.promptBlocks)[number]) => {\n const latestVersion = await promptBlockStore.getLatestVersion(block.id);\n return { ...block, hasDraft: computeHasDraft(latestVersion, block.activeVersionId) };\n }),\n );\n\n return { ...result, promptBlocks };\n } catch (error) {\n return handleError(error, 'Error listing stored prompt blocks');\n }\n },\n});\n\n/**\n * GET /stored/prompt-blocks/:storedPromptBlockId - Get a stored prompt block by ID\n */\nexport const GET_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n queryParamSchema: statusQuerySchema,\n responseSchema: getStoredPromptBlockResponseSchema,\n summary: 'Get stored prompt block by ID',\n description:\n 'Returns a specific prompt block from storage by its unique identifier. Use ?status=draft to resolve with the latest (draft) version, or ?status=published (default) for the active published version.',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, storedPromptBlockId, status }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n const promptBlock = await promptBlockStore.getByIdResolved(storedPromptBlockId, { status });\n\n if (!promptBlock) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(storedPromptBlockId);\n\n return { ...promptBlock, hasDraft: computeHasDraft(latestVersion, promptBlock.activeVersionId) };\n } catch (error) {\n return handleError(error, 'Error getting stored prompt block');\n }\n },\n});\n\n/**\n * POST /stored/prompt-blocks - Create a new stored prompt block\n */\nexport const CREATE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/prompt-blocks',\n responseType: 'json',\n bodySchema: createStoredPromptBlockBodySchema,\n responseSchema: createStoredPromptBlockResponseSchema,\n summary: 'Create stored prompt block',\n description: 'Creates a new prompt block in storage with the provided configuration',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive prompt block ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if prompt block with this ID already exists\n const existing = await promptBlockStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Prompt block with id ${id} already exists` });\n }\n\n await promptBlockStore.create({\n promptBlock: {\n id,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n },\n });\n\n // Return the resolved prompt block (thin record + version config)\n // Use draft status since newly created entities start as drafts\n const resolved = await promptBlockStore.getByIdResolved(id, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created prompt block' });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(id);\n const hasDraft = !!(\n latestVersion &&\n (!resolved.activeVersionId || latestVersion.id !== resolved.activeVersionId)\n );\n\n return { ...resolved, hasDraft };\n } catch (error) {\n return handleError(error, 'Error creating stored prompt block');\n }\n },\n});\n\n/**\n * PATCH /stored/prompt-blocks/:storedPromptBlockId - Update a stored prompt block\n */\nexport const UPDATE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n bodySchema: updateStoredPromptBlockBodySchema,\n responseSchema: updateStoredPromptBlockResponseSchema,\n summary: 'Update stored prompt block',\n description: 'Updates an existing prompt block in storage with the provided fields',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedPromptBlockId,\n // Metadata-level fields\n authorId,\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n content,\n rules,\n requestContextSchema,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Check if prompt block exists\n const existing = await promptBlockStore.getById(storedPromptBlockId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n // Update the prompt block with both metadata-level and config-level fields\n const updatedPromptBlock = await promptBlockStore.update({\n id: storedPromptBlockId,\n authorId,\n metadata,\n name,\n description,\n content,\n rules,\n requestContextSchema,\n });\n\n // Build the snapshot config for auto-versioning comparison\n const configFields = { name, description, content, rules, requestContextSchema };\n\n // Filter out undefined values to get only the config fields that were provided\n const providedConfigFields = Object.fromEntries(Object.entries(configFields).filter(([_, v]) => v !== undefined));\n\n // Handle auto-versioning with retry logic for race conditions\n // This creates a new version if there are meaningful config changes.\n // It does NOT update activeVersionId — the version stays as a draft until explicitly published.\n await handleAutoVersioning(\n promptBlockStore as unknown as VersionedStoreInterface,\n storedPromptBlockId,\n 'blockId',\n PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS,\n existing,\n updatedPromptBlock,\n providedConfigFields,\n );\n\n // Return the resolved prompt block with the latest (draft) version so the UI sees its edits\n const resolved = await promptBlockStore.getByIdResolved(storedPromptBlockId, { status: 'draft' });\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated prompt block' });\n }\n\n const latestVersion = await promptBlockStore.getLatestVersion(storedPromptBlockId);\n const hasDraft = !!(\n latestVersion &&\n (!resolved.activeVersionId || latestVersion.id !== resolved.activeVersionId)\n );\n\n return { ...resolved, hasDraft };\n } catch (error) {\n return handleError(error, 'Error updating stored prompt block');\n }\n },\n});\n\n/**\n * DELETE /stored/prompt-blocks/:storedPromptBlockId - Delete a stored prompt block\n */\nexport const DELETE_STORED_PROMPT_BLOCK_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/prompt-blocks/:storedPromptBlockId',\n responseType: 'json',\n pathParamSchema: storedPromptBlockIdPathParams,\n responseSchema: deleteStoredPromptBlockResponseSchema,\n summary: 'Delete stored prompt block',\n description: 'Deletes a prompt block from storage by its unique identifier',\n tags: ['Stored Prompt Blocks'],\n requiresAuth: true,\n handler: async ({ mastra, storedPromptBlockId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const promptBlockStore = await storage.getStore('promptBlocks');\n if (!promptBlockStore) {\n throw new HTTPException(500, { message: 'Prompt blocks storage domain is not available' });\n }\n\n // Check if prompt block exists\n const existing = await promptBlockStore.getById(storedPromptBlockId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored prompt block with id ${storedPromptBlockId} not found` });\n }\n\n await promptBlockStore.delete(storedPromptBlockId);\n\n return {\n success: true,\n message: `Prompt block ${storedPromptBlockId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored prompt block');\n }\n },\n});\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
3
  var chunk67F5GKI5_cjs = require('./chunk-67F5GKI5.cjs');
4
- var chunkHYYXUP35_cjs = require('./chunk-HYYXUP35.cjs');
5
4
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
5
+ var chunkPJDFXAOL_cjs = require('./chunk-PJDFXAOL.cjs');
6
6
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
7
7
  var zodToJson = require('@mastra/core/utils/zod-to-json');
8
8
 
9
- var LIST_PROCESSOR_PROVIDERS_ROUTE = chunkHYYXUP35_cjs.createRoute({
9
+ var LIST_PROCESSOR_PROVIDERS_ROUTE = chunkPJDFXAOL_cjs.createRoute({
10
10
  method: "GET",
11
11
  path: "/processor-providers",
12
12
  responseType: "json",
@@ -33,7 +33,7 @@ var LIST_PROCESSOR_PROVIDERS_ROUTE = chunkHYYXUP35_cjs.createRoute({
33
33
  }
34
34
  }
35
35
  });
36
- var GET_PROCESSOR_PROVIDER_ROUTE = chunkHYYXUP35_cjs.createRoute({
36
+ var GET_PROCESSOR_PROVIDER_ROUTE = chunkPJDFXAOL_cjs.createRoute({
37
37
  method: "GET",
38
38
  path: "/processor-providers/:providerId",
39
39
  responseType: "json",
@@ -66,5 +66,5 @@ var GET_PROCESSOR_PROVIDER_ROUTE = chunkHYYXUP35_cjs.createRoute({
66
66
 
67
67
  exports.GET_PROCESSOR_PROVIDER_ROUTE = GET_PROCESSOR_PROVIDER_ROUTE;
68
68
  exports.LIST_PROCESSOR_PROVIDERS_ROUTE = LIST_PROCESSOR_PROVIDERS_ROUTE;
69
- //# sourceMappingURL=chunk-VWBVA272.cjs.map
70
- //# sourceMappingURL=chunk-VWBVA272.cjs.map
69
+ //# sourceMappingURL=chunk-L4MG45WI.cjs.map
70
+ //# sourceMappingURL=chunk-L4MG45WI.cjs.map