@mastra/server 1.33.0-alpha.6 → 1.33.0-alpha.8

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 (309) hide show
  1. package/CHANGELOG.md +159 -0
  2. package/dist/{api-schema-manifest-KDXQELMU.cjs → api-schema-manifest-CX3NL6JS.cjs} +6 -6
  3. package/dist/{api-schema-manifest-KDXQELMU.cjs.map → api-schema-manifest-CX3NL6JS.cjs.map} +1 -1
  4. package/dist/{api-schema-manifest-IWGQ5O45.js → api-schema-manifest-IK5MQPAL.js} +4 -4
  5. package/dist/{api-schema-manifest-IWGQ5O45.js.map → api-schema-manifest-IK5MQPAL.js.map} +1 -1
  6. package/dist/{chunk-IT26WLSZ.js → chunk-26PANWAR.js} +7 -7
  7. package/dist/{chunk-IT26WLSZ.js.map → chunk-26PANWAR.js.map} +1 -1
  8. package/dist/{chunk-LXNZK6NM.cjs → chunk-27VZ5B4Q.cjs} +77 -77
  9. package/dist/{chunk-LXNZK6NM.cjs.map → chunk-27VZ5B4Q.cjs.map} +1 -1
  10. package/dist/{chunk-MAG4W3GZ.cjs → chunk-2PS73C7N.cjs} +8 -8
  11. package/dist/{chunk-MAG4W3GZ.cjs.map → chunk-2PS73C7N.cjs.map} +1 -1
  12. package/dist/{chunk-34UYZN53.js → chunk-3AKQRYDF.js} +4 -4
  13. package/dist/{chunk-34UYZN53.js.map → chunk-3AKQRYDF.js.map} +1 -1
  14. package/dist/{chunk-5HQXXBTM.js → chunk-3DQGNGSK.js} +4 -4
  15. package/dist/{chunk-5HQXXBTM.js.map → chunk-3DQGNGSK.js.map} +1 -1
  16. package/dist/{chunk-WEDFF5FH.js → chunk-3SRLGVLX.js} +44 -44
  17. package/dist/chunk-3SRLGVLX.js.map +1 -0
  18. package/dist/{chunk-SX3C7B3A.cjs → chunk-4NVC7TM6.cjs} +28 -28
  19. package/dist/{chunk-SX3C7B3A.cjs.map → chunk-4NVC7TM6.cjs.map} +1 -1
  20. package/dist/{chunk-N6HISTTP.cjs → chunk-4ZO2MLW5.cjs} +16 -16
  21. package/dist/{chunk-N6HISTTP.cjs.map → chunk-4ZO2MLW5.cjs.map} +1 -1
  22. package/dist/{chunk-EQ27BVOT.js → chunk-5WYCXPDY.js} +4 -4
  23. package/dist/{chunk-EQ27BVOT.js.map → chunk-5WYCXPDY.js.map} +1 -1
  24. package/dist/{chunk-EFW6MWXU.cjs → chunk-5XW4MKE6.cjs} +22 -2
  25. package/dist/chunk-5XW4MKE6.cjs.map +1 -0
  26. package/dist/{chunk-MCS43WKI.cjs → chunk-6JP6Q64G.cjs} +10 -10
  27. package/dist/{chunk-MCS43WKI.cjs.map → chunk-6JP6Q64G.cjs.map} +1 -1
  28. package/dist/{chunk-ZO7SOILM.js → chunk-6V2NUA6I.js} +4 -4
  29. package/dist/{chunk-ZO7SOILM.js.map → chunk-6V2NUA6I.js.map} +1 -1
  30. package/dist/{chunk-64YJOWH2.cjs → chunk-72W42JL4.cjs} +5 -5
  31. package/dist/{chunk-64YJOWH2.cjs.map → chunk-72W42JL4.cjs.map} +1 -1
  32. package/dist/{chunk-NWD2SPUH.js → chunk-7LGTEZBD.js} +4 -4
  33. package/dist/{chunk-NWD2SPUH.js.map → chunk-7LGTEZBD.js.map} +1 -1
  34. package/dist/{chunk-2KDOM6QE.js → chunk-7PDQ67ZY.js} +108 -6
  35. package/dist/chunk-7PDQ67ZY.js.map +1 -0
  36. package/dist/{chunk-SOH5VORA.js → chunk-7RLQ6356.js} +3 -3
  37. package/dist/{chunk-SOH5VORA.js.map → chunk-7RLQ6356.js.map} +1 -1
  38. package/dist/{chunk-CYLX5SJ4.js → chunk-7SVSAMG4.js} +6 -6
  39. package/dist/{chunk-CYLX5SJ4.js.map → chunk-7SVSAMG4.js.map} +1 -1
  40. package/dist/{chunk-OAE7ZFYO.cjs → chunk-ALOM42GR.cjs} +24 -24
  41. package/dist/{chunk-OAE7ZFYO.cjs.map → chunk-ALOM42GR.cjs.map} +1 -1
  42. package/dist/{chunk-3EK2EVVE.js → chunk-ANIIJVPR.js} +4 -4
  43. package/dist/{chunk-3EK2EVVE.js.map → chunk-ANIIJVPR.js.map} +1 -1
  44. package/dist/chunk-B3CHYE7C.js +549 -0
  45. package/dist/chunk-B3CHYE7C.js.map +1 -0
  46. package/dist/{chunk-2HM5SQM5.js → chunk-BK2PTTTN.js} +4 -4
  47. package/dist/{chunk-2HM5SQM5.js.map → chunk-BK2PTTTN.js.map} +1 -1
  48. package/dist/{chunk-YN57WYLS.cjs → chunk-BNONPEW6.cjs} +11 -11
  49. package/dist/{chunk-YN57WYLS.cjs.map → chunk-BNONPEW6.cjs.map} +1 -1
  50. package/dist/{chunk-XPF4VEXO.js → chunk-BZ3NR3IS.js} +40 -38
  51. package/dist/chunk-BZ3NR3IS.js.map +1 -0
  52. package/dist/{chunk-4NPFEKIP.js → chunk-CG3AAC7C.js} +4 -4
  53. package/dist/{chunk-4NPFEKIP.js.map → chunk-CG3AAC7C.js.map} +1 -1
  54. package/dist/{chunk-VGNQKFWM.js → chunk-DC7NOATT.js} +3 -3
  55. package/dist/{chunk-VGNQKFWM.js.map → chunk-DC7NOATT.js.map} +1 -1
  56. package/dist/{chunk-WMS63TTU.cjs → chunk-DDF3ZASL.cjs} +168 -64
  57. package/dist/chunk-DDF3ZASL.cjs.map +1 -0
  58. package/dist/{chunk-NB7LJMYF.js → chunk-DPGNOE7R.js} +3 -3
  59. package/dist/{chunk-NB7LJMYF.js.map → chunk-DPGNOE7R.js.map} +1 -1
  60. package/dist/{chunk-KRMMYAXW.cjs → chunk-E7IOQCUP.cjs} +10 -10
  61. package/dist/{chunk-KRMMYAXW.cjs.map → chunk-E7IOQCUP.cjs.map} +1 -1
  62. package/dist/{chunk-RVAPXLP2.js → chunk-EFQBRUA4.js} +3 -3
  63. package/dist/{chunk-RVAPXLP2.js.map → chunk-EFQBRUA4.js.map} +1 -1
  64. package/dist/{chunk-4KNRG3KO.cjs → chunk-EN45CWWM.cjs} +18 -18
  65. package/dist/{chunk-4KNRG3KO.cjs.map → chunk-EN45CWWM.cjs.map} +1 -1
  66. package/dist/chunk-F3HP5HM6.cjs +998 -0
  67. package/dist/chunk-F3HP5HM6.cjs.map +1 -0
  68. package/dist/{chunk-Y3OQTZDN.js → chunk-FD3TJOO6.js} +44 -15
  69. package/dist/chunk-FD3TJOO6.js.map +1 -0
  70. package/dist/{chunk-PYT4SLHO.js → chunk-FJZ67HHA.js} +3 -3
  71. package/dist/{chunk-PYT4SLHO.js.map → chunk-FJZ67HHA.js.map} +1 -1
  72. package/dist/{chunk-TE2PWB67.js → chunk-GIMDOFRR.js} +4 -4
  73. package/dist/{chunk-TE2PWB67.js.map → chunk-GIMDOFRR.js.map} +1 -1
  74. package/dist/{chunk-MTKGUIFX.js → chunk-GJ3BKRTZ.js} +6 -6
  75. package/dist/{chunk-MTKGUIFX.js.map → chunk-GJ3BKRTZ.js.map} +1 -1
  76. package/dist/{chunk-UMXIU6E3.cjs → chunk-GNQ5SKPB.cjs} +7 -7
  77. package/dist/{chunk-UMXIU6E3.cjs.map → chunk-GNQ5SKPB.cjs.map} +1 -1
  78. package/dist/{chunk-AMZMBCKG.cjs → chunk-GOXW7A5J.cjs} +10 -10
  79. package/dist/{chunk-AMZMBCKG.cjs.map → chunk-GOXW7A5J.cjs.map} +1 -1
  80. package/dist/{chunk-EKS524LA.js → chunk-GP65L3TF.js} +83 -34
  81. package/dist/chunk-GP65L3TF.js.map +1 -0
  82. package/dist/{chunk-SYDZFUZI.js → chunk-GSL72DOW.js} +3 -3
  83. package/dist/{chunk-SYDZFUZI.js.map → chunk-GSL72DOW.js.map} +1 -1
  84. package/dist/{chunk-CSG535HL.cjs → chunk-GV2J3XQ4.cjs} +137 -108
  85. package/dist/chunk-GV2J3XQ4.cjs.map +1 -0
  86. package/dist/{chunk-VESPCO5X.js → chunk-ITIAC2TC.js} +3 -3
  87. package/dist/{chunk-VESPCO5X.js.map → chunk-ITIAC2TC.js.map} +1 -1
  88. package/dist/{chunk-BGRKLLHE.cjs → chunk-J62R54QE.cjs} +6 -6
  89. package/dist/{chunk-BGRKLLHE.cjs.map → chunk-J62R54QE.cjs.map} +1 -1
  90. package/dist/{chunk-BLK2XYVU.cjs → chunk-JLH5BHLT.cjs} +10 -10
  91. package/dist/{chunk-BLK2XYVU.cjs.map → chunk-JLH5BHLT.cjs.map} +1 -1
  92. package/dist/{chunk-UOC4K3RU.js → chunk-JOUPK2UV.js} +3 -3
  93. package/dist/{chunk-UOC4K3RU.js.map → chunk-JOUPK2UV.js.map} +1 -1
  94. package/dist/{chunk-HLDBO2H6.js → chunk-JSHKUN5Y.js} +3 -3
  95. package/dist/{chunk-HLDBO2H6.js.map → chunk-JSHKUN5Y.js.map} +1 -1
  96. package/dist/chunk-KUCITIUY.cjs +636 -0
  97. package/dist/chunk-KUCITIUY.cjs.map +1 -0
  98. package/dist/{chunk-LRYHYARK.js → chunk-KXZBJDFG.js} +4 -4
  99. package/dist/{chunk-LRYHYARK.js.map → chunk-KXZBJDFG.js.map} +1 -1
  100. package/dist/{chunk-MWXGGCHD.cjs → chunk-L742HQNI.cjs} +10 -10
  101. package/dist/{chunk-MWXGGCHD.cjs.map → chunk-L742HQNI.cjs.map} +1 -1
  102. package/dist/{chunk-ZOILZWQD.cjs → chunk-LKVE4QAW.cjs} +6 -6
  103. package/dist/{chunk-ZOILZWQD.cjs.map → chunk-LKVE4QAW.cjs.map} +1 -1
  104. package/dist/{chunk-6DAZZPVO.cjs → chunk-LNV75BVN.cjs} +38 -38
  105. package/dist/{chunk-6DAZZPVO.cjs.map → chunk-LNV75BVN.cjs.map} +1 -1
  106. package/dist/{chunk-S4L4CSQD.js → chunk-LRUC4D2Q.js} +3 -3
  107. package/dist/{chunk-S4L4CSQD.js.map → chunk-LRUC4D2Q.js.map} +1 -1
  108. package/dist/{chunk-ANXKF4TA.cjs → chunk-M62Z4EEY.cjs} +147 -147
  109. package/dist/chunk-M62Z4EEY.cjs.map +1 -0
  110. package/dist/{chunk-IYEGDP3G.js → chunk-M7DF3D2M.js} +3 -3
  111. package/dist/{chunk-IYEGDP3G.js.map → chunk-M7DF3D2M.js.map} +1 -1
  112. package/dist/{chunk-LOZT5NDU.cjs → chunk-MZ3RKQKS.cjs} +6 -6
  113. package/dist/{chunk-LOZT5NDU.cjs.map → chunk-MZ3RKQKS.cjs.map} +1 -1
  114. package/dist/{chunk-3OTCA7TP.js → chunk-NKCUF5ZH.js} +3 -3
  115. package/dist/{chunk-3OTCA7TP.js.map → chunk-NKCUF5ZH.js.map} +1 -1
  116. package/dist/{chunk-UOBKNRHM.cjs → chunk-NKYIWTT3.cjs} +12 -12
  117. package/dist/{chunk-UOBKNRHM.cjs.map → chunk-NKYIWTT3.cjs.map} +1 -1
  118. package/dist/{chunk-R7EB3VDI.cjs → chunk-NOQ45USI.cjs} +13 -13
  119. package/dist/{chunk-R7EB3VDI.cjs.map → chunk-NOQ45USI.cjs.map} +1 -1
  120. package/dist/{chunk-YQILRC5Y.cjs → chunk-OB4NE2YX.cjs} +10 -10
  121. package/dist/{chunk-YQILRC5Y.cjs.map → chunk-OB4NE2YX.cjs.map} +1 -1
  122. package/dist/{chunk-ICJ2ZVI2.cjs → chunk-OJFDLVAO.cjs} +13 -13
  123. package/dist/{chunk-ICJ2ZVI2.cjs.map → chunk-OJFDLVAO.cjs.map} +1 -1
  124. package/dist/{chunk-PM3UPQWH.cjs → chunk-P3TJ7MI6.cjs} +11 -11
  125. package/dist/{chunk-PM3UPQWH.cjs.map → chunk-P3TJ7MI6.cjs.map} +1 -1
  126. package/dist/{chunk-HYYXUP35.cjs → chunk-PJDFXAOL.cjs} +2 -2
  127. package/dist/{chunk-HYYXUP35.cjs.map → chunk-PJDFXAOL.cjs.map} +1 -1
  128. package/dist/{chunk-AWXCTLMK.cjs → chunk-PPCGMD6N.cjs} +11 -11
  129. package/dist/{chunk-AWXCTLMK.cjs.map → chunk-PPCGMD6N.cjs.map} +1 -1
  130. package/dist/{chunk-TWT64BVR.js → chunk-PUAKBO3Q.js} +45 -70
  131. package/dist/chunk-PUAKBO3Q.js.map +1 -0
  132. package/dist/{chunk-QEM5P746.cjs → chunk-PYGX3GUB.cjs} +71 -96
  133. package/dist/chunk-PYGX3GUB.cjs.map +1 -0
  134. package/dist/{chunk-ZSGVBBC4.js → chunk-QFGTTQFQ.js} +3 -3
  135. package/dist/{chunk-ZSGVBBC4.js.map → chunk-QFGTTQFQ.js.map} +1 -1
  136. package/dist/{chunk-HFF6QRLL.cjs → chunk-QISQJJPS.cjs} +6 -6
  137. package/dist/{chunk-HFF6QRLL.cjs.map → chunk-QISQJJPS.cjs.map} +1 -1
  138. package/dist/{chunk-IDLB647Y.js → chunk-QLJYRTD2.js} +4 -4
  139. package/dist/{chunk-IDLB647Y.js.map → chunk-QLJYRTD2.js.map} +1 -1
  140. package/dist/{chunk-STNEFHHA.js → chunk-RYOD3GP4.js} +4 -4
  141. package/dist/{chunk-STNEFHHA.js.map → chunk-RYOD3GP4.js.map} +1 -1
  142. package/dist/{chunk-KSQVYDDO.cjs → chunk-RYXKJ55A.cjs} +11 -11
  143. package/dist/{chunk-KSQVYDDO.cjs.map → chunk-RYXKJ55A.cjs.map} +1 -1
  144. package/dist/{chunk-GP45BMSR.js → chunk-SEMTGEAA.js} +3 -3
  145. package/dist/{chunk-GP45BMSR.js.map → chunk-SEMTGEAA.js.map} +1 -1
  146. package/dist/{chunk-C7Q5IMST.js → chunk-SFJOG2BT.js} +3 -3
  147. package/dist/{chunk-C7Q5IMST.js.map → chunk-SFJOG2BT.js.map} +1 -1
  148. package/dist/chunk-TLLV2JP5.js +983 -0
  149. package/dist/chunk-TLLV2JP5.js.map +1 -0
  150. package/dist/chunk-TTJ3DYZH.cjs +557 -0
  151. package/dist/chunk-TTJ3DYZH.cjs.map +1 -0
  152. package/dist/{chunk-WE5GUI23.js → chunk-UBOLRYFV.js} +3 -3
  153. package/dist/{chunk-WE5GUI23.js.map → chunk-UBOLRYFV.js.map} +1 -1
  154. package/dist/{chunk-GAS277DM.cjs → chunk-UVLX3WSX.cjs} +11 -11
  155. package/dist/{chunk-GAS277DM.cjs.map → chunk-UVLX3WSX.cjs.map} +1 -1
  156. package/dist/{chunk-HCIKFLLE.js → chunk-VMF4AV2C.js} +2 -2
  157. package/dist/{chunk-HCIKFLLE.js.map → chunk-VMF4AV2C.js.map} +1 -1
  158. package/dist/{chunk-KUBAQ732.cjs → chunk-VOBSGFM5.cjs} +10 -10
  159. package/dist/{chunk-KUBAQ732.cjs.map → chunk-VOBSGFM5.cjs.map} +1 -1
  160. package/dist/{chunk-5FHBVBU2.js → chunk-VQSY4I4H.js} +3 -3
  161. package/dist/{chunk-5FHBVBU2.js.map → chunk-VQSY4I4H.js.map} +1 -1
  162. package/dist/{chunk-GKN4IFE7.js → chunk-VYXPIZJE.js} +3 -3
  163. package/dist/{chunk-GKN4IFE7.js.map → chunk-VYXPIZJE.js.map} +1 -1
  164. package/dist/{chunk-WYQDPZNZ.cjs → chunk-W5B34RLN.cjs} +7 -7
  165. package/dist/{chunk-WYQDPZNZ.cjs.map → chunk-W5B34RLN.cjs.map} +1 -1
  166. package/dist/{chunk-VWBVA272.cjs → chunk-W6LHLN5M.cjs} +5 -5
  167. package/dist/{chunk-VWBVA272.cjs.map → chunk-W6LHLN5M.cjs.map} +1 -1
  168. package/dist/{chunk-KFEM2S5D.cjs → chunk-WWOML5Y4.cjs} +10 -10
  169. package/dist/{chunk-KFEM2S5D.cjs.map → chunk-WWOML5Y4.cjs.map} +1 -1
  170. package/dist/{chunk-Z7FXNI2N.cjs → chunk-XFDVU6GZ.cjs} +52 -52
  171. package/dist/{chunk-Z7FXNI2N.cjs.map → chunk-XFDVU6GZ.cjs.map} +1 -1
  172. package/dist/{chunk-BK2PRWVJ.cjs → chunk-Y5LNMKEY.cjs} +5 -5
  173. package/dist/{chunk-BK2PRWVJ.cjs.map → chunk-Y5LNMKEY.cjs.map} +1 -1
  174. package/dist/{chunk-OJRAH5VV.js → chunk-YARY4I5U.js} +18 -3
  175. package/dist/chunk-YARY4I5U.js.map +1 -0
  176. package/dist/{chunk-OJLXPTSL.cjs → chunk-YE56LUEI.cjs} +18 -18
  177. package/dist/{chunk-OJLXPTSL.cjs.map → chunk-YE56LUEI.cjs.map} +1 -1
  178. package/dist/{chunk-RQNN75EV.js → chunk-YGNA75MT.js} +5 -5
  179. package/dist/{chunk-RQNN75EV.js.map → chunk-YGNA75MT.js.map} +1 -1
  180. package/dist/{chunk-47U5QTGT.cjs → chunk-YYTMNPB7.cjs} +83 -34
  181. package/dist/chunk-YYTMNPB7.cjs.map +1 -0
  182. package/dist/docs/SKILL.md +1 -1
  183. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  184. package/dist/{observational-memory-HAJ3K5JJ-RB4HNAIV.cjs → observational-memory-2PRVG6BF-3V6S3B2J.cjs} +26 -26
  185. package/dist/{observational-memory-HAJ3K5JJ-RB4HNAIV.cjs.map → observational-memory-2PRVG6BF-3V6S3B2J.cjs.map} +1 -1
  186. package/dist/{observational-memory-HAJ3K5JJ-J2PZI56J.js → observational-memory-2PRVG6BF-4MT3GXPA.js} +3 -3
  187. package/dist/{observational-memory-HAJ3K5JJ-J2PZI56J.js.map → observational-memory-2PRVG6BF-4MT3GXPA.js.map} +1 -1
  188. package/dist/server/auth/index.cjs +15 -15
  189. package/dist/server/auth/index.js +1 -1
  190. package/dist/server/constants.d.ts +5 -0
  191. package/dist/server/constants.d.ts.map +1 -1
  192. package/dist/server/handlers/a2a.cjs +14 -14
  193. package/dist/server/handlers/a2a.js +1 -1
  194. package/dist/server/handlers/agent-builder.cjs +16 -16
  195. package/dist/server/handlers/agent-builder.js +1 -1
  196. package/dist/server/handlers/agent-versions.cjs +8 -8
  197. package/dist/server/handlers/agent-versions.js +1 -1
  198. package/dist/server/handlers/agents.cjs +39 -39
  199. package/dist/server/handlers/agents.d.ts.map +1 -1
  200. package/dist/server/handlers/agents.js +1 -1
  201. package/dist/server/handlers/auth.cjs +11 -11
  202. package/dist/server/handlers/auth.js +1 -1
  203. package/dist/server/handlers/background-tasks.cjs +4 -4
  204. package/dist/server/handlers/background-tasks.js +1 -1
  205. package/dist/server/handlers/channels.cjs +5 -5
  206. package/dist/server/handlers/channels.js +1 -1
  207. package/dist/server/handlers/conversations.cjs +5 -5
  208. package/dist/server/handlers/conversations.js +1 -1
  209. package/dist/server/handlers/datasets.cjs +26 -26
  210. package/dist/server/handlers/datasets.js +1 -1
  211. package/dist/server/handlers/logs.cjs +4 -4
  212. package/dist/server/handlers/logs.js +1 -1
  213. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  214. package/dist/server/handlers/mcp-client-versions.js +1 -1
  215. package/dist/server/handlers/mcp.cjs +11 -11
  216. package/dist/server/handlers/mcp.js +1 -1
  217. package/dist/server/handlers/memory.cjs +27 -27
  218. package/dist/server/handlers/memory.js +1 -1
  219. package/dist/server/handlers/observability-new-endpoints.cjs +28 -28
  220. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  221. package/dist/server/handlers/observability.cjs +38 -38
  222. package/dist/server/handlers/observability.js +2 -2
  223. package/dist/server/handlers/processor-providers.cjs +3 -3
  224. package/dist/server/handlers/processor-providers.js +1 -1
  225. package/dist/server/handlers/processors.cjs +4 -4
  226. package/dist/server/handlers/processors.js +1 -1
  227. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  228. package/dist/server/handlers/prompt-block-versions.js +1 -1
  229. package/dist/server/handlers/responses.adapter.cjs +18 -14
  230. package/dist/server/handlers/responses.adapter.d.ts +96 -2
  231. package/dist/server/handlers/responses.adapter.d.ts.map +1 -1
  232. package/dist/server/handlers/responses.adapter.js +1 -1
  233. package/dist/server/handlers/responses.cjs +4 -4
  234. package/dist/server/handlers/responses.d.ts.map +1 -1
  235. package/dist/server/handlers/responses.js +1 -1
  236. package/dist/server/handlers/responses.storage.cjs +8 -8
  237. package/dist/server/handlers/responses.storage.d.ts +4 -2
  238. package/dist/server/handlers/responses.storage.d.ts.map +1 -1
  239. package/dist/server/handlers/responses.storage.js +1 -1
  240. package/dist/server/handlers/schedules.cjs +6 -6
  241. package/dist/server/handlers/schedules.js +1 -1
  242. package/dist/server/handlers/scorer-versions.cjs +8 -8
  243. package/dist/server/handlers/scorer-versions.js +1 -1
  244. package/dist/server/handlers/scores.cjs +7 -7
  245. package/dist/server/handlers/scores.js +1 -1
  246. package/dist/server/handlers/stored-agents.cjs +7 -7
  247. package/dist/server/handlers/stored-agents.js +1 -1
  248. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  249. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  250. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  251. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  252. package/dist/server/handlers/stored-scorers.cjs +6 -6
  253. package/dist/server/handlers/stored-scorers.js +1 -1
  254. package/dist/server/handlers/stored-skills.cjs +7 -7
  255. package/dist/server/handlers/stored-skills.js +1 -1
  256. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  257. package/dist/server/handlers/stored-workspaces.js +1 -1
  258. package/dist/server/handlers/system.cjs +3 -3
  259. package/dist/server/handlers/system.js +1 -1
  260. package/dist/server/handlers/tool-providers.cjs +5 -5
  261. package/dist/server/handlers/tool-providers.js +1 -1
  262. package/dist/server/handlers/tools.cjs +6 -6
  263. package/dist/server/handlers/tools.js +1 -1
  264. package/dist/server/handlers/utils.cjs +10 -10
  265. package/dist/server/handlers/utils.js +1 -1
  266. package/dist/server/handlers/vector.cjs +16 -16
  267. package/dist/server/handlers/vector.js +1 -1
  268. package/dist/server/handlers/voice.cjs +8 -8
  269. package/dist/server/handlers/voice.js +1 -1
  270. package/dist/server/handlers/workflows.cjs +32 -24
  271. package/dist/server/handlers/workflows.d.ts +83 -0
  272. package/dist/server/handlers/workflows.d.ts.map +1 -1
  273. package/dist/server/handlers/workflows.js +1 -1
  274. package/dist/server/handlers/workspace.cjs +26 -26
  275. package/dist/server/handlers/workspace.js +1 -1
  276. package/dist/server/handlers.cjs +30 -30
  277. package/dist/server/handlers.js +15 -15
  278. package/dist/server/server-adapter/index.cjs +55 -28
  279. package/dist/server/server-adapter/index.cjs.map +1 -1
  280. package/dist/server/server-adapter/index.d.ts +5 -1
  281. package/dist/server/server-adapter/index.d.ts.map +1 -1
  282. package/dist/server/server-adapter/index.js +19 -11
  283. package/dist/server/server-adapter/index.js.map +1 -1
  284. package/dist/server/server-adapter/routes/workflows.d.ts +66 -1
  285. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -1
  286. package/package.json +6 -6
  287. package/dist/chunk-2KDOM6QE.js.map +0 -1
  288. package/dist/chunk-47U5QTGT.cjs.map +0 -1
  289. package/dist/chunk-AJYJ4H7P.js +0 -438
  290. package/dist/chunk-AJYJ4H7P.js.map +0 -1
  291. package/dist/chunk-ANXKF4TA.cjs.map +0 -1
  292. package/dist/chunk-CSG535HL.cjs.map +0 -1
  293. package/dist/chunk-DFSUBEGE.js +0 -226
  294. package/dist/chunk-DFSUBEGE.js.map +0 -1
  295. package/dist/chunk-EFW6MWXU.cjs.map +0 -1
  296. package/dist/chunk-EKS524LA.js.map +0 -1
  297. package/dist/chunk-OJ72T77G.cjs +0 -452
  298. package/dist/chunk-OJ72T77G.cjs.map +0 -1
  299. package/dist/chunk-OJRAH5VV.js.map +0 -1
  300. package/dist/chunk-PJYQMPXT.cjs +0 -234
  301. package/dist/chunk-PJYQMPXT.cjs.map +0 -1
  302. package/dist/chunk-QEM5P746.cjs.map +0 -1
  303. package/dist/chunk-TWT64BVR.js.map +0 -1
  304. package/dist/chunk-VZNSMKB7.cjs +0 -634
  305. package/dist/chunk-VZNSMKB7.cjs.map +0 -1
  306. package/dist/chunk-WEDFF5FH.js.map +0 -1
  307. package/dist/chunk-WMS63TTU.cjs.map +0 -1
  308. package/dist/chunk-XPF4VEXO.js.map +0 -1
  309. package/dist/chunk-Y3OQTZDN.js.map +0 -1
@@ -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');
4
+ var chunkPJDFXAOL_cjs = require('./chunk-PJDFXAOL.cjs');
5
5
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.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-W6LHLN5M.cjs.map
70
+ //# sourceMappingURL=chunk-W6LHLN5M.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/processor-providers.ts"],"names":["createRoute","getProcessorProvidersResponseSchema","HTTPException","handleError","processorProviderIdPathParams","getProcessorProviderResponseSchema","zodToJsonSchema"],"mappings":";;;;;;;;AAmBO,IAAM,iCAAiCA,6BAAA,CAAY;AAAA,EACxD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,sBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,cAAA,EAAgBC,qDAAA;AAAA,EAChB,OAAA,EAAS,0BAAA;AAAA,EACT,WAAA,EAAa,2FAAA;AAAA,EACb,IAAA,EAAM,CAAC,qBAAqB,CAAA;AAAA,EAC5B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAO,KAAM;AAC7B,IAAA,IAAI;AACF,MAAA,MAAM,MAAA,GAAS,OAAO,SAAA,EAAU;AAEhC,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,4BAA4B,CAAA;AAAA,MACtE;AAEA,MAAA,MAAM,SAAA,GAAY,OAAO,qBAAA,EAAsB;AAE/C,MAAA,OAAO;AAAA,QACL,WAAW,MAAA,CAAO,MAAA,CAAO,SAAS,CAAA,CAAE,IAAI,CAAA,QAAA,MAAa;AAAA,UACnD,GAAG,QAAA,CAAS,IAAA;AAAA,UACZ,iBAAiB,QAAA,CAAS;AAAA,SAC5B,CAAE;AAAA,OACJ;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,mCAAmC,CAAA;AAAA,IAC/D;AAAA,EACF;AACF,CAAC;AAKM,IAAM,+BAA+BH,6BAAA,CAAY;AAAA,EACtD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,kCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBI,+CAAA;AAAA,EACjB,cAAA,EAAgBC,oDAAA;AAAA,EAChB,OAAA,EAAS,gCAAA;AAAA,EACT,WAAA,EAAa,yFAAA;AAAA,EACb,IAAA,EAAM,CAAC,qBAAqB,CAAA;AAAA,EAC5B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,YAAW,KAAM;AACzC,IAAA,IAAI;AACF,MAAA,MAAM,MAAA,GAAS,OAAO,SAAA,EAAU;AAEhC,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAIH,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,4BAA4B,CAAA;AAAA,MACtE;AAEA,MAAA,MAAM,QAAA,GAAW,MAAA,CAAO,oBAAA,CAAqB,UAAU,CAAA;AAEvD,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,2BAAA,EAA8B,UAAU,cAAc,CAAA;AAAA,MAChG;AAEA,MAAA,OAAO;AAAA,QACL,GAAG,QAAA,CAAS,IAAA;AAAA,QACZ,iBAAiB,QAAA,CAAS,eAAA;AAAA,QAC1B,YAAA,EAAcI,yBAAA,CAAgB,QAAA,CAAS,YAAY;AAAA,OACrD;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,kCAAkC,CAAA;AAAA,IAC9D;AAAA,EACF;AACF,CAAC","file":"chunk-VWBVA272.cjs","sourcesContent":["import { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\n\nimport { HTTPException } from '../http-exception';\nimport {\n processorProviderIdPathParams,\n getProcessorProvidersResponseSchema,\n getProcessorProviderResponseSchema,\n} from '../schemas/processor-providers';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /processor-providers - List all registered processor providers\n */\nexport const LIST_PROCESSOR_PROVIDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/processor-providers',\n responseType: 'json',\n responseSchema: getProcessorProvidersResponseSchema,\n summary: 'List processor providers',\n description: 'Returns a list of all registered processor providers with their info and available phases',\n tags: ['Processor Providers'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const editor = mastra.getEditor();\n\n if (!editor) {\n throw new HTTPException(500, { message: 'Editor is not configured' });\n }\n\n const providers = editor.getProcessorProviders();\n\n return {\n providers: Object.values(providers).map(provider => ({\n ...provider.info,\n availablePhases: provider.availablePhases,\n })),\n };\n } catch (error) {\n return handleError(error, 'Error listing processor providers');\n }\n },\n});\n\n/**\n * GET /processor-providers/:providerId - Get a specific processor provider with config schema\n */\nexport const GET_PROCESSOR_PROVIDER_ROUTE = createRoute({\n method: 'GET',\n path: '/processor-providers/:providerId',\n responseType: 'json',\n pathParamSchema: processorProviderIdPathParams,\n responseSchema: getProcessorProviderResponseSchema,\n summary: 'Get processor provider details',\n description: 'Returns details about a specific processor provider, including its configuration schema',\n tags: ['Processor Providers'],\n requiresAuth: true,\n handler: async ({ mastra, providerId }) => {\n try {\n const editor = mastra.getEditor();\n\n if (!editor) {\n throw new HTTPException(500, { message: 'Editor is not configured' });\n }\n\n const provider = editor.getProcessorProvider(providerId);\n\n if (!provider) {\n throw new HTTPException(404, { message: `Processor provider with id ${providerId} not found` });\n }\n\n return {\n ...provider.info,\n availablePhases: provider.availablePhases,\n configSchema: zodToJsonSchema(provider.configSchema) as Record<string, unknown>,\n };\n } catch (error) {\n return handleError(error, 'Error getting processor provider');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/processor-providers.ts"],"names":["createRoute","getProcessorProvidersResponseSchema","HTTPException","handleError","processorProviderIdPathParams","getProcessorProviderResponseSchema","zodToJsonSchema"],"mappings":";;;;;;;;AAmBO,IAAM,iCAAiCA,6BAAA,CAAY;AAAA,EACxD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,sBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,cAAA,EAAgBC,qDAAA;AAAA,EAChB,OAAA,EAAS,0BAAA;AAAA,EACT,WAAA,EAAa,2FAAA;AAAA,EACb,IAAA,EAAM,CAAC,qBAAqB,CAAA;AAAA,EAC5B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAO,KAAM;AAC7B,IAAA,IAAI;AACF,MAAA,MAAM,MAAA,GAAS,OAAO,SAAA,EAAU;AAEhC,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,4BAA4B,CAAA;AAAA,MACtE;AAEA,MAAA,MAAM,SAAA,GAAY,OAAO,qBAAA,EAAsB;AAE/C,MAAA,OAAO;AAAA,QACL,WAAW,MAAA,CAAO,MAAA,CAAO,SAAS,CAAA,CAAE,IAAI,CAAA,QAAA,MAAa;AAAA,UACnD,GAAG,QAAA,CAAS,IAAA;AAAA,UACZ,iBAAiB,QAAA,CAAS;AAAA,SAC5B,CAAE;AAAA,OACJ;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,mCAAmC,CAAA;AAAA,IAC/D;AAAA,EACF;AACF,CAAC;AAKM,IAAM,+BAA+BH,6BAAA,CAAY;AAAA,EACtD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,kCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBI,+CAAA;AAAA,EACjB,cAAA,EAAgBC,oDAAA;AAAA,EAChB,OAAA,EAAS,gCAAA;AAAA,EACT,WAAA,EAAa,yFAAA;AAAA,EACb,IAAA,EAAM,CAAC,qBAAqB,CAAA;AAAA,EAC5B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,YAAW,KAAM;AACzC,IAAA,IAAI;AACF,MAAA,MAAM,MAAA,GAAS,OAAO,SAAA,EAAU;AAEhC,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAIH,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,4BAA4B,CAAA;AAAA,MACtE;AAEA,MAAA,MAAM,QAAA,GAAW,MAAA,CAAO,oBAAA,CAAqB,UAAU,CAAA;AAEvD,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,2BAAA,EAA8B,UAAU,cAAc,CAAA;AAAA,MAChG;AAEA,MAAA,OAAO;AAAA,QACL,GAAG,QAAA,CAAS,IAAA;AAAA,QACZ,iBAAiB,QAAA,CAAS,eAAA;AAAA,QAC1B,YAAA,EAAcI,yBAAA,CAAgB,QAAA,CAAS,YAAY;AAAA,OACrD;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,kCAAkC,CAAA;AAAA,IAC9D;AAAA,EACF;AACF,CAAC","file":"chunk-W6LHLN5M.cjs","sourcesContent":["import { zodToJsonSchema } from '@mastra/core/utils/zod-to-json';\n\nimport { HTTPException } from '../http-exception';\nimport {\n processorProviderIdPathParams,\n getProcessorProvidersResponseSchema,\n getProcessorProviderResponseSchema,\n} from '../schemas/processor-providers';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /processor-providers - List all registered processor providers\n */\nexport const LIST_PROCESSOR_PROVIDERS_ROUTE = createRoute({\n method: 'GET',\n path: '/processor-providers',\n responseType: 'json',\n responseSchema: getProcessorProvidersResponseSchema,\n summary: 'List processor providers',\n description: 'Returns a list of all registered processor providers with their info and available phases',\n tags: ['Processor Providers'],\n requiresAuth: true,\n handler: async ({ mastra }) => {\n try {\n const editor = mastra.getEditor();\n\n if (!editor) {\n throw new HTTPException(500, { message: 'Editor is not configured' });\n }\n\n const providers = editor.getProcessorProviders();\n\n return {\n providers: Object.values(providers).map(provider => ({\n ...provider.info,\n availablePhases: provider.availablePhases,\n })),\n };\n } catch (error) {\n return handleError(error, 'Error listing processor providers');\n }\n },\n});\n\n/**\n * GET /processor-providers/:providerId - Get a specific processor provider with config schema\n */\nexport const GET_PROCESSOR_PROVIDER_ROUTE = createRoute({\n method: 'GET',\n path: '/processor-providers/:providerId',\n responseType: 'json',\n pathParamSchema: processorProviderIdPathParams,\n responseSchema: getProcessorProviderResponseSchema,\n summary: 'Get processor provider details',\n description: 'Returns details about a specific processor provider, including its configuration schema',\n tags: ['Processor Providers'],\n requiresAuth: true,\n handler: async ({ mastra, providerId }) => {\n try {\n const editor = mastra.getEditor();\n\n if (!editor) {\n throw new HTTPException(500, { message: 'Editor is not configured' });\n }\n\n const provider = editor.getProcessorProvider(providerId);\n\n if (!provider) {\n throw new HTTPException(404, { message: `Processor provider with id ${providerId} not found` });\n }\n\n return {\n ...provider.info,\n availablePhases: provider.availablePhases,\n configSchema: zodToJsonSchema(provider.configSchema) as Record<string, unknown>,\n };\n } catch (error) {\n return handleError(error, 'Error getting processor provider');\n }\n },\n});\n"]}
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkIABGFWY2_cjs = require('./chunk-IABGFWY2.cjs');
4
- var chunkBGRKLLHE_cjs = require('./chunk-BGRKLLHE.cjs');
4
+ var chunkJ62R54QE_cjs = require('./chunk-J62R54QE.cjs');
5
5
  var chunk2XZ2466F_cjs = require('./chunk-2XZ2466F.cjs');
6
6
  var chunkDIG2K5CV_cjs = require('./chunk-DIG2K5CV.cjs');
7
- var chunkHYYXUP35_cjs = require('./chunk-HYYXUP35.cjs');
7
+ var chunkPJDFXAOL_cjs = require('./chunk-PJDFXAOL.cjs');
8
8
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
9
9
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
10
10
 
@@ -19,7 +19,7 @@ var PROMPT_BLOCK_SNAPSHOT_CONFIG_FIELDS = [
19
19
  function computeHasDraft(latestVersion, activeVersionId) {
20
20
  return !!(latestVersion && (!activeVersionId || latestVersion.id !== activeVersionId));
21
21
  }
22
- var LIST_STORED_PROMPT_BLOCKS_ROUTE = chunkHYYXUP35_cjs.createRoute({
22
+ var LIST_STORED_PROMPT_BLOCKS_ROUTE = chunkPJDFXAOL_cjs.createRoute({
23
23
  method: "GET",
24
24
  path: "/stored/prompt-blocks",
25
25
  responseType: "json",
@@ -59,7 +59,7 @@ var LIST_STORED_PROMPT_BLOCKS_ROUTE = chunkHYYXUP35_cjs.createRoute({
59
59
  }
60
60
  }
61
61
  });
62
- var GET_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
62
+ var GET_STORED_PROMPT_BLOCK_ROUTE = chunkPJDFXAOL_cjs.createRoute({
63
63
  method: "GET",
64
64
  path: "/stored/prompt-blocks/:storedPromptBlockId",
65
65
  responseType: "json",
@@ -91,7 +91,7 @@ var GET_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
91
91
  }
92
92
  }
93
93
  });
94
- var CREATE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
94
+ var CREATE_STORED_PROMPT_BLOCK_ROUTE = chunkPJDFXAOL_cjs.createRoute({
95
95
  method: "POST",
96
96
  path: "/stored/prompt-blocks",
97
97
  responseType: "json",
@@ -121,7 +121,7 @@ var CREATE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
121
121
  if (!promptBlockStore) {
122
122
  throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Prompt blocks storage domain is not available" });
123
123
  }
124
- const id = providedId || chunkBGRKLLHE_cjs.toSlug(name);
124
+ const id = providedId || chunkJ62R54QE_cjs.toSlug(name);
125
125
  if (!id) {
126
126
  throw new chunk64ITUOXI_cjs.HTTPException(400, {
127
127
  message: "Could not derive prompt block ID from name. Please provide an explicit id."
@@ -155,7 +155,7 @@ var CREATE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
155
155
  }
156
156
  }
157
157
  });
158
- var UPDATE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
158
+ var UPDATE_STORED_PROMPT_BLOCK_ROUTE = chunkPJDFXAOL_cjs.createRoute({
159
159
  method: "PATCH",
160
160
  path: "/stored/prompt-blocks/:storedPromptBlockId",
161
161
  responseType: "json",
@@ -225,7 +225,7 @@ var UPDATE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
225
225
  }
226
226
  }
227
227
  });
228
- var DELETE_STORED_PROMPT_BLOCK_ROUTE = chunkHYYXUP35_cjs.createRoute({
228
+ var DELETE_STORED_PROMPT_BLOCK_ROUTE = chunkPJDFXAOL_cjs.createRoute({
229
229
  method: "DELETE",
230
230
  path: "/stored/prompt-blocks/:storedPromptBlockId",
231
231
  responseType: "json",
@@ -265,5 +265,5 @@ exports.DELETE_STORED_PROMPT_BLOCK_ROUTE = DELETE_STORED_PROMPT_BLOCK_ROUTE;
265
265
  exports.GET_STORED_PROMPT_BLOCK_ROUTE = GET_STORED_PROMPT_BLOCK_ROUTE;
266
266
  exports.LIST_STORED_PROMPT_BLOCKS_ROUTE = LIST_STORED_PROMPT_BLOCKS_ROUTE;
267
267
  exports.UPDATE_STORED_PROMPT_BLOCK_ROUTE = UPDATE_STORED_PROMPT_BLOCK_ROUTE;
268
- //# sourceMappingURL=chunk-KFEM2S5D.cjs.map
269
- //# sourceMappingURL=chunk-KFEM2S5D.cjs.map
268
+ //# sourceMappingURL=chunk-WWOML5Y4.cjs.map
269
+ //# sourceMappingURL=chunk-WWOML5Y4.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/stored-prompt-blocks.ts"],"names":["createRoute","listStoredPromptBlocksQuerySchema","listStoredPromptBlocksResponseSchema","HTTPException","handleError","storedPromptBlockIdPathParams","statusQuerySchema","getStoredPromptBlockResponseSchema","createStoredPromptBlockBodySchema","createStoredPromptBlockResponseSchema","toSlug","updateStoredPromptBlockBodySchema","updateStoredPromptBlockResponseSchema","handleAutoVersioning","deleteStoredPromptBlockResponseSchema"],"mappings":";;;;;;;;;;;AAoBA,IAAM,mCAAA,GAAsC;AAAA,EAC1C,MAAA;AAAA,EACA,aAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA;AACF,CAAA;AAGA,SAAS,eAAA,CACP,eACA,eAAA,EACS;AACT,EAAA,OAAO,CAAC,EAAE,aAAA,KAAkB,CAAC,eAAA,IAAmB,cAAc,EAAA,KAAO,eAAA,CAAA,CAAA;AACvE;AASO,IAAM,kCAAkCA,6BAAA,CAAY;AAAA,EACzD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,uBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,gBAAA,EAAkBC,mDAAA;AAAA,EAClB,cAAA,EAAgBC,sDAAA;AAAA,EAChB,OAAA,EAAS,2BAAA;AAAA,EACT,WAAA,EAAa,sEAAA;AAAA,EACb,IAAA,EAAM,CAAC,sBAAsB,CAAA;AAAA,EAC7B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,IAAA,EAAM,SAAS,OAAA,EAAS,MAAA,EAAQ,QAAA,EAAU,QAAA,EAAS,KAAM;AACjF,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,OAAO,UAAA,EAAW;AAElC,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,MACvE;AAEA,MAAA,MAAM,gBAAA,GAAmB,MAAM,OAAA,CAAQ,QAAA,CAAS,cAAc,CAAA;AAC9D,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,iDAAiD,CAAA;AAAA,MAC3F;AAEA,MAAA,MAAM,MAAA,GAAS,MAAM,gBAAA,CAAiB,YAAA,CAAa;AAAA,QACjD,IAAA;AAAA,QACA,OAAA;AAAA,QACA,OAAA;AAAA,QACA,MAAA;AAAA,QACA,QAAA;AAAA,QACA;AAAA,OACD,CAAA;AAKD,MAAA,MAAM,YAAA,GAAe,MAAM,OAAA,CAAQ,GAAA;AAAA,QACjC,MAAA,CAAO,YAAA,CAAa,GAAA,CAAI,OAAO,KAAA,KAAgD;AAC7E,UAAA,MAAM,aAAA,GAAgB,MAAM,gBAAA,CAAiB,gBAAA,CAAiB,MAAM,EAAE,CAAA;AACtE,UAAA,OAAO,EAAE,GAAG,KAAA,EAAO,QAAA,EAAU,gBAAgB,aAAA,EAAe,KAAA,CAAM,eAAe,CAAA,EAAE;AAAA,QACrF,CAAC;AAAA,OACH;AAEA,MAAA,OAAO,EAAE,GAAG,MAAA,EAAQ,YAAA,EAAa;AAAA,IACnC,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,oCAAoC,CAAA;AAAA,IAChE;AAAA,EACF;AACF,CAAC;AAKM,IAAM,gCAAgCJ,6BAAA,CAAY;AAAA,EACvD,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,4CAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBK,+CAAA;AAAA,EACjB,gBAAA,EAAkBC,mCAAA;AAAA,EAClB,cAAA,EAAgBC,oDAAA;AAAA,EAChB,OAAA,EAAS,+BAAA;AAAA,EACT,WAAA,EACE,uMAAA;AAAA,EACF,IAAA,EAAM,CAAC,sBAAsB,CAAA;AAAA,EAC7B,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO,EAAE,MAAA,EAAQ,mBAAA,EAAqB,QAAO,KAAM;AAC1D,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,OAAO,UAAA,EAAW;AAElC,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIJ,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,MACvE;AAEA,MAAA,MAAM,gBAAA,GAAmB,MAAM,OAAA,CAAQ,QAAA,CAAS,cAAc,CAAA;AAC9D,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,iDAAiD,CAAA;AAAA,MAC3F;AAEA,MAAA,MAAM,cAAc,MAAM,gBAAA,CAAiB,gBAAgB,mBAAA,EAAqB,EAAE,QAAQ,CAAA;AAE1F,MAAA,IAAI,CAAC,WAAA,EAAa;AAChB,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,4BAAA,EAA+B,mBAAmB,cAAc,CAAA;AAAA,MAC1G;AAEA,MAAA,MAAM,aAAA,GAAgB,MAAM,gBAAA,CAAiB,gBAAA,CAAiB,mBAAmB,CAAA;AAEjF,MAAA,OAAO,EAAE,GAAG,WAAA,EAAa,QAAA,EAAU,gBAAgB,aAAA,EAAe,WAAA,CAAY,eAAe,CAAA,EAAE;AAAA,IACjG,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,mCAAmC,CAAA;AAAA,IAC/D;AAAA,EACF;AACF,CAAC;AAKM,IAAM,mCAAmCJ,6BAAA,CAAY;AAAA,EAC1D,MAAA,EAAQ,MAAA;AAAA,EACR,IAAA,EAAM,uBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,UAAA,EAAYQ,mDAAA;AAAA,EACZ,cAAA,EAAgBC,uDAAA;AAAA,EAChB,OAAA,EAAS,4BAAA;AAAA,EACT,WAAA,EAAa,uEAAA;AAAA,EACb,IAAA,EAAM,CAAC,sBAAsB,CAAA;AAAA,EAC7B,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO;AAAA,IACd,MAAA;AAAA,IACA,EAAA,EAAI,UAAA;AAAA,IACJ,QAAA;AAAA,IACA,QAAA;AAAA,IACA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA;AAAA,GACF,KAAM;AACJ,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,OAAO,UAAA,EAAW;AAElC,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIN,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,MACvE;AAEA,MAAA,MAAM,gBAAA,GAAmB,MAAM,OAAA,CAAQ,QAAA,CAAS,cAAc,CAAA;AAC9D,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,iDAAiD,CAAA;AAAA,MAC3F;AAGA,MAAA,MAAM,EAAA,GAAK,UAAA,IAAcO,wBAAA,CAAO,IAAI,CAAA;AAEpC,MAAA,IAAI,CAAC,EAAA,EAAI;AACP,QAAA,MAAM,IAAIP,gCAAc,GAAA,EAAK;AAAA,UAC3B,OAAA,EAAS;AAAA,SACV,CAAA;AAAA,MACH;AAGA,MAAA,MAAM,QAAA,GAAW,MAAM,gBAAA,CAAiB,OAAA,CAAQ,EAAE,CAAA;AAClD,MAAA,IAAI,QAAA,EAAU;AACZ,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,qBAAA,EAAwB,EAAE,mBAAmB,CAAA;AAAA,MACvF;AAEA,MAAA,MAAM,iBAAiB,MAAA,CAAO;AAAA,QAC5B,WAAA,EAAa;AAAA,UACX,EAAA;AAAA,UACA,QAAA;AAAA,UACA,QAAA;AAAA,UACA,IAAA;AAAA,UACA,WAAA;AAAA,UACA,OAAA;AAAA,UACA,KAAA;AAAA,UACA;AAAA;AACF,OACD,CAAA;AAID,MAAA,MAAM,QAAA,GAAW,MAAM,gBAAA,CAAiB,eAAA,CAAgB,IAAI,EAAE,MAAA,EAAQ,SAAS,CAAA;AAC/E,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,MACpF;AAEA,MAAA,MAAM,aAAA,GAAgB,MAAM,gBAAA,CAAiB,gBAAA,CAAiB,EAAE,CAAA;AAChE,MAAA,MAAM,QAAA,GAAW,CAAC,EAChB,aAAA,KACC,CAAC,QAAA,CAAS,eAAA,IAAmB,aAAA,CAAc,EAAA,KAAO,QAAA,CAAS,eAAA,CAAA,CAAA;AAG9D,MAAA,OAAO,EAAE,GAAG,QAAA,EAAU,QAAA,EAAS;AAAA,IACjC,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,oCAAoC,CAAA;AAAA,IAChE;AAAA,EACF;AACF,CAAC;AAKM,IAAM,mCAAmCJ,6BAAA,CAAY;AAAA,EAC1D,MAAA,EAAQ,OAAA;AAAA,EACR,IAAA,EAAM,4CAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBK,+CAAA;AAAA,EACjB,UAAA,EAAYM,mDAAA;AAAA,EACZ,cAAA,EAAgBC,uDAAA;AAAA,EAChB,OAAA,EAAS,4BAAA;AAAA,EACT,WAAA,EAAa,sEAAA;AAAA,EACb,IAAA,EAAM,CAAC,sBAAsB,CAAA;AAAA,EAC7B,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO;AAAA,IACd,MAAA;AAAA,IACA,mBAAA;AAAA;AAAA,IAEA,QAAA;AAAA,IACA,QAAA;AAAA;AAAA,IAEA,IAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA;AAAA,GACF,KAAM;AACJ,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,OAAO,UAAA,EAAW;AAElC,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIT,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,MACvE;AAEA,MAAA,MAAM,gBAAA,GAAmB,MAAM,OAAA,CAAQ,QAAA,CAAS,cAAc,CAAA;AAC9D,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,iDAAiD,CAAA;AAAA,MAC3F;AAGA,MAAA,MAAM,QAAA,GAAW,MAAM,gBAAA,CAAiB,OAAA,CAAQ,mBAAmB,CAAA;AACnE,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,4BAAA,EAA+B,mBAAmB,cAAc,CAAA;AAAA,MAC1G;AAGA,MAAA,MAAM,kBAAA,GAAqB,MAAM,gBAAA,CAAiB,MAAA,CAAO;AAAA,QACvD,EAAA,EAAI,mBAAA;AAAA,QACJ,QAAA;AAAA,QACA,QAAA;AAAA,QACA,IAAA;AAAA,QACA,WAAA;AAAA,QACA,OAAA;AAAA,QACA,KAAA;AAAA,QACA;AAAA,OACD,CAAA;AAGD,MAAA,MAAM,eAAe,EAAE,IAAA,EAAM,WAAA,EAAa,OAAA,EAAS,OAAO,oBAAA,EAAqB;AAG/E,MAAA,MAAM,oBAAA,GAAuB,MAAA,CAAO,WAAA,CAAY,MAAA,CAAO,QAAQ,YAAY,CAAA,CAAE,MAAA,CAAO,CAAC,CAAC,CAAA,EAAG,CAAC,CAAA,KAAM,CAAA,KAAM,MAAS,CAAC,CAAA;AAKhH,MAAA,MAAMU,sCAAA;AAAA,QACJ,gBAAA;AAAA,QACA,mBAAA;AAAA,QACA,SAAA;AAAA,QACA,mCAAA;AAAA,QACA,QAAA;AAAA,QACA,kBAAA;AAAA,QACA;AAAA,OACF;AAGA,MAAA,MAAM,QAAA,GAAW,MAAM,gBAAA,CAAiB,eAAA,CAAgB,qBAAqB,EAAE,MAAA,EAAQ,SAAS,CAAA;AAChG,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIV,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,MACpF;AAEA,MAAA,MAAM,aAAA,GAAgB,MAAM,gBAAA,CAAiB,gBAAA,CAAiB,mBAAmB,CAAA;AACjF,MAAA,MAAM,QAAA,GAAW,CAAC,EAChB,aAAA,KACC,CAAC,QAAA,CAAS,eAAA,IAAmB,aAAA,CAAc,EAAA,KAAO,QAAA,CAAS,eAAA,CAAA,CAAA;AAG9D,MAAA,OAAO,EAAE,GAAG,QAAA,EAAU,QAAA,EAAS;AAAA,IACjC,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,oCAAoC,CAAA;AAAA,IAChE;AAAA,EACF;AACF,CAAC;AAKM,IAAM,mCAAmCJ,6BAAA,CAAY;AAAA,EAC1D,MAAA,EAAQ,QAAA;AAAA,EACR,IAAA,EAAM,4CAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBK,+CAAA;AAAA,EACjB,cAAA,EAAgBS,uDAAA;AAAA,EAChB,OAAA,EAAS,4BAAA;AAAA,EACT,WAAA,EAAa,8DAAA;AAAA,EACb,IAAA,EAAM,CAAC,sBAAsB,CAAA;AAAA,EAC7B,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,qBAAoB,KAAM;AAClD,IAAA,IAAI;AACF,MAAA,MAAM,OAAA,GAAU,OAAO,UAAA,EAAW;AAElC,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIX,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,MACvE;AAEA,MAAA,MAAM,gBAAA,GAAmB,MAAM,OAAA,CAAQ,QAAA,CAAS,cAAc,CAAA;AAC9D,MAAA,IAAI,CAAC,gBAAA,EAAkB;AACrB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,iDAAiD,CAAA;AAAA,MAC3F;AAGA,MAAA,MAAM,QAAA,GAAW,MAAM,gBAAA,CAAiB,OAAA,CAAQ,mBAAmB,CAAA;AACnE,MAAA,IAAI,CAAC,QAAA,EAAU;AACb,QAAA,MAAM,IAAIA,gCAAc,GAAA,EAAK,EAAE,SAAS,CAAA,4BAAA,EAA+B,mBAAmB,cAAc,CAAA;AAAA,MAC1G;AAEA,MAAA,MAAM,gBAAA,CAAiB,OAAO,mBAAmB,CAAA;AAEjD,MAAA,OAAO;AAAA,QACL,OAAA,EAAS,IAAA;AAAA,QACT,OAAA,EAAS,gBAAgB,mBAAmB,CAAA,qBAAA;AAAA,OAC9C;AAAA,IACF,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,oCAAoC,CAAA;AAAA,IAChE;AAAA,EACF;AACF,CAAC","file":"chunk-KFEM2S5D.cjs","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":["createRoute","listStoredPromptBlocksQuerySchema","listStoredPromptBlocksResponseSchema","HTTPException","handleError","storedPromptBlockIdPathParams","statusQuerySchema","getStoredPromptBlockResponseSchema","createStoredPromptBlockBodySchema","createStoredPromptBlockResponseSchema","toSlug","updateStoredPromptBlockBodySchema","updateStoredPromptBlockResponseSchema","handleAutoVersioning","deleteStoredPromptBlockResponseSchema"],"mappings":"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","file":"chunk-WWOML5Y4.cjs","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,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunk6DAZZPVO_cjs = require('./chunk-6DAZZPVO.cjs');
3
+ var chunkLNV75BVN_cjs = require('./chunk-LNV75BVN.cjs');
4
4
  var chunkSUT6SU4I_cjs = require('./chunk-SUT6SU4I.cjs');
5
5
  var chunk2J4KEVXS_cjs = require('./chunk-2J4KEVXS.cjs');
6
- var chunkHYYXUP35_cjs = require('./chunk-HYYXUP35.cjs');
6
+ var chunkPJDFXAOL_cjs = require('./chunk-PJDFXAOL.cjs');
7
7
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
8
8
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
9
9
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -15,41 +15,41 @@ var v4 = require('zod/v4');
15
15
  // src/server/handlers/observability.ts
16
16
  var observability_exports = {};
17
17
  chunkO7I5CWRX_cjs.__export(observability_exports, {
18
- CREATE_FEEDBACK: () => chunk6DAZZPVO_cjs.CREATE_FEEDBACK,
19
- CREATE_SCORE: () => chunk6DAZZPVO_cjs.CREATE_SCORE,
18
+ CREATE_FEEDBACK: () => chunkLNV75BVN_cjs.CREATE_FEEDBACK,
19
+ CREATE_SCORE: () => chunkLNV75BVN_cjs.CREATE_SCORE,
20
20
  GET_BRANCH_ROUTE: () => GET_BRANCH_ROUTE,
21
- GET_ENTITY_NAMES: () => chunk6DAZZPVO_cjs.GET_ENTITY_NAMES,
22
- GET_ENTITY_TYPES: () => chunk6DAZZPVO_cjs.GET_ENTITY_TYPES,
23
- GET_ENVIRONMENTS: () => chunk6DAZZPVO_cjs.GET_ENVIRONMENTS,
24
- GET_FEEDBACK_AGGREGATE: () => chunk6DAZZPVO_cjs.GET_FEEDBACK_AGGREGATE,
25
- GET_FEEDBACK_BREAKDOWN: () => chunk6DAZZPVO_cjs.GET_FEEDBACK_BREAKDOWN,
26
- GET_FEEDBACK_PERCENTILES: () => chunk6DAZZPVO_cjs.GET_FEEDBACK_PERCENTILES,
27
- GET_FEEDBACK_TIME_SERIES: () => chunk6DAZZPVO_cjs.GET_FEEDBACK_TIME_SERIES,
28
- GET_METRIC_AGGREGATE: () => chunk6DAZZPVO_cjs.GET_METRIC_AGGREGATE,
29
- GET_METRIC_BREAKDOWN: () => chunk6DAZZPVO_cjs.GET_METRIC_BREAKDOWN,
30
- GET_METRIC_LABEL_KEYS: () => chunk6DAZZPVO_cjs.GET_METRIC_LABEL_KEYS,
31
- GET_METRIC_LABEL_VALUES: () => chunk6DAZZPVO_cjs.GET_METRIC_LABEL_VALUES,
32
- GET_METRIC_NAMES: () => chunk6DAZZPVO_cjs.GET_METRIC_NAMES,
33
- GET_METRIC_PERCENTILES: () => chunk6DAZZPVO_cjs.GET_METRIC_PERCENTILES,
34
- GET_METRIC_TIME_SERIES: () => chunk6DAZZPVO_cjs.GET_METRIC_TIME_SERIES,
35
- GET_SCORE: () => chunk6DAZZPVO_cjs.GET_SCORE,
36
- GET_SCORE_AGGREGATE: () => chunk6DAZZPVO_cjs.GET_SCORE_AGGREGATE,
37
- GET_SCORE_BREAKDOWN: () => chunk6DAZZPVO_cjs.GET_SCORE_BREAKDOWN,
38
- GET_SCORE_PERCENTILES: () => chunk6DAZZPVO_cjs.GET_SCORE_PERCENTILES,
39
- GET_SCORE_TIME_SERIES: () => chunk6DAZZPVO_cjs.GET_SCORE_TIME_SERIES,
40
- GET_SERVICE_NAMES: () => chunk6DAZZPVO_cjs.GET_SERVICE_NAMES,
21
+ GET_ENTITY_NAMES: () => chunkLNV75BVN_cjs.GET_ENTITY_NAMES,
22
+ GET_ENTITY_TYPES: () => chunkLNV75BVN_cjs.GET_ENTITY_TYPES,
23
+ GET_ENVIRONMENTS: () => chunkLNV75BVN_cjs.GET_ENVIRONMENTS,
24
+ GET_FEEDBACK_AGGREGATE: () => chunkLNV75BVN_cjs.GET_FEEDBACK_AGGREGATE,
25
+ GET_FEEDBACK_BREAKDOWN: () => chunkLNV75BVN_cjs.GET_FEEDBACK_BREAKDOWN,
26
+ GET_FEEDBACK_PERCENTILES: () => chunkLNV75BVN_cjs.GET_FEEDBACK_PERCENTILES,
27
+ GET_FEEDBACK_TIME_SERIES: () => chunkLNV75BVN_cjs.GET_FEEDBACK_TIME_SERIES,
28
+ GET_METRIC_AGGREGATE: () => chunkLNV75BVN_cjs.GET_METRIC_AGGREGATE,
29
+ GET_METRIC_BREAKDOWN: () => chunkLNV75BVN_cjs.GET_METRIC_BREAKDOWN,
30
+ GET_METRIC_LABEL_KEYS: () => chunkLNV75BVN_cjs.GET_METRIC_LABEL_KEYS,
31
+ GET_METRIC_LABEL_VALUES: () => chunkLNV75BVN_cjs.GET_METRIC_LABEL_VALUES,
32
+ GET_METRIC_NAMES: () => chunkLNV75BVN_cjs.GET_METRIC_NAMES,
33
+ GET_METRIC_PERCENTILES: () => chunkLNV75BVN_cjs.GET_METRIC_PERCENTILES,
34
+ GET_METRIC_TIME_SERIES: () => chunkLNV75BVN_cjs.GET_METRIC_TIME_SERIES,
35
+ GET_SCORE: () => chunkLNV75BVN_cjs.GET_SCORE,
36
+ GET_SCORE_AGGREGATE: () => chunkLNV75BVN_cjs.GET_SCORE_AGGREGATE,
37
+ GET_SCORE_BREAKDOWN: () => chunkLNV75BVN_cjs.GET_SCORE_BREAKDOWN,
38
+ GET_SCORE_PERCENTILES: () => chunkLNV75BVN_cjs.GET_SCORE_PERCENTILES,
39
+ GET_SCORE_TIME_SERIES: () => chunkLNV75BVN_cjs.GET_SCORE_TIME_SERIES,
40
+ GET_SERVICE_NAMES: () => chunkLNV75BVN_cjs.GET_SERVICE_NAMES,
41
41
  GET_SPAN_ROUTE: () => GET_SPAN_ROUTE,
42
- GET_TAGS: () => chunk6DAZZPVO_cjs.GET_TAGS,
42
+ GET_TAGS: () => chunkLNV75BVN_cjs.GET_TAGS,
43
43
  GET_TRACE_LIGHT_ROUTE: () => GET_TRACE_LIGHT_ROUTE,
44
44
  GET_TRACE_ROUTE: () => GET_TRACE_ROUTE,
45
45
  GET_TRACE_TRAJECTORY_ROUTE: () => GET_TRACE_TRAJECTORY_ROUTE,
46
46
  LIST_BRANCHES_ROUTE: () => LIST_BRANCHES_ROUTE,
47
- LIST_FEEDBACK: () => chunk6DAZZPVO_cjs.LIST_FEEDBACK,
48
- LIST_LOGS: () => chunk6DAZZPVO_cjs.LIST_LOGS,
49
- LIST_SCORES: () => chunk6DAZZPVO_cjs.LIST_SCORES,
47
+ LIST_FEEDBACK: () => chunkLNV75BVN_cjs.LIST_FEEDBACK,
48
+ LIST_LOGS: () => chunkLNV75BVN_cjs.LIST_LOGS,
49
+ LIST_SCORES: () => chunkLNV75BVN_cjs.LIST_SCORES,
50
50
  LIST_SCORES_BY_SPAN_ROUTE: () => LIST_SCORES_BY_SPAN_ROUTE,
51
51
  LIST_TRACES_ROUTE: () => LIST_TRACES_ROUTE,
52
- NEW_ROUTES: () => chunk6DAZZPVO_cjs.NEW_ROUTES,
52
+ NEW_ROUTES: () => chunkLNV75BVN_cjs.NEW_ROUTES,
53
53
  SCORE_TRACES_ROUTE: () => SCORE_TRACES_ROUTE
54
54
  });
55
55
  var legacyQueryParamsSchema = v4.z.object({
@@ -91,11 +91,11 @@ async function getScoresStore(mastra) {
91
91
  }
92
92
  return scores;
93
93
  }
94
- var LIST_TRACES_ROUTE = chunkHYYXUP35_cjs.createRoute({
94
+ var LIST_TRACES_ROUTE = chunkPJDFXAOL_cjs.createRoute({
95
95
  method: "GET",
96
96
  path: "/observability/traces",
97
97
  responseType: "json",
98
- queryParamSchema: chunkHYYXUP35_cjs.wrapSchemaForQueryParams(
98
+ queryParamSchema: chunkPJDFXAOL_cjs.wrapSchemaForQueryParams(
99
99
  storage.tracesFilterSchema.extend(storage.paginationArgsSchema.shape).extend(storage.tracesOrderBySchema.shape).extend(legacyQueryParamsSchema.shape).partial()
100
100
  ),
101
101
  responseSchema: storage.listTracesResponseSchema,
@@ -106,9 +106,9 @@ var LIST_TRACES_ROUTE = chunkHYYXUP35_cjs.createRoute({
106
106
  handler: async ({ mastra, ...params }) => {
107
107
  try {
108
108
  const transformedParams = transformLegacyParams(params);
109
- const filters = chunkHYYXUP35_cjs.pickParams(storage.tracesFilterSchema, transformedParams);
110
- const pagination = chunkHYYXUP35_cjs.pickParams(storage.paginationArgsSchema, transformedParams);
111
- const orderBy = chunkHYYXUP35_cjs.pickParams(storage.tracesOrderBySchema, transformedParams);
109
+ const filters = chunkPJDFXAOL_cjs.pickParams(storage.tracesFilterSchema, transformedParams);
110
+ const pagination = chunkPJDFXAOL_cjs.pickParams(storage.paginationArgsSchema, transformedParams);
111
+ const orderBy = chunkPJDFXAOL_cjs.pickParams(storage.tracesOrderBySchema, transformedParams);
112
112
  const observabilityStore = await chunkSUT6SU4I_cjs.getObservabilityStore(mastra);
113
113
  return await observabilityStore.listTraces({ filters, pagination, orderBy });
114
114
  } catch (error) {
@@ -116,11 +116,11 @@ var LIST_TRACES_ROUTE = chunkHYYXUP35_cjs.createRoute({
116
116
  }
117
117
  }
118
118
  });
119
- var LIST_BRANCHES_ROUTE = chunkHYYXUP35_cjs.createRoute({
119
+ var LIST_BRANCHES_ROUTE = chunkPJDFXAOL_cjs.createRoute({
120
120
  method: "GET",
121
121
  path: "/observability/branches",
122
122
  responseType: "json",
123
- queryParamSchema: chunkHYYXUP35_cjs.wrapSchemaForQueryParams(
123
+ queryParamSchema: chunkPJDFXAOL_cjs.wrapSchemaForQueryParams(
124
124
  chunk2J4KEVXS_cjs.branchesFilterSchema.extend(storage.paginationArgsSchema.shape).extend(chunk2J4KEVXS_cjs.branchesOrderBySchema.shape).partial()
125
125
  ),
126
126
  responseSchema: chunk2J4KEVXS_cjs.listBranchesResponseSchema,
@@ -130,9 +130,9 @@ var LIST_BRANCHES_ROUTE = chunkHYYXUP35_cjs.createRoute({
130
130
  requiresAuth: true,
131
131
  handler: async ({ mastra, ...params }) => {
132
132
  try {
133
- const filters = chunkHYYXUP35_cjs.pickParams(chunk2J4KEVXS_cjs.branchesFilterSchema, params);
134
- const pagination = chunkHYYXUP35_cjs.pickParams(storage.paginationArgsSchema, params);
135
- const orderBy = chunkHYYXUP35_cjs.pickParams(chunk2J4KEVXS_cjs.branchesOrderBySchema, params);
133
+ const filters = chunkPJDFXAOL_cjs.pickParams(chunk2J4KEVXS_cjs.branchesFilterSchema, params);
134
+ const pagination = chunkPJDFXAOL_cjs.pickParams(storage.paginationArgsSchema, params);
135
+ const orderBy = chunkPJDFXAOL_cjs.pickParams(chunk2J4KEVXS_cjs.branchesOrderBySchema, params);
136
136
  const observabilityStore = await chunkSUT6SU4I_cjs.getObservabilityStore(mastra);
137
137
  return await observabilityStore.listBranches({ filters, pagination, orderBy });
138
138
  } catch (error) {
@@ -140,12 +140,12 @@ var LIST_BRANCHES_ROUTE = chunkHYYXUP35_cjs.createRoute({
140
140
  }
141
141
  }
142
142
  });
143
- var GET_BRANCH_ROUTE = chunkHYYXUP35_cjs.createRoute({
143
+ var GET_BRANCH_ROUTE = chunkPJDFXAOL_cjs.createRoute({
144
144
  method: "GET",
145
145
  path: "/observability/traces/:traceId/branches/:spanId",
146
146
  responseType: "json",
147
147
  pathParamSchema: chunk2J4KEVXS_cjs.getBranchArgsSchema.pick({ traceId: true, spanId: true }),
148
- queryParamSchema: chunkHYYXUP35_cjs.wrapSchemaForQueryParams(chunk2J4KEVXS_cjs.getBranchArgsSchema.pick({ depth: true })),
148
+ queryParamSchema: chunkPJDFXAOL_cjs.wrapSchemaForQueryParams(chunk2J4KEVXS_cjs.getBranchArgsSchema.pick({ depth: true })),
149
149
  responseSchema: chunk2J4KEVXS_cjs.getBranchResponseSchema,
150
150
  summary: "Get trace branch by span ID",
151
151
  description: "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).",
@@ -164,7 +164,7 @@ var GET_BRANCH_ROUTE = chunkHYYXUP35_cjs.createRoute({
164
164
  }
165
165
  }
166
166
  });
167
- var GET_TRACE_ROUTE = chunkHYYXUP35_cjs.createRoute({
167
+ var GET_TRACE_ROUTE = chunkPJDFXAOL_cjs.createRoute({
168
168
  method: "GET",
169
169
  path: "/observability/traces/:traceId",
170
170
  responseType: "json",
@@ -187,7 +187,7 @@ var GET_TRACE_ROUTE = chunkHYYXUP35_cjs.createRoute({
187
187
  }
188
188
  }
189
189
  });
190
- var GET_TRACE_LIGHT_ROUTE = chunkHYYXUP35_cjs.createRoute({
190
+ var GET_TRACE_LIGHT_ROUTE = chunkPJDFXAOL_cjs.createRoute({
191
191
  method: "GET",
192
192
  path: "/observability/traces/:traceId/light",
193
193
  responseType: "json",
@@ -210,7 +210,7 @@ var GET_TRACE_LIGHT_ROUTE = chunkHYYXUP35_cjs.createRoute({
210
210
  }
211
211
  }
212
212
  });
213
- var GET_SPAN_ROUTE = chunkHYYXUP35_cjs.createRoute({
213
+ var GET_SPAN_ROUTE = chunkPJDFXAOL_cjs.createRoute({
214
214
  method: "GET",
215
215
  path: "/observability/traces/:traceId/spans/:spanId",
216
216
  responseType: "json",
@@ -233,7 +233,7 @@ var GET_SPAN_ROUTE = chunkHYYXUP35_cjs.createRoute({
233
233
  }
234
234
  }
235
235
  });
236
- var GET_TRACE_TRAJECTORY_ROUTE = chunkHYYXUP35_cjs.createRoute({
236
+ var GET_TRACE_TRAJECTORY_ROUTE = chunkPJDFXAOL_cjs.createRoute({
237
237
  method: "GET",
238
238
  path: "/observability/traces/:traceId/trajectory",
239
239
  responseType: "json",
@@ -262,7 +262,7 @@ var GET_TRACE_TRAJECTORY_ROUTE = chunkHYYXUP35_cjs.createRoute({
262
262
  }
263
263
  }
264
264
  });
265
- var SCORE_TRACES_ROUTE = chunkHYYXUP35_cjs.createRoute({
265
+ var SCORE_TRACES_ROUTE = chunkPJDFXAOL_cjs.createRoute({
266
266
  method: "POST",
267
267
  path: "/observability/traces/score",
268
268
  responseType: "json",
@@ -298,13 +298,13 @@ var SCORE_TRACES_ROUTE = chunkHYYXUP35_cjs.createRoute({
298
298
  }
299
299
  }
300
300
  });
301
- var LIST_SCORES_BY_SPAN_ROUTE = chunkHYYXUP35_cjs.createRoute({
301
+ var LIST_SCORES_BY_SPAN_ROUTE = chunkPJDFXAOL_cjs.createRoute({
302
302
  method: "GET",
303
303
  path: "/observability/traces/:traceId/:spanId/scores",
304
304
  responseType: "json",
305
305
  pathParamSchema: storage.spanIdsSchema,
306
306
  // List endpoints accept optional query params; use partial() to allow empty queries.
307
- queryParamSchema: chunkHYYXUP35_cjs.wrapSchemaForQueryParams(storage.paginationArgsSchema.partial()),
307
+ queryParamSchema: chunkPJDFXAOL_cjs.wrapSchemaForQueryParams(storage.paginationArgsSchema.partial()),
308
308
  responseSchema: evals.listScoresResponseSchema,
309
309
  summary: "List scores by span",
310
310
  description: "Returns all scores for a specific span within a trace",
@@ -312,8 +312,8 @@ var LIST_SCORES_BY_SPAN_ROUTE = chunkHYYXUP35_cjs.createRoute({
312
312
  requiresAuth: true,
313
313
  handler: async ({ mastra, ...params }) => {
314
314
  try {
315
- const pagination = chunkHYYXUP35_cjs.pickParams(storage.paginationArgsSchema, params);
316
- const spanIds = chunkHYYXUP35_cjs.pickParams(storage.spanIdsSchema, params);
315
+ const pagination = chunkPJDFXAOL_cjs.pickParams(storage.paginationArgsSchema, params);
316
+ const spanIds = chunkPJDFXAOL_cjs.pickParams(storage.spanIdsSchema, params);
317
317
  const scoresStore = await getScoresStore(mastra);
318
318
  return await scoresStore.listScoresBySpan({
319
319
  ...spanIds,
@@ -335,5 +335,5 @@ exports.LIST_SCORES_BY_SPAN_ROUTE = LIST_SCORES_BY_SPAN_ROUTE;
335
335
  exports.LIST_TRACES_ROUTE = LIST_TRACES_ROUTE;
336
336
  exports.SCORE_TRACES_ROUTE = SCORE_TRACES_ROUTE;
337
337
  exports.observability_exports = observability_exports;
338
- //# sourceMappingURL=chunk-Z7FXNI2N.cjs.map
339
- //# sourceMappingURL=chunk-Z7FXNI2N.cjs.map
338
+ //# sourceMappingURL=chunk-XFDVU6GZ.cjs.map
339
+ //# sourceMappingURL=chunk-XFDVU6GZ.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/observability.ts"],"names":["__export","CREATE_FEEDBACK","CREATE_SCORE","GET_ENTITY_NAMES","GET_ENTITY_TYPES","GET_ENVIRONMENTS","GET_FEEDBACK_AGGREGATE","GET_FEEDBACK_BREAKDOWN","GET_FEEDBACK_PERCENTILES","GET_FEEDBACK_TIME_SERIES","GET_METRIC_AGGREGATE","GET_METRIC_BREAKDOWN","GET_METRIC_LABEL_KEYS","GET_METRIC_LABEL_VALUES","GET_METRIC_NAMES","GET_METRIC_PERCENTILES","GET_METRIC_TIME_SERIES","GET_SCORE","GET_SCORE_AGGREGATE","GET_SCORE_BREAKDOWN","GET_SCORE_PERCENTILES","GET_SCORE_TIME_SERIES","GET_SERVICE_NAMES","GET_TAGS","LIST_FEEDBACK","LIST_LOGS","LIST_SCORES","NEW_ROUTES","z","dateRangeSchema","getStorage","HTTPException","createRoute","wrapSchemaForQueryParams","tracesFilterSchema","paginationArgsSchema","tracesOrderBySchema","listTracesResponseSchema","pickParams","getObservabilityStore","handleError","branchesFilterSchema","branchesOrderBySchema","listBranchesResponseSchema","getBranchArgsSchema","getBranchResponseSchema","getTraceArgsSchema","getTraceResponseSchema","getTraceLightResponseSchema","getSpanArgsSchema","getSpanResponseSchema","extractTrajectoryFromTrace","scoreTracesRequestSchema","scoreTracesResponseSchema","scoreTraces","spanIdsSchema","listScoresResponseSchema"],"mappings":"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","file":"chunk-Z7FXNI2N.cjs","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":["__export","CREATE_FEEDBACK","CREATE_SCORE","GET_ENTITY_NAMES","GET_ENTITY_TYPES","GET_ENVIRONMENTS","GET_FEEDBACK_AGGREGATE","GET_FEEDBACK_BREAKDOWN","GET_FEEDBACK_PERCENTILES","GET_FEEDBACK_TIME_SERIES","GET_METRIC_AGGREGATE","GET_METRIC_BREAKDOWN","GET_METRIC_LABEL_KEYS","GET_METRIC_LABEL_VALUES","GET_METRIC_NAMES","GET_METRIC_PERCENTILES","GET_METRIC_TIME_SERIES","GET_SCORE","GET_SCORE_AGGREGATE","GET_SCORE_BREAKDOWN","GET_SCORE_PERCENTILES","GET_SCORE_TIME_SERIES","GET_SERVICE_NAMES","GET_TAGS","LIST_FEEDBACK","LIST_LOGS","LIST_SCORES","NEW_ROUTES","z","dateRangeSchema","getStorage","HTTPException","createRoute","wrapSchemaForQueryParams","tracesFilterSchema","paginationArgsSchema","tracesOrderBySchema","listTracesResponseSchema","pickParams","getObservabilityStore","handleError","branchesFilterSchema","branchesOrderBySchema","listBranchesResponseSchema","getBranchArgsSchema","getBranchResponseSchema","getTraceArgsSchema","getTraceResponseSchema","getTraceLightResponseSchema","getSpanArgsSchema","getSpanResponseSchema","extractTrajectoryFromTrace","scoreTracesRequestSchema","scoreTracesResponseSchema","scoreTraces","spanIdsSchema","listScoresResponseSchema"],"mappings":"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","file":"chunk-XFDVU6GZ.cjs","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"]}