@mastra/server 1.37.2-alpha.1 → 1.38.0-alpha.2

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 (263) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/{api-schema-manifest-T3EB4CNY.cjs → api-schema-manifest-NTI6BMGA.cjs} +4 -4
  3. package/dist/{api-schema-manifest-T3EB4CNY.cjs.map → api-schema-manifest-NTI6BMGA.cjs.map} +1 -1
  4. package/dist/{api-schema-manifest-2HYMISCO.js → api-schema-manifest-SMK2AU2K.js} +3 -3
  5. package/dist/{api-schema-manifest-2HYMISCO.js.map → api-schema-manifest-SMK2AU2K.js.map} +1 -1
  6. package/dist/{chunk-K3A6LAJC.js → chunk-2RPL2SD4.js} +3 -3
  7. package/dist/{chunk-K3A6LAJC.js.map → chunk-2RPL2SD4.js.map} +1 -1
  8. package/dist/{chunk-LOTLWLPW.cjs → chunk-2WUVHTMR.cjs} +8 -8
  9. package/dist/{chunk-LOTLWLPW.cjs.map → chunk-2WUVHTMR.cjs.map} +1 -1
  10. package/dist/{chunk-3NN5XGE3.js → chunk-3BY5DQNJ.js} +3 -3
  11. package/dist/{chunk-3NN5XGE3.js.map → chunk-3BY5DQNJ.js.map} +1 -1
  12. package/dist/{chunk-BKMQJMWE.cjs → chunk-3WDVIQI5.cjs} +8 -8
  13. package/dist/{chunk-BKMQJMWE.cjs.map → chunk-3WDVIQI5.cjs.map} +1 -1
  14. package/dist/{chunk-ZEOCTIOC.cjs → chunk-45FBERPH.cjs} +4 -4
  15. package/dist/{chunk-ZEOCTIOC.cjs.map → chunk-45FBERPH.cjs.map} +1 -1
  16. package/dist/{chunk-U4CV6ZLO.cjs → chunk-47RU2PDP.cjs} +6 -6
  17. package/dist/{chunk-U4CV6ZLO.cjs.map → chunk-47RU2PDP.cjs.map} +1 -1
  18. package/dist/{chunk-EKZHA5NN.cjs → chunk-4XPQN4P7.cjs} +6 -6
  19. package/dist/{chunk-EKZHA5NN.cjs.map → chunk-4XPQN4P7.cjs.map} +1 -1
  20. package/dist/{chunk-SYLOFHAO.js → chunk-67H2ZVCY.js} +3 -3
  21. package/dist/{chunk-SYLOFHAO.js.map → chunk-67H2ZVCY.js.map} +1 -1
  22. package/dist/{chunk-FNWCKWKM.cjs → chunk-6C6357VN.cjs} +28 -28
  23. package/dist/{chunk-FNWCKWKM.cjs.map → chunk-6C6357VN.cjs.map} +1 -1
  24. package/dist/{chunk-XZ2UECF2.cjs → chunk-6TREB46W.cjs} +7 -7
  25. package/dist/{chunk-XZ2UECF2.cjs.map → chunk-6TREB46W.cjs.map} +1 -1
  26. package/dist/{chunk-4RNCG4IX.js → chunk-7BHKKCXR.js} +3 -3
  27. package/dist/{chunk-4RNCG4IX.js.map → chunk-7BHKKCXR.js.map} +1 -1
  28. package/dist/{chunk-GB356XPX.cjs → chunk-7URCFRUA.cjs} +9 -9
  29. package/dist/{chunk-GB356XPX.cjs.map → chunk-7URCFRUA.cjs.map} +1 -1
  30. package/dist/{chunk-5R3TARND.js → chunk-ADHHIBVT.js} +3 -3
  31. package/dist/{chunk-5R3TARND.js.map → chunk-ADHHIBVT.js.map} +1 -1
  32. package/dist/{chunk-M32NLBKC.cjs → chunk-AFIJEXPC.cjs} +8 -8
  33. package/dist/{chunk-M32NLBKC.cjs.map → chunk-AFIJEXPC.cjs.map} +1 -1
  34. package/dist/{chunk-BB3HUXJZ.js → chunk-ASJICIJG.js} +3 -3
  35. package/dist/{chunk-BB3HUXJZ.js.map → chunk-ASJICIJG.js.map} +1 -1
  36. package/dist/{chunk-UC4A4MTE.js → chunk-BPXQ6H4M.js} +5 -5
  37. package/dist/{chunk-UC4A4MTE.js.map → chunk-BPXQ6H4M.js.map} +1 -1
  38. package/dist/{chunk-AYPNWRLX.js → chunk-C63EXUSI.js} +3 -3
  39. package/dist/{chunk-AYPNWRLX.js.map → chunk-C63EXUSI.js.map} +1 -1
  40. package/dist/{chunk-W2LZ3CEY.js → chunk-DIDKRTRL.js} +3 -3
  41. package/dist/{chunk-W2LZ3CEY.js.map → chunk-DIDKRTRL.js.map} +1 -1
  42. package/dist/{chunk-N6DXNOYI.cjs → chunk-DOYJL5FU.cjs} +7 -7
  43. package/dist/{chunk-N6DXNOYI.cjs.map → chunk-DOYJL5FU.cjs.map} +1 -1
  44. package/dist/{chunk-GBVZARVX.cjs → chunk-E2HCNRIW.cjs} +5 -5
  45. package/dist/{chunk-GBVZARVX.cjs.map → chunk-E2HCNRIW.cjs.map} +1 -1
  46. package/dist/{chunk-SG33QRJ5.cjs → chunk-EFRTB4NY.cjs} +7 -7
  47. package/dist/{chunk-SG33QRJ5.cjs.map → chunk-EFRTB4NY.cjs.map} +1 -1
  48. package/dist/{chunk-X3YYLOBX.js → chunk-ENJ5EBYX.js} +3 -3
  49. package/dist/{chunk-X3YYLOBX.js.map → chunk-ENJ5EBYX.js.map} +1 -1
  50. package/dist/{chunk-DNEZDNKB.cjs → chunk-EO76O7VN.cjs} +8 -8
  51. package/dist/{chunk-DNEZDNKB.cjs.map → chunk-EO76O7VN.cjs.map} +1 -1
  52. package/dist/{chunk-V3CFHU42.js → chunk-ERO4DU3A.js} +3 -3
  53. package/dist/{chunk-V3CFHU42.js.map → chunk-ERO4DU3A.js.map} +1 -1
  54. package/dist/{chunk-24Y7CNXL.js → chunk-FE4JF5NQ.js} +3 -3
  55. package/dist/{chunk-24Y7CNXL.js.map → chunk-FE4JF5NQ.js.map} +1 -1
  56. package/dist/{chunk-EIKSVIW3.js → chunk-G3URZMEO.js} +3 -3
  57. package/dist/{chunk-EIKSVIW3.js.map → chunk-G3URZMEO.js.map} +1 -1
  58. package/dist/{chunk-AQIFUFNF.cjs → chunk-G4NJBJR6.cjs} +10 -10
  59. package/dist/{chunk-AQIFUFNF.cjs.map → chunk-G4NJBJR6.cjs.map} +1 -1
  60. package/dist/{chunk-XRQ24547.cjs → chunk-GCNPUEFQ.cjs} +11 -11
  61. package/dist/{chunk-XRQ24547.cjs.map → chunk-GCNPUEFQ.cjs.map} +1 -1
  62. package/dist/{chunk-P2D4FXR3.cjs → chunk-GGVNFPEP.cjs} +35 -35
  63. package/dist/{chunk-P2D4FXR3.cjs.map → chunk-GGVNFPEP.cjs.map} +1 -1
  64. package/dist/{chunk-NWBJNMEH.cjs → chunk-GI452YST.cjs} +10 -10
  65. package/dist/{chunk-NWBJNMEH.cjs.map → chunk-GI452YST.cjs.map} +1 -1
  66. package/dist/{chunk-MSKYP5LL.cjs → chunk-GJOBSWXT.cjs} +8 -8
  67. package/dist/{chunk-MSKYP5LL.cjs.map → chunk-GJOBSWXT.cjs.map} +1 -1
  68. package/dist/{chunk-YVA4JWKW.cjs → chunk-GK5QGY2U.cjs} +9 -9
  69. package/dist/{chunk-YVA4JWKW.cjs.map → chunk-GK5QGY2U.cjs.map} +1 -1
  70. package/dist/{chunk-GXI53DFN.js → chunk-GSDXYEQ2.js} +3 -3
  71. package/dist/{chunk-GXI53DFN.js.map → chunk-GSDXYEQ2.js.map} +1 -1
  72. package/dist/{chunk-CGFMGFKV.js → chunk-HD4L3OTB.js} +3 -3
  73. package/dist/{chunk-CGFMGFKV.js.map → chunk-HD4L3OTB.js.map} +1 -1
  74. package/dist/{chunk-ZAISELX5.cjs → chunk-I3GKDE5U.cjs} +16 -16
  75. package/dist/{chunk-ZAISELX5.cjs.map → chunk-I3GKDE5U.cjs.map} +1 -1
  76. package/dist/{chunk-I6GXKO5J.js → chunk-II252N2R.js} +3 -3
  77. package/dist/{chunk-I6GXKO5J.js.map → chunk-II252N2R.js.map} +1 -1
  78. package/dist/{chunk-MGG34H7P.cjs → chunk-IJTWBES5.cjs} +28 -28
  79. package/dist/{chunk-MGG34H7P.cjs.map → chunk-IJTWBES5.cjs.map} +1 -1
  80. package/dist/{chunk-WII3RU4D.cjs → chunk-IL3PL5CK.cjs} +8 -8
  81. package/dist/{chunk-WII3RU4D.cjs.map → chunk-IL3PL5CK.cjs.map} +1 -1
  82. package/dist/{chunk-75ODZOL7.js → chunk-ILKLHNZ2.js} +4 -4
  83. package/dist/{chunk-75ODZOL7.js.map → chunk-ILKLHNZ2.js.map} +1 -1
  84. package/dist/{chunk-2RLKKAFO.js → chunk-J7IKXSUD.js} +5 -5
  85. package/dist/{chunk-2RLKKAFO.js.map → chunk-J7IKXSUD.js.map} +1 -1
  86. package/dist/{chunk-MN4N5SO4.js → chunk-JDVNE5L6.js} +3 -3
  87. package/dist/{chunk-MN4N5SO4.js.map → chunk-JDVNE5L6.js.map} +1 -1
  88. package/dist/{chunk-EZL3D4PO.js → chunk-JGEAMAAR.js} +3 -3
  89. package/dist/{chunk-EZL3D4PO.js.map → chunk-JGEAMAAR.js.map} +1 -1
  90. package/dist/{chunk-ZHDQZ7TX.js → chunk-JN5MLWWL.js} +4 -4
  91. package/dist/{chunk-ZHDQZ7TX.js.map → chunk-JN5MLWWL.js.map} +1 -1
  92. package/dist/{chunk-22VN45LI.js → chunk-KGI2Z5G6.js} +3 -3
  93. package/dist/{chunk-22VN45LI.js.map → chunk-KGI2Z5G6.js.map} +1 -1
  94. package/dist/{chunk-OJ7J57QX.cjs → chunk-KP544HHJ.cjs} +8 -8
  95. package/dist/{chunk-OJ7J57QX.cjs.map → chunk-KP544HHJ.cjs.map} +1 -1
  96. package/dist/{chunk-PBXPP6LG.js → chunk-KXCQAA6Z.js} +4 -4
  97. package/dist/{chunk-PBXPP6LG.js.map → chunk-KXCQAA6Z.js.map} +1 -1
  98. package/dist/{chunk-O5QFXRHS.cjs → chunk-KZEZESLS.cjs} +32 -32
  99. package/dist/{chunk-O5QFXRHS.cjs.map → chunk-KZEZESLS.cjs.map} +1 -1
  100. package/dist/{chunk-MZRE4VM6.js → chunk-LVRT23UG.js} +3 -3
  101. package/dist/{chunk-MZRE4VM6.js.map → chunk-LVRT23UG.js.map} +1 -1
  102. package/dist/{chunk-X72GZOMH.cjs → chunk-MVSZWYLH.cjs} +8 -8
  103. package/dist/{chunk-X72GZOMH.cjs.map → chunk-MVSZWYLH.cjs.map} +1 -1
  104. package/dist/{chunk-HBOB5WKU.js → chunk-MYZ4OHN5.js} +4 -4
  105. package/dist/{chunk-HBOB5WKU.js.map → chunk-MYZ4OHN5.js.map} +1 -1
  106. package/dist/{chunk-QHZNXZWE.cjs → chunk-P5MREMEQ.cjs} +16 -16
  107. package/dist/{chunk-QHZNXZWE.cjs.map → chunk-P5MREMEQ.cjs.map} +1 -1
  108. package/dist/{chunk-6FHGTYBE.cjs → chunk-PCUFN27M.cjs} +19 -6
  109. package/dist/chunk-PCUFN27M.cjs.map +1 -0
  110. package/dist/{chunk-UNVDPUDB.cjs → chunk-Q4JFPI3A.cjs} +10 -10
  111. package/dist/{chunk-UNVDPUDB.cjs.map → chunk-Q4JFPI3A.cjs.map} +1 -1
  112. package/dist/{chunk-R5LDM3BW.js → chunk-Q6C22MR6.js} +4 -4
  113. package/dist/{chunk-R5LDM3BW.js.map → chunk-Q6C22MR6.js.map} +1 -1
  114. package/dist/{chunk-YEQSLMD7.js → chunk-QAIEHX6F.js} +19 -6
  115. package/dist/chunk-QAIEHX6F.js.map +1 -0
  116. package/dist/{chunk-M3G3V2BR.cjs → chunk-QJWVEYT6.cjs} +5 -5
  117. package/dist/{chunk-M3G3V2BR.cjs.map → chunk-QJWVEYT6.cjs.map} +1 -1
  118. package/dist/{chunk-SGAES7J3.cjs → chunk-QKM4RBJV.cjs} +19 -19
  119. package/dist/{chunk-SGAES7J3.cjs.map → chunk-QKM4RBJV.cjs.map} +1 -1
  120. package/dist/{chunk-FMDGZHMC.cjs → chunk-QPEWKQNM.cjs} +18 -18
  121. package/dist/{chunk-FMDGZHMC.cjs.map → chunk-QPEWKQNM.cjs.map} +1 -1
  122. package/dist/{chunk-GA4BG5JK.js → chunk-RJ5ZIUGX.js} +6 -3
  123. package/dist/chunk-RJ5ZIUGX.js.map +1 -0
  124. package/dist/{chunk-HXIX55Y4.cjs → chunk-S33UKVN3.cjs} +10 -10
  125. package/dist/{chunk-HXIX55Y4.cjs.map → chunk-S33UKVN3.cjs.map} +1 -1
  126. package/dist/{chunk-KOCE23K4.js → chunk-S7IWW3VO.js} +4 -4
  127. package/dist/{chunk-KOCE23K4.js.map → chunk-S7IWW3VO.js.map} +1 -1
  128. package/dist/{chunk-YNSUYESL.cjs → chunk-STZTV4FB.cjs} +6 -2
  129. package/dist/chunk-STZTV4FB.cjs.map +1 -0
  130. package/dist/{chunk-ZBJ23OYY.cjs → chunk-SWSHQBEO.cjs} +10 -10
  131. package/dist/{chunk-ZBJ23OYY.cjs.map → chunk-SWSHQBEO.cjs.map} +1 -1
  132. package/dist/{chunk-WAGWS64X.js → chunk-T2SEXUD2.js} +4 -4
  133. package/dist/{chunk-WAGWS64X.js.map → chunk-T2SEXUD2.js.map} +1 -1
  134. package/dist/{chunk-AGFTSJZC.js → chunk-TRBFFKG2.js} +3 -3
  135. package/dist/{chunk-AGFTSJZC.js.map → chunk-TRBFFKG2.js.map} +1 -1
  136. package/dist/{chunk-CYJSMHDR.js → chunk-UBRFKSS5.js} +3 -3
  137. package/dist/{chunk-CYJSMHDR.js.map → chunk-UBRFKSS5.js.map} +1 -1
  138. package/dist/{chunk-O6TVZ7JM.js → chunk-VDBAUWNQ.js} +4 -4
  139. package/dist/{chunk-O6TVZ7JM.js.map → chunk-VDBAUWNQ.js.map} +1 -1
  140. package/dist/{chunk-4QJDROC2.cjs → chunk-VE5MTFUE.cjs} +4 -4
  141. package/dist/{chunk-4QJDROC2.cjs.map → chunk-VE5MTFUE.cjs.map} +1 -1
  142. package/dist/{chunk-IZZ4ZP3Y.js → chunk-W7FWX7CX.js} +3 -3
  143. package/dist/{chunk-IZZ4ZP3Y.js.map → chunk-W7FWX7CX.js.map} +1 -1
  144. package/dist/{chunk-CKFO7257.js → chunk-WIWN6OMB.js} +4 -4
  145. package/dist/{chunk-CKFO7257.js.map → chunk-WIWN6OMB.js.map} +1 -1
  146. package/dist/{chunk-O7P7DTEU.cjs → chunk-XJ2D3Q5N.cjs} +5 -5
  147. package/dist/{chunk-O7P7DTEU.cjs.map → chunk-XJ2D3Q5N.cjs.map} +1 -1
  148. package/dist/{chunk-PIJ5TCIL.js → chunk-Y34SWG5Z.js} +3 -3
  149. package/dist/{chunk-PIJ5TCIL.js.map → chunk-Y34SWG5Z.js.map} +1 -1
  150. package/dist/chunk-YF6HKXZH.cjs +676 -0
  151. package/dist/{chunk-JEPACCO3.cjs.map → chunk-YF6HKXZH.cjs.map} +1 -1
  152. package/dist/{chunk-YWFPRGMQ.js → chunk-YIVN3ZOC.js} +5 -5
  153. package/dist/{chunk-YWFPRGMQ.js.map → chunk-YIVN3ZOC.js.map} +1 -1
  154. package/dist/{chunk-GBXO223Q.js → chunk-YP5MUBVK.js} +37 -37
  155. package/dist/{chunk-GBXO223Q.js.map → chunk-YP5MUBVK.js.map} +1 -1
  156. package/dist/{chunk-4RR56AIZ.js → chunk-YPX3NQKS.js} +3 -3
  157. package/dist/{chunk-4RR56AIZ.js.map → chunk-YPX3NQKS.js.map} +1 -1
  158. package/dist/{chunk-U4MOTJPV.cjs → chunk-ZDLTWLUP.cjs} +42 -42
  159. package/dist/{chunk-U4MOTJPV.cjs.map → chunk-ZDLTWLUP.cjs.map} +1 -1
  160. package/dist/{chunk-JTMPDRWI.cjs → chunk-ZKYGSYTK.cjs} +9 -9
  161. package/dist/{chunk-JTMPDRWI.cjs.map → chunk-ZKYGSYTK.cjs.map} +1 -1
  162. package/dist/{dist-ATV426A7.cjs → dist-LCJ4JRBS.cjs} +21 -20
  163. package/dist/{dist-ATV426A7.cjs.map → dist-LCJ4JRBS.cjs.map} +1 -1
  164. package/dist/{dist-J3CVGB5Z.js → dist-PAGMKZZS.js} +6 -5
  165. package/dist/{dist-J3CVGB5Z.js.map → dist-PAGMKZZS.js.map} +1 -1
  166. package/dist/docs/SKILL.md +1 -1
  167. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  168. package/dist/{observational-memory-E6F7NKJP-PKPSHYAM.cjs → observational-memory-GE5MP6W7-D7IZHLNF.cjs} +26 -26
  169. package/dist/{observational-memory-E6F7NKJP-PKPSHYAM.cjs.map → observational-memory-GE5MP6W7-D7IZHLNF.cjs.map} +1 -1
  170. package/dist/{observational-memory-E6F7NKJP-3RPCE7MO.js → observational-memory-GE5MP6W7-YNA3UAMY.js} +3 -3
  171. package/dist/{observational-memory-E6F7NKJP-3RPCE7MO.js.map → observational-memory-GE5MP6W7-YNA3UAMY.js.map} +1 -1
  172. package/dist/server/handlers/a2a.cjs +14 -14
  173. package/dist/server/handlers/a2a.js +1 -1
  174. package/dist/server/handlers/agent-builder.cjs +16 -16
  175. package/dist/server/handlers/agent-builder.js +1 -1
  176. package/dist/server/handlers/agent-versions.cjs +8 -8
  177. package/dist/server/handlers/agent-versions.js +1 -1
  178. package/dist/server/handlers/agents.cjs +41 -41
  179. package/dist/server/handlers/agents.js +1 -1
  180. package/dist/server/handlers/auth.cjs +12 -12
  181. package/dist/server/handlers/auth.js +1 -1
  182. package/dist/server/handlers/builder-registry.cjs +6 -6
  183. package/dist/server/handlers/builder-registry.js +1 -1
  184. package/dist/server/handlers/channels.cjs +5 -5
  185. package/dist/server/handlers/channels.js +1 -1
  186. package/dist/server/handlers/conversations.cjs +5 -5
  187. package/dist/server/handlers/conversations.js +1 -1
  188. package/dist/server/handlers/datasets.cjs +26 -26
  189. package/dist/server/handlers/datasets.js +1 -1
  190. package/dist/server/handlers/editor-builder.cjs +5 -5
  191. package/dist/server/handlers/editor-builder.js +1 -1
  192. package/dist/server/handlers/error.cjs +7 -3
  193. package/dist/server/handlers/error.d.ts +13 -2
  194. package/dist/server/handlers/error.d.ts.map +1 -1
  195. package/dist/server/handlers/error.js +1 -1
  196. package/dist/server/handlers/favorites-enrichment.cjs +3 -3
  197. package/dist/server/handlers/favorites-enrichment.js +1 -1
  198. package/dist/server/handlers/logs.cjs +4 -4
  199. package/dist/server/handlers/logs.js +1 -1
  200. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  201. package/dist/server/handlers/mcp-client-versions.js +1 -1
  202. package/dist/server/handlers/memory.cjs +27 -27
  203. package/dist/server/handlers/memory.js +1 -1
  204. package/dist/server/handlers/observability-new-endpoints.cjs +29 -29
  205. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  206. package/dist/server/handlers/observability.cjs +40 -40
  207. package/dist/server/handlers/observability.js +2 -2
  208. package/dist/server/handlers/processor-providers.cjs +3 -3
  209. package/dist/server/handlers/processor-providers.js +1 -1
  210. package/dist/server/handlers/processors.cjs +4 -4
  211. package/dist/server/handlers/processors.js +1 -1
  212. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  213. package/dist/server/handlers/prompt-block-versions.js +1 -1
  214. package/dist/server/handlers/responses.cjs +4 -4
  215. package/dist/server/handlers/responses.js +1 -1
  216. package/dist/server/handlers/scorer-versions.cjs +8 -8
  217. package/dist/server/handlers/scorer-versions.js +1 -1
  218. package/dist/server/handlers/scores.cjs +7 -7
  219. package/dist/server/handlers/scores.js +1 -1
  220. package/dist/server/handlers/stored-agent-favorites.cjs +3 -3
  221. package/dist/server/handlers/stored-agent-favorites.js +1 -1
  222. package/dist/server/handlers/stored-agents.cjs +7 -7
  223. package/dist/server/handlers/stored-agents.js +1 -1
  224. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  225. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  226. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  227. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  228. package/dist/server/handlers/stored-scorers.cjs +6 -6
  229. package/dist/server/handlers/stored-scorers.js +1 -1
  230. package/dist/server/handlers/stored-skill-favorites.cjs +3 -3
  231. package/dist/server/handlers/stored-skill-favorites.js +1 -1
  232. package/dist/server/handlers/stored-skills.cjs +7 -7
  233. package/dist/server/handlers/stored-skills.js +1 -1
  234. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  235. package/dist/server/handlers/stored-workspaces.js +1 -1
  236. package/dist/server/handlers/system.cjs +3 -3
  237. package/dist/server/handlers/system.js +1 -1
  238. package/dist/server/handlers/tool-providers.cjs +5 -5
  239. package/dist/server/handlers/tool-providers.js +1 -1
  240. package/dist/server/handlers/tools.cjs +6 -6
  241. package/dist/server/handlers/tools.js +1 -1
  242. package/dist/server/handlers/vector.cjs +16 -16
  243. package/dist/server/handlers/vector.js +1 -1
  244. package/dist/server/handlers/workflows.cjs +26 -26
  245. package/dist/server/handlers/workflows.js +1 -1
  246. package/dist/server/handlers/workspace.cjs +26 -26
  247. package/dist/server/handlers/workspace.js +1 -1
  248. package/dist/server/handlers.cjs +32 -28
  249. package/dist/server/handlers.d.ts +1 -1
  250. package/dist/server/handlers.d.ts.map +1 -1
  251. package/dist/server/handlers.js +14 -14
  252. package/dist/server/server-adapter/index.cjs +19 -15
  253. package/dist/server/server-adapter/index.cjs.map +1 -1
  254. package/dist/server/server-adapter/index.d.ts +1 -0
  255. package/dist/server/server-adapter/index.d.ts.map +1 -1
  256. package/dist/server/server-adapter/index.js +4 -3
  257. package/dist/server/server-adapter/index.js.map +1 -1
  258. package/package.json +6 -6
  259. package/dist/chunk-6FHGTYBE.cjs.map +0 -1
  260. package/dist/chunk-GA4BG5JK.js.map +0 -1
  261. package/dist/chunk-JEPACCO3.cjs +0 -676
  262. package/dist/chunk-YEQSLMD7.js.map +0 -1
  263. package/dist/chunk-YNSUYESL.cjs.map +0 -1
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunk4QJDROC2_cjs = require('./chunk-4QJDROC2.cjs');
3
+ var chunkVE5MTFUE_cjs = require('./chunk-VE5MTFUE.cjs');
4
4
  var chunk7UY6IS2X_cjs = require('./chunk-7UY6IS2X.cjs');
5
5
  var chunkZNP74O27_cjs = require('./chunk-ZNP74O27.cjs');
6
6
  var chunk42NUNMRC_cjs = require('./chunk-42NUNMRC.cjs');
7
- var chunkYNSUYESL_cjs = require('./chunk-YNSUYESL.cjs');
7
+ var chunkSTZTV4FB_cjs = require('./chunk-STZTV4FB.cjs');
8
8
  var chunkSCZF5DQB_cjs = require('./chunk-SCZF5DQB.cjs');
9
9
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
10
10
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -16,43 +16,43 @@ var v4 = require('zod/v4');
16
16
  // src/server/handlers/observability.ts
17
17
  var observability_exports = {};
18
18
  chunkO7I5CWRX_cjs.__export(observability_exports, {
19
- CREATE_FEEDBACK: () => chunk4QJDROC2_cjs.CREATE_FEEDBACK,
20
- CREATE_SCORE: () => chunk4QJDROC2_cjs.CREATE_SCORE,
19
+ CREATE_FEEDBACK: () => chunkVE5MTFUE_cjs.CREATE_FEEDBACK,
20
+ CREATE_SCORE: () => chunkVE5MTFUE_cjs.CREATE_SCORE,
21
21
  GET_BRANCH_ROUTE: () => GET_BRANCH_ROUTE,
22
- GET_ENTITY_NAMES: () => chunk4QJDROC2_cjs.GET_ENTITY_NAMES,
23
- GET_ENTITY_TYPES: () => chunk4QJDROC2_cjs.GET_ENTITY_TYPES,
24
- GET_ENVIRONMENTS: () => chunk4QJDROC2_cjs.GET_ENVIRONMENTS,
25
- GET_FEEDBACK_AGGREGATE: () => chunk4QJDROC2_cjs.GET_FEEDBACK_AGGREGATE,
26
- GET_FEEDBACK_BREAKDOWN: () => chunk4QJDROC2_cjs.GET_FEEDBACK_BREAKDOWN,
27
- GET_FEEDBACK_PERCENTILES: () => chunk4QJDROC2_cjs.GET_FEEDBACK_PERCENTILES,
28
- GET_FEEDBACK_TIME_SERIES: () => chunk4QJDROC2_cjs.GET_FEEDBACK_TIME_SERIES,
29
- GET_METRIC_AGGREGATE: () => chunk4QJDROC2_cjs.GET_METRIC_AGGREGATE,
30
- GET_METRIC_BREAKDOWN: () => chunk4QJDROC2_cjs.GET_METRIC_BREAKDOWN,
31
- GET_METRIC_LABEL_KEYS: () => chunk4QJDROC2_cjs.GET_METRIC_LABEL_KEYS,
32
- GET_METRIC_LABEL_VALUES: () => chunk4QJDROC2_cjs.GET_METRIC_LABEL_VALUES,
33
- GET_METRIC_NAMES: () => chunk4QJDROC2_cjs.GET_METRIC_NAMES,
34
- GET_METRIC_PERCENTILES: () => chunk4QJDROC2_cjs.GET_METRIC_PERCENTILES,
35
- GET_METRIC_TIME_SERIES: () => chunk4QJDROC2_cjs.GET_METRIC_TIME_SERIES,
36
- GET_SCORE: () => chunk4QJDROC2_cjs.GET_SCORE,
37
- GET_SCORE_AGGREGATE: () => chunk4QJDROC2_cjs.GET_SCORE_AGGREGATE,
38
- GET_SCORE_BREAKDOWN: () => chunk4QJDROC2_cjs.GET_SCORE_BREAKDOWN,
39
- GET_SCORE_PERCENTILES: () => chunk4QJDROC2_cjs.GET_SCORE_PERCENTILES,
40
- GET_SCORE_TIME_SERIES: () => chunk4QJDROC2_cjs.GET_SCORE_TIME_SERIES,
41
- GET_SERVICE_NAMES: () => chunk4QJDROC2_cjs.GET_SERVICE_NAMES,
22
+ GET_ENTITY_NAMES: () => chunkVE5MTFUE_cjs.GET_ENTITY_NAMES,
23
+ GET_ENTITY_TYPES: () => chunkVE5MTFUE_cjs.GET_ENTITY_TYPES,
24
+ GET_ENVIRONMENTS: () => chunkVE5MTFUE_cjs.GET_ENVIRONMENTS,
25
+ GET_FEEDBACK_AGGREGATE: () => chunkVE5MTFUE_cjs.GET_FEEDBACK_AGGREGATE,
26
+ GET_FEEDBACK_BREAKDOWN: () => chunkVE5MTFUE_cjs.GET_FEEDBACK_BREAKDOWN,
27
+ GET_FEEDBACK_PERCENTILES: () => chunkVE5MTFUE_cjs.GET_FEEDBACK_PERCENTILES,
28
+ GET_FEEDBACK_TIME_SERIES: () => chunkVE5MTFUE_cjs.GET_FEEDBACK_TIME_SERIES,
29
+ GET_METRIC_AGGREGATE: () => chunkVE5MTFUE_cjs.GET_METRIC_AGGREGATE,
30
+ GET_METRIC_BREAKDOWN: () => chunkVE5MTFUE_cjs.GET_METRIC_BREAKDOWN,
31
+ GET_METRIC_LABEL_KEYS: () => chunkVE5MTFUE_cjs.GET_METRIC_LABEL_KEYS,
32
+ GET_METRIC_LABEL_VALUES: () => chunkVE5MTFUE_cjs.GET_METRIC_LABEL_VALUES,
33
+ GET_METRIC_NAMES: () => chunkVE5MTFUE_cjs.GET_METRIC_NAMES,
34
+ GET_METRIC_PERCENTILES: () => chunkVE5MTFUE_cjs.GET_METRIC_PERCENTILES,
35
+ GET_METRIC_TIME_SERIES: () => chunkVE5MTFUE_cjs.GET_METRIC_TIME_SERIES,
36
+ GET_SCORE: () => chunkVE5MTFUE_cjs.GET_SCORE,
37
+ GET_SCORE_AGGREGATE: () => chunkVE5MTFUE_cjs.GET_SCORE_AGGREGATE,
38
+ GET_SCORE_BREAKDOWN: () => chunkVE5MTFUE_cjs.GET_SCORE_BREAKDOWN,
39
+ GET_SCORE_PERCENTILES: () => chunkVE5MTFUE_cjs.GET_SCORE_PERCENTILES,
40
+ GET_SCORE_TIME_SERIES: () => chunkVE5MTFUE_cjs.GET_SCORE_TIME_SERIES,
41
+ GET_SERVICE_NAMES: () => chunkVE5MTFUE_cjs.GET_SERVICE_NAMES,
42
42
  GET_SPAN_ROUTE: () => GET_SPAN_ROUTE,
43
- GET_TAGS: () => chunk4QJDROC2_cjs.GET_TAGS,
43
+ GET_TAGS: () => chunkVE5MTFUE_cjs.GET_TAGS,
44
44
  GET_TRACE_LIGHT_ROUTE: () => GET_TRACE_LIGHT_ROUTE,
45
45
  GET_TRACE_ROUTE: () => GET_TRACE_ROUTE,
46
46
  GET_TRACE_TRAJECTORY_ROUTE: () => GET_TRACE_TRAJECTORY_ROUTE,
47
47
  LIST_BRANCHES_ROUTE: () => LIST_BRANCHES_ROUTE,
48
- LIST_FEEDBACK: () => chunk4QJDROC2_cjs.LIST_FEEDBACK,
49
- LIST_LOGS: () => chunk4QJDROC2_cjs.LIST_LOGS,
50
- LIST_METRICS: () => chunk4QJDROC2_cjs.LIST_METRICS,
51
- LIST_SCORES: () => chunk4QJDROC2_cjs.LIST_SCORES,
48
+ LIST_FEEDBACK: () => chunkVE5MTFUE_cjs.LIST_FEEDBACK,
49
+ LIST_LOGS: () => chunkVE5MTFUE_cjs.LIST_LOGS,
50
+ LIST_METRICS: () => chunkVE5MTFUE_cjs.LIST_METRICS,
51
+ LIST_SCORES: () => chunkVE5MTFUE_cjs.LIST_SCORES,
52
52
  LIST_SCORES_BY_SPAN_ROUTE: () => LIST_SCORES_BY_SPAN_ROUTE,
53
53
  LIST_TRACES_LIGHT_ROUTE: () => LIST_TRACES_LIGHT_ROUTE,
54
54
  LIST_TRACES_ROUTE: () => LIST_TRACES_ROUTE,
55
- NEW_ROUTES: () => chunk4QJDROC2_cjs.NEW_ROUTES,
55
+ NEW_ROUTES: () => chunkVE5MTFUE_cjs.NEW_ROUTES,
56
56
  SCORE_TRACES_ROUTE: () => SCORE_TRACES_ROUTE
57
57
  });
58
58
  var legacyQueryParamsSchema = v4.z.object({
@@ -134,7 +134,7 @@ var LIST_TRACES_ROUTE = chunkSCZF5DQB_cjs.createRoute({
134
134
  const orderBy = chunkSCZF5DQB_cjs.pickParams(storage.tracesOrderBySchema, transformedParams);
135
135
  return await observabilityStore.listTraces({ filters, pagination, orderBy });
136
136
  } catch (error) {
137
- return chunkYNSUYESL_cjs.handleError(error, "Error listing traces");
137
+ return chunkSTZTV4FB_cjs.handleError(error, "Error listing traces");
138
138
  }
139
139
  }
140
140
  });
@@ -161,7 +161,7 @@ var LIST_TRACES_LIGHT_ROUTE = chunkSCZF5DQB_cjs.createRoute({
161
161
  }
162
162
  return await observabilityStore.listTracesLight({ filters, pagination, orderBy });
163
163
  } catch (error) {
164
- return chunkYNSUYESL_cjs.handleError(error, "Error listing lightweight traces");
164
+ return chunkSTZTV4FB_cjs.handleError(error, "Error listing lightweight traces");
165
165
  }
166
166
  }
167
167
  });
@@ -192,7 +192,7 @@ var LIST_BRANCHES_ROUTE = chunkSCZF5DQB_cjs.createRoute({
192
192
  const orderBy = chunkSCZF5DQB_cjs.pickParams(chunk42NUNMRC_cjs.branchesOrderBySchema, params);
193
193
  return await observabilityStore.listBranches({ filters, pagination, orderBy });
194
194
  } catch (error) {
195
- return chunkYNSUYESL_cjs.handleError(error, "Error listing branches");
195
+ return chunkSTZTV4FB_cjs.handleError(error, "Error listing branches");
196
196
  }
197
197
  }
198
198
  });
@@ -216,7 +216,7 @@ var GET_BRANCH_ROUTE = chunkSCZF5DQB_cjs.createRoute({
216
216
  }
217
217
  return branch;
218
218
  } catch (error) {
219
- return chunkYNSUYESL_cjs.handleError(error, "Error getting branch");
219
+ return chunkSTZTV4FB_cjs.handleError(error, "Error getting branch");
220
220
  }
221
221
  }
222
222
  });
@@ -239,7 +239,7 @@ var GET_TRACE_ROUTE = chunkSCZF5DQB_cjs.createRoute({
239
239
  }
240
240
  return trace;
241
241
  } catch (error) {
242
- return chunkYNSUYESL_cjs.handleError(error, "Error getting trace");
242
+ return chunkSTZTV4FB_cjs.handleError(error, "Error getting trace");
243
243
  }
244
244
  }
245
245
  });
@@ -262,7 +262,7 @@ var GET_TRACE_LIGHT_ROUTE = chunkSCZF5DQB_cjs.createRoute({
262
262
  }
263
263
  return trace;
264
264
  } catch (error) {
265
- return chunkYNSUYESL_cjs.handleError(error, "Error getting lightweight trace");
265
+ return chunkSTZTV4FB_cjs.handleError(error, "Error getting lightweight trace");
266
266
  }
267
267
  }
268
268
  });
@@ -285,7 +285,7 @@ var GET_SPAN_ROUTE = chunkSCZF5DQB_cjs.createRoute({
285
285
  }
286
286
  return span;
287
287
  } catch (error) {
288
- return chunkYNSUYESL_cjs.handleError(error, "Error getting span");
288
+ return chunkSTZTV4FB_cjs.handleError(error, "Error getting span");
289
289
  }
290
290
  }
291
291
  });
@@ -314,7 +314,7 @@ var GET_TRACE_TRAJECTORY_ROUTE = chunkSCZF5DQB_cjs.createRoute({
314
314
  const trajectory = evals.extractTrajectoryFromTrace(trace.spans);
315
315
  return trajectory;
316
316
  } catch (error) {
317
- return chunkYNSUYESL_cjs.handleError(error, "Error extracting trajectory from trace");
317
+ return chunkSTZTV4FB_cjs.handleError(error, "Error extracting trajectory from trace");
318
318
  }
319
319
  }
320
320
  });
@@ -350,7 +350,7 @@ var SCORE_TRACES_ROUTE = chunkSCZF5DQB_cjs.createRoute({
350
350
  traceCount: targets.length
351
351
  };
352
352
  } catch (error) {
353
- return chunkYNSUYESL_cjs.handleError(error, "Error processing trace scoring");
353
+ return chunkSTZTV4FB_cjs.handleError(error, "Error processing trace scoring");
354
354
  }
355
355
  }
356
356
  });
@@ -376,7 +376,7 @@ var LIST_SCORES_BY_SPAN_ROUTE = chunkSCZF5DQB_cjs.createRoute({
376
376
  pagination
377
377
  });
378
378
  } catch (error) {
379
- return chunkYNSUYESL_cjs.handleError(error, "Error getting scores by span");
379
+ return chunkSTZTV4FB_cjs.handleError(error, "Error getting scores by span");
380
380
  }
381
381
  }
382
382
  });
@@ -392,5 +392,5 @@ exports.LIST_TRACES_LIGHT_ROUTE = LIST_TRACES_LIGHT_ROUTE;
392
392
  exports.LIST_TRACES_ROUTE = LIST_TRACES_ROUTE;
393
393
  exports.SCORE_TRACES_ROUTE = SCORE_TRACES_ROUTE;
394
394
  exports.observability_exports = observability_exports;
395
- //# sourceMappingURL=chunk-U4MOTJPV.cjs.map
396
- //# sourceMappingURL=chunk-U4MOTJPV.cjs.map
395
+ //# sourceMappingURL=chunk-ZDLTWLUP.cjs.map
396
+ //# sourceMappingURL=chunk-ZDLTWLUP.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_METRICS","LIST_SCORES","NEW_ROUTES","z","dateRangeSchema","getStorage","HTTPException","wrapSchemaForQueryParams","tracesFilterSchema","paginationArgsSchema","tracesOrderBySchema","createRoute","createObservabilityListQuerySchema","listTracesResponseSchema","pickParams","getObservabilityStore","assertObservabilityDeltaSupported","OBSERVABILITY_LIST_ENDPOINTS","handleError","listTracesLightResponseSchema","branchesFilterSchema","branchesOrderBySchema","listBranchesResponseSchema","getBranchArgsSchema","getBranchResponseSchema","getTraceArgsSchema","getTraceResponseSchema","getTraceLightResponseSchema","getSpanArgsSchema","getSpanResponseSchema","extractTrajectoryFromTrace","scoreTracesRequestSchema","scoreTracesResponseSchema","scoreTraces","spanIdsSchema","listScoresResponseSchema"],"mappings":"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","file":"chunk-U4MOTJPV.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 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 { paginationArgsSchema } from './observability-list-query-schemas';\nimport {\n assertObservabilityDeltaSupported,\n createObservabilityListQuerySchema,\n getObservabilityStore,\n getStorage,\n OBSERVABILITY_LIST_ENDPOINTS,\n} from './observability-shared';\nimport {\n branchesFilterSchema,\n branchesOrderBySchema,\n listBranchesResponseSchema,\n getBranchArgsSchema,\n getBranchResponseSchema,\n listTracesLightResponseSchema,\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\nconst listTracesQueryParamSchema = 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\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: createObservabilityListQuerySchema(\n tracesFilterSchema.extend({\n ...legacyQueryParamsSchema.shape,\n entityType: z.preprocess(\n value => (value === 'workflow' ? 'workflow_run' : value),\n tracesFilterSchema.shape.entityType,\n ),\n }),\n tracesOrderBySchema,\n ),\n responseSchema: listTracesResponseSchema,\n summary: 'List traces',\n description:\n 'Returns a paginated list of traces with optional filtering and sorting. In delta mode, returns only newly listed traces matching the filters.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, mode, after, limit, ...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 observabilityStore = await getObservabilityStore(mastra);\n if (mode === 'delta') {\n assertObservabilityDeltaSupported(observabilityStore, OBSERVABILITY_LIST_ENDPOINTS.traces);\n return await observabilityStore.listTraces({\n mode,\n filters,\n after: typeof after === 'string' ? after : undefined,\n limit,\n });\n }\n\n const pagination = pickParams(paginationArgsSchema, transformedParams);\n const orderBy = pickParams(tracesOrderBySchema, transformedParams);\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/traces/light - paginated lightweight trace listing with filtering and sorting. */\nexport const LIST_TRACES_LIGHT_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/light',\n responseType: 'json',\n queryParamSchema: listTracesQueryParamSchema,\n responseSchema: listTracesLightResponseSchema,\n summary: 'List lightweight traces',\n description: 'Returns a paginated list of lightweight traces with optional filtering and sorting',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\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 // `listTracesLight` was added in `@mastra/core` alongside this route.\n // When this `@mastra/server` is paired with an older `@mastra/core`,\n // the base `ObservabilityStorage` class doesn't declare\n // `listTracesLight` at all, so calling it on a store instance throws\n // `TypeError: ... is not a function`. Detect that case and fall back\n // to the full `listTraces` call so consumers still get a response.\n const store = observabilityStore as { listTracesLight?: unknown };\n if (typeof store.listTracesLight !== 'function') {\n return await observabilityStore.listTraces({ filters, pagination, orderBy });\n }\n return await observabilityStore.listTracesLight({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing lightweight 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: createObservabilityListQuerySchema(branchesFilterSchema, branchesOrderBySchema),\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. In delta mode, returns only newly listed branch rows matching the filters.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, mode, after, limit, ...params }) => {\n try {\n const filters = pickParams(branchesFilterSchema, params);\n const observabilityStore = await getObservabilityStore(mastra);\n if (mode === 'delta') {\n assertObservabilityDeltaSupported(observabilityStore, OBSERVABILITY_LIST_ENDPOINTS.branches);\n return await observabilityStore.listBranches({\n mode,\n filters,\n after: typeof after === 'string' ? after : undefined,\n limit,\n });\n }\n\n const pagination = pickParams(paginationArgsSchema, params);\n const orderBy = pickParams(branchesOrderBySchema, params);\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/** 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_METRICS","LIST_SCORES","NEW_ROUTES","z","dateRangeSchema","getStorage","HTTPException","wrapSchemaForQueryParams","tracesFilterSchema","paginationArgsSchema","tracesOrderBySchema","createRoute","createObservabilityListQuerySchema","listTracesResponseSchema","pickParams","getObservabilityStore","assertObservabilityDeltaSupported","OBSERVABILITY_LIST_ENDPOINTS","handleError","listTracesLightResponseSchema","branchesFilterSchema","branchesOrderBySchema","listBranchesResponseSchema","getBranchArgsSchema","getBranchResponseSchema","getTraceArgsSchema","getTraceResponseSchema","getTraceLightResponseSchema","getSpanArgsSchema","getSpanResponseSchema","extractTrajectoryFromTrace","scoreTracesRequestSchema","scoreTracesResponseSchema","scoreTraces","spanIdsSchema","listScoresResponseSchema"],"mappings":"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","file":"chunk-ZDLTWLUP.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 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 { paginationArgsSchema } from './observability-list-query-schemas';\nimport {\n assertObservabilityDeltaSupported,\n createObservabilityListQuerySchema,\n getObservabilityStore,\n getStorage,\n OBSERVABILITY_LIST_ENDPOINTS,\n} from './observability-shared';\nimport {\n branchesFilterSchema,\n branchesOrderBySchema,\n listBranchesResponseSchema,\n getBranchArgsSchema,\n getBranchResponseSchema,\n listTracesLightResponseSchema,\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\nconst listTracesQueryParamSchema = 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\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: createObservabilityListQuerySchema(\n tracesFilterSchema.extend({\n ...legacyQueryParamsSchema.shape,\n entityType: z.preprocess(\n value => (value === 'workflow' ? 'workflow_run' : value),\n tracesFilterSchema.shape.entityType,\n ),\n }),\n tracesOrderBySchema,\n ),\n responseSchema: listTracesResponseSchema,\n summary: 'List traces',\n description:\n 'Returns a paginated list of traces with optional filtering and sorting. In delta mode, returns only newly listed traces matching the filters.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, mode, after, limit, ...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 observabilityStore = await getObservabilityStore(mastra);\n if (mode === 'delta') {\n assertObservabilityDeltaSupported(observabilityStore, OBSERVABILITY_LIST_ENDPOINTS.traces);\n return await observabilityStore.listTraces({\n mode,\n filters,\n after: typeof after === 'string' ? after : undefined,\n limit,\n });\n }\n\n const pagination = pickParams(paginationArgsSchema, transformedParams);\n const orderBy = pickParams(tracesOrderBySchema, transformedParams);\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/traces/light - paginated lightweight trace listing with filtering and sorting. */\nexport const LIST_TRACES_LIGHT_ROUTE = createRoute({\n method: 'GET',\n path: '/observability/traces/light',\n responseType: 'json',\n queryParamSchema: listTracesQueryParamSchema,\n responseSchema: listTracesLightResponseSchema,\n summary: 'List lightweight traces',\n description: 'Returns a paginated list of lightweight traces with optional filtering and sorting',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\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 // `listTracesLight` was added in `@mastra/core` alongside this route.\n // When this `@mastra/server` is paired with an older `@mastra/core`,\n // the base `ObservabilityStorage` class doesn't declare\n // `listTracesLight` at all, so calling it on a store instance throws\n // `TypeError: ... is not a function`. Detect that case and fall back\n // to the full `listTraces` call so consumers still get a response.\n const store = observabilityStore as { listTracesLight?: unknown };\n if (typeof store.listTracesLight !== 'function') {\n return await observabilityStore.listTraces({ filters, pagination, orderBy });\n }\n return await observabilityStore.listTracesLight({ filters, pagination, orderBy });\n } catch (error) {\n return handleError(error, 'Error listing lightweight 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: createObservabilityListQuerySchema(branchesFilterSchema, branchesOrderBySchema),\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. In delta mode, returns only newly listed branch rows matching the filters.',\n tags: ['Observability'],\n requiresAuth: true,\n handler: async ({ mastra, mode, after, limit, ...params }) => {\n try {\n const filters = pickParams(branchesFilterSchema, params);\n const observabilityStore = await getObservabilityStore(mastra);\n if (mode === 'delta') {\n assertObservabilityDeltaSupported(observabilityStore, OBSERVABILITY_LIST_ENDPOINTS.branches);\n return await observabilityStore.listBranches({\n mode,\n filters,\n after: typeof after === 'string' ? after : undefined,\n limit,\n });\n }\n\n const pagination = pickParams(paginationArgsSchema, params);\n const orderBy = pickParams(branchesOrderBySchema, params);\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/** 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"]}
@@ -3,9 +3,9 @@
3
3
  var chunkHTBC6CVX_cjs = require('./chunk-HTBC6CVX.cjs');
4
4
  var chunkF3HP5HM6_cjs = require('./chunk-F3HP5HM6.cjs');
5
5
  var chunkKE4V4LJE_cjs = require('./chunk-KE4V4LJE.cjs');
6
- var chunkO5QFXRHS_cjs = require('./chunk-O5QFXRHS.cjs');
6
+ var chunkKZEZESLS_cjs = require('./chunk-KZEZESLS.cjs');
7
7
  var chunk4BLUIUHS_cjs = require('./chunk-4BLUIUHS.cjs');
8
- var chunkYNSUYESL_cjs = require('./chunk-YNSUYESL.cjs');
8
+ var chunkSTZTV4FB_cjs = require('./chunk-STZTV4FB.cjs');
9
9
  var chunkSCZF5DQB_cjs = require('./chunk-SCZF5DQB.cjs');
10
10
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
11
11
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -58,7 +58,7 @@ var CREATE_CONVERSATION_ROUTE = chunkSCZF5DQB_cjs.createRoute({
58
58
  if (!mastra) {
59
59
  throw new chunk64ITUOXI_cjs.HTTPException(500, { message: "Mastra instance is required for conversations" });
60
60
  }
61
- const agent = await chunkO5QFXRHS_cjs.getAgentFromSystem({ mastra, agentId: agent_id });
61
+ const agent = await chunkKZEZESLS_cjs.getAgentFromSystem({ mastra, agentId: agent_id });
62
62
  const memory = await agent.getMemory({ requestContext });
63
63
  if (!memory) {
64
64
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: `Agent "${agent.id}" does not have memory configured` });
@@ -76,7 +76,7 @@ var CREATE_CONVERSATION_ROUTE = chunkSCZF5DQB_cjs.createRoute({
76
76
  });
77
77
  return buildConversationObject({ thread });
78
78
  } catch (error) {
79
- return chunkYNSUYESL_cjs.handleError(error, "Error creating conversation");
79
+ return chunkSTZTV4FB_cjs.handleError(error, "Error creating conversation");
80
80
  }
81
81
  }
82
82
  });
@@ -99,7 +99,7 @@ var GET_CONVERSATION_ROUTE = chunkSCZF5DQB_cjs.createRoute({
99
99
  }
100
100
  return buildConversationObject({ thread: match.thread });
101
101
  } catch (error) {
102
- return chunkYNSUYESL_cjs.handleError(error, "Error retrieving conversation");
102
+ return chunkSTZTV4FB_cjs.handleError(error, "Error retrieving conversation");
103
103
  }
104
104
  }
105
105
  });
@@ -127,7 +127,7 @@ var GET_CONVERSATION_ITEMS_ROUTE = chunkSCZF5DQB_cjs.createRoute({
127
127
  });
128
128
  return buildConversationItemsList(chunkF3HP5HM6_cjs.mapMastraMessagesToConversationItems(messages));
129
129
  } catch (error) {
130
- return chunkYNSUYESL_cjs.handleError(error, "Error retrieving conversation");
130
+ return chunkSTZTV4FB_cjs.handleError(error, "Error retrieving conversation");
131
131
  }
132
132
  }
133
133
  });
@@ -151,7 +151,7 @@ var DELETE_CONVERSATION_ROUTE = chunkSCZF5DQB_cjs.createRoute({
151
151
  await match.memoryStore.deleteThread({ threadId: conversationId });
152
152
  return buildConversationDeleted(conversationId);
153
153
  } catch (error) {
154
- return chunkYNSUYESL_cjs.handleError(error, "Error deleting conversation");
154
+ return chunkSTZTV4FB_cjs.handleError(error, "Error deleting conversation");
155
155
  }
156
156
  }
157
157
  });
@@ -161,5 +161,5 @@ exports.DELETE_CONVERSATION_ROUTE = DELETE_CONVERSATION_ROUTE;
161
161
  exports.GET_CONVERSATION_ITEMS_ROUTE = GET_CONVERSATION_ITEMS_ROUTE;
162
162
  exports.GET_CONVERSATION_ROUTE = GET_CONVERSATION_ROUTE;
163
163
  exports.conversations_exports = conversations_exports;
164
- //# sourceMappingURL=chunk-JTMPDRWI.cjs.map
165
- //# sourceMappingURL=chunk-JTMPDRWI.cjs.map
164
+ //# sourceMappingURL=chunk-ZKYGSYTK.cjs.map
165
+ //# sourceMappingURL=chunk-ZKYGSYTK.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/conversations.ts"],"names":["__export","createRoute","createConversationBodySchema","conversationObjectSchema","MastraFGAPermissions","HTTPException","getAgentFromSystem","getAgentMemoryStore","randomUUID","getEffectiveResourceId","handleError","conversationIdPathParams","findConversationThreadAcrossAgents","conversationItemsListSchema","mapMastraMessagesToConversationItems","conversationDeletedSchema"],"mappings":"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","file":"chunk-JTMPDRWI.cjs","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\nimport {\n conversationDeletedSchema,\n conversationIdPathParams,\n conversationItemsListSchema,\n conversationObjectSchema,\n createConversationBodySchema,\n} from '../schemas/conversations';\nimport type { ConversationDeleted, ConversationItemsList, ConversationObject } from '../schemas/conversations';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { mapMastraMessagesToConversationItems } from './responses.adapter';\nimport { findConversationThreadAcrossAgents, getAgentMemoryStore } from './responses.storage';\nimport { getEffectiveResourceId } from './utils';\n\nfunction buildConversationObject({ thread }: { thread: ConversationObject['thread'] }): ConversationObject {\n return {\n id: thread.id,\n object: 'conversation',\n thread,\n };\n}\n\nfunction buildConversationItemsList(items: ConversationItemsList['data']): ConversationItemsList {\n return {\n object: 'list',\n data: items,\n first_id: items[0]?.id ?? null,\n last_id: items.at(-1)?.id ?? null,\n has_more: false,\n };\n}\n\nfunction buildConversationDeleted(conversationId: string): ConversationDeleted {\n return {\n id: conversationId,\n object: 'conversation.deleted',\n deleted: true,\n };\n}\n\nexport const CREATE_CONVERSATION_ROUTE = createRoute({\n method: 'POST',\n path: '/v1/conversations',\n responseType: 'json',\n bodySchema: createConversationBodySchema,\n responseSchema: conversationObjectSchema,\n summary: 'Create a conversation',\n description: 'Creates a new thread-backed conversation for agent-backed Responses API requests',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_CREATE,\n handler: async ({ mastra, requestContext, agent_id, conversation_id, resource_id, title, metadata }) => {\n try {\n if (!mastra) {\n throw new HTTPException(500, { message: 'Mastra instance is required for conversations' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId: agent_id });\n const memory = await agent.getMemory({ requestContext });\n if (!memory) {\n throw new HTTPException(400, { message: `Agent \"${agent.id}\" does not have memory configured` });\n }\n if (!(await getAgentMemoryStore({ agent, requestContext }))) {\n throw new HTTPException(400, { message: `Memory storage is not configured for agent \"${agent.id}\"` });\n }\n\n const threadId = conversation_id ?? randomUUID();\n const resourceId = getEffectiveResourceId(requestContext, resource_id) ?? threadId;\n const thread = await memory.createThread({\n threadId,\n resourceId,\n title,\n metadata,\n });\n\n return buildConversationObject({ thread });\n } catch (error) {\n return handleError(error, 'Error creating conversation');\n }\n },\n});\n\nexport const GET_CONVERSATION_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/conversations/:conversationId',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationObjectSchema,\n summary: 'Retrieve a conversation',\n description: 'Returns a conversation object backed by a Mastra memory thread',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_READ,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n return buildConversationObject({ thread: match.thread });\n } catch (error) {\n return handleError(error, 'Error retrieving conversation');\n }\n },\n});\n\nexport const GET_CONVERSATION_ITEMS_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/conversations/:conversationId/items',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationItemsListSchema,\n summary: 'List conversation items',\n description: 'Returns OpenAI-style conversation items derived from the stored thread messages',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_READ,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n const { messages } = await match.memoryStore.listMessages({\n threadId: conversationId,\n page: 0,\n perPage: 1000,\n });\n\n return buildConversationItemsList(mapMastraMessagesToConversationItems(messages));\n } catch (error) {\n return handleError(error, 'Error retrieving conversation');\n }\n },\n});\n\nexport const DELETE_CONVERSATION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/v1/conversations/:conversationId',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationDeletedSchema,\n summary: 'Delete a conversation',\n description: 'Deletes a thread-backed conversation and its stored items',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_DELETE,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n await match.memoryStore.deleteThread({ threadId: conversationId });\n\n return buildConversationDeleted(conversationId);\n } catch (error) {\n return handleError(error, 'Error deleting conversation');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/conversations.ts"],"names":["__export","createRoute","createConversationBodySchema","conversationObjectSchema","MastraFGAPermissions","HTTPException","getAgentFromSystem","getAgentMemoryStore","randomUUID","getEffectiveResourceId","handleError","conversationIdPathParams","findConversationThreadAcrossAgents","conversationItemsListSchema","mapMastraMessagesToConversationItems","conversationDeletedSchema"],"mappings":"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","file":"chunk-ZKYGSYTK.cjs","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\nimport {\n conversationDeletedSchema,\n conversationIdPathParams,\n conversationItemsListSchema,\n conversationObjectSchema,\n createConversationBodySchema,\n} from '../schemas/conversations';\nimport type { ConversationDeleted, ConversationItemsList, ConversationObject } from '../schemas/conversations';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { mapMastraMessagesToConversationItems } from './responses.adapter';\nimport { findConversationThreadAcrossAgents, getAgentMemoryStore } from './responses.storage';\nimport { getEffectiveResourceId } from './utils';\n\nfunction buildConversationObject({ thread }: { thread: ConversationObject['thread'] }): ConversationObject {\n return {\n id: thread.id,\n object: 'conversation',\n thread,\n };\n}\n\nfunction buildConversationItemsList(items: ConversationItemsList['data']): ConversationItemsList {\n return {\n object: 'list',\n data: items,\n first_id: items[0]?.id ?? null,\n last_id: items.at(-1)?.id ?? null,\n has_more: false,\n };\n}\n\nfunction buildConversationDeleted(conversationId: string): ConversationDeleted {\n return {\n id: conversationId,\n object: 'conversation.deleted',\n deleted: true,\n };\n}\n\nexport const CREATE_CONVERSATION_ROUTE = createRoute({\n method: 'POST',\n path: '/v1/conversations',\n responseType: 'json',\n bodySchema: createConversationBodySchema,\n responseSchema: conversationObjectSchema,\n summary: 'Create a conversation',\n description: 'Creates a new thread-backed conversation for agent-backed Responses API requests',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_CREATE,\n handler: async ({ mastra, requestContext, agent_id, conversation_id, resource_id, title, metadata }) => {\n try {\n if (!mastra) {\n throw new HTTPException(500, { message: 'Mastra instance is required for conversations' });\n }\n\n const agent = await getAgentFromSystem({ mastra, agentId: agent_id });\n const memory = await agent.getMemory({ requestContext });\n if (!memory) {\n throw new HTTPException(400, { message: `Agent \"${agent.id}\" does not have memory configured` });\n }\n if (!(await getAgentMemoryStore({ agent, requestContext }))) {\n throw new HTTPException(400, { message: `Memory storage is not configured for agent \"${agent.id}\"` });\n }\n\n const threadId = conversation_id ?? randomUUID();\n const resourceId = getEffectiveResourceId(requestContext, resource_id) ?? threadId;\n const thread = await memory.createThread({\n threadId,\n resourceId,\n title,\n metadata,\n });\n\n return buildConversationObject({ thread });\n } catch (error) {\n return handleError(error, 'Error creating conversation');\n }\n },\n});\n\nexport const GET_CONVERSATION_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/conversations/:conversationId',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationObjectSchema,\n summary: 'Retrieve a conversation',\n description: 'Returns a conversation object backed by a Mastra memory thread',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_READ,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n return buildConversationObject({ thread: match.thread });\n } catch (error) {\n return handleError(error, 'Error retrieving conversation');\n }\n },\n});\n\nexport const GET_CONVERSATION_ITEMS_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/conversations/:conversationId/items',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationItemsListSchema,\n summary: 'List conversation items',\n description: 'Returns OpenAI-style conversation items derived from the stored thread messages',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_READ,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n const { messages } = await match.memoryStore.listMessages({\n threadId: conversationId,\n page: 0,\n perPage: 1000,\n });\n\n return buildConversationItemsList(mapMastraMessagesToConversationItems(messages));\n } catch (error) {\n return handleError(error, 'Error retrieving conversation');\n }\n },\n});\n\nexport const DELETE_CONVERSATION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/v1/conversations/:conversationId',\n responseType: 'json',\n pathParamSchema: conversationIdPathParams,\n responseSchema: conversationDeletedSchema,\n summary: 'Delete a conversation',\n description: 'Deletes a thread-backed conversation and its stored items',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: MastraFGAPermissions.AGENTS_DELETE,\n handler: async ({ mastra, requestContext, conversationId }) => {\n try {\n const match = await findConversationThreadAcrossAgents({ mastra, conversationId, requestContext });\n if (!match) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n await match.memoryStore.deleteThread({ threadId: conversationId });\n\n return buildConversationDeleted(conversationId);\n } catch (error) {\n return handleError(error, 'Error deleting conversation');\n }\n },\n});\n"]}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkKBSIO3LG_cjs = require('./chunk-KBSIO3LG.cjs');
4
- var chunk6FHGTYBE_cjs = require('./chunk-6FHGTYBE.cjs');
4
+ var chunkPCUFN27M_cjs = require('./chunk-PCUFN27M.cjs');
5
5
  var chunkPXYR3D6L_cjs = require('./chunk-PXYR3D6L.cjs');
6
6
  var chunkZDYA2VAA_cjs = require('./chunk-ZDYA2VAA.cjs');
7
7
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -46341,8 +46341,8 @@ function formatTimestamp(date9) {
46341
46341
  return date9.toISOString().replace("T", " ").replace(/\.\d{3}Z$/, "Z");
46342
46342
  }
46343
46343
  function truncateByTokens(text42, maxTokens, hint) {
46344
- if (chunk6FHGTYBE_cjs.estimateTokenCount(text42) <= maxTokens) return { text: text42, wasTruncated: false };
46345
- const truncated = chunk6FHGTYBE_cjs.truncateStringByTokens(text42, maxTokens);
46344
+ if (chunkPCUFN27M_cjs.estimateTokenCount(text42) <= maxTokens) return { text: text42, wasTruncated: false };
46345
+ const truncated = chunkPCUFN27M_cjs.truncateStringByTokens(text42, maxTokens);
46346
46346
  const suffix = hint ? ` [${hint} for more]` : "";
46347
46347
  return { text: truncated + suffix, wasTruncated: true };
46348
46348
  }
@@ -46394,11 +46394,11 @@ ${JSON.stringify(inv.args, null, 2)}`;
46394
46394
  });
46395
46395
  }
46396
46396
  if (inv.state === "result") {
46397
- const { value: resultValue } = chunk6FHGTYBE_cjs.resolveToolResultValue(
46397
+ const { value: resultValue } = chunkPCUFN27M_cjs.resolveToolResultValue(
46398
46398
  part,
46399
46399
  inv.result
46400
46400
  );
46401
- const resultStr = chunk6FHGTYBE_cjs.formatToolResultForObserver(resultValue, { maxTokens: HIGH_DETAIL_TOOL_RESULT_TOKENS });
46401
+ const resultStr = chunkPCUFN27M_cjs.formatToolResultForObserver(resultValue, { maxTokens: HIGH_DETAIL_TOOL_RESULT_TOKENS });
46402
46402
  const fullText = `[Tool Result: ${inv.toolName}]
46403
46403
  ${resultStr}`;
46404
46404
  parts.push(makePart(msg, i, "tool-result", fullText, detail, inv.toolName));
@@ -46425,7 +46425,7 @@ ${typeof rawArgs === "string" ? rawArgs : JSON.stringify(rawArgs, null, 2)}`;
46425
46425
  const toolName = part.toolName;
46426
46426
  if (toolName) {
46427
46427
  const rawResult = part.output ?? part.result;
46428
- const resultStr = chunk6FHGTYBE_cjs.formatToolResultForObserver(rawResult, { maxTokens: HIGH_DETAIL_TOOL_RESULT_TOKENS });
46428
+ const resultStr = chunkPCUFN27M_cjs.formatToolResultForObserver(rawResult, { maxTokens: HIGH_DETAIL_TOOL_RESULT_TOKENS });
46429
46429
  const fullText = `[Tool Result: ${toolName}]
46430
46430
  ${resultStr}`;
46431
46431
  parts.push(makePart(msg, i, "tool-result", fullText, detail, toolName));
@@ -46503,9 +46503,9 @@ function expandPriority(part) {
46503
46503
  }
46504
46504
  function renderFormattedParts(parts, timestamps, options) {
46505
46505
  const text42 = buildRenderedText(parts, timestamps);
46506
- let totalTokens = chunk6FHGTYBE_cjs.estimateTokenCount(text42);
46506
+ let totalTokens = chunkPCUFN27M_cjs.estimateTokenCount(text42);
46507
46507
  if (totalTokens > options.maxTokens) {
46508
- const truncated = chunk6FHGTYBE_cjs.truncateStringByTokens(text42, options.maxTokens);
46508
+ const truncated = chunkPCUFN27M_cjs.truncateStringByTokens(text42, options.maxTokens);
46509
46509
  return { text: truncated, truncated: true, tokenOffset: totalTokens - options.maxTokens };
46510
46510
  }
46511
46511
  const truncatedIndices = parts.map((p, i) => ({ part: p, index: i })).filter(({ part }) => part.text !== part.fullText).sort((a, b) => expandPriority(a.part) - expandPriority(b.part));
@@ -46516,8 +46516,8 @@ function renderFormattedParts(parts, timestamps, options) {
46516
46516
  for (const { part, index } of truncatedIndices) {
46517
46517
  if (remaining <= 0) break;
46518
46518
  const maxTokens = expandLimit(part);
46519
- const fullTokens = chunk6FHGTYBE_cjs.estimateTokenCount(part.fullText);
46520
- const currentTokens = chunk6FHGTYBE_cjs.estimateTokenCount(part.text);
46519
+ const fullTokens = chunkPCUFN27M_cjs.estimateTokenCount(part.fullText);
46520
+ const currentTokens = chunkPCUFN27M_cjs.estimateTokenCount(part.text);
46521
46521
  const targetTokens = Math.min(fullTokens, maxTokens);
46522
46522
  const delta = targetTokens - currentTokens;
46523
46523
  if (delta <= 0) continue;
@@ -46528,17 +46528,17 @@ function renderFormattedParts(parts, timestamps, options) {
46528
46528
  const expandedLimit = Math.min(currentTokens + remaining, maxTokens);
46529
46529
  const hint = `recall cursor="${part.messageId}" partIndex=${part.partIndex} detail="high"`;
46530
46530
  const { text: expanded2 } = truncateByTokens(part.fullText, expandedLimit, hint);
46531
- const expandedDelta = chunk6FHGTYBE_cjs.estimateTokenCount(expanded2) - currentTokens;
46531
+ const expandedDelta = chunkPCUFN27M_cjs.estimateTokenCount(expanded2) - currentTokens;
46532
46532
  parts[index] = { ...part, text: expanded2 };
46533
46533
  remaining -= expandedDelta;
46534
46534
  }
46535
46535
  }
46536
46536
  const expanded = buildRenderedText(parts, timestamps);
46537
- const expandedTokens = chunk6FHGTYBE_cjs.estimateTokenCount(expanded);
46537
+ const expandedTokens = chunkPCUFN27M_cjs.estimateTokenCount(expanded);
46538
46538
  if (expandedTokens <= options.maxTokens) {
46539
46539
  return { text: expanded, truncated: false, tokenOffset: 0 };
46540
46540
  }
46541
- const hardTruncated = chunk6FHGTYBE_cjs.truncateStringByTokens(expanded, options.maxTokens);
46541
+ const hardTruncated = chunkPCUFN27M_cjs.truncateStringByTokens(expanded, options.maxTokens);
46542
46542
  return { text: hardTruncated, truncated: true, tokenOffset: expandedTokens - options.maxTokens };
46543
46543
  }
46544
46544
  async function recallPart({
@@ -46589,7 +46589,7 @@ async function recallPart({
46589
46589
 
46590
46590
  `;
46591
46591
  const fallbackText = `${fallbackNote}${firstNextPart.text}`;
46592
- const truncatedText2 = chunk6FHGTYBE_cjs.truncateStringByTokens(fallbackText, maxTokens);
46592
+ const truncatedText2 = chunkPCUFN27M_cjs.truncateStringByTokens(fallbackText, maxTokens);
46593
46593
  const wasTruncated2 = truncatedText2 !== fallbackText;
46594
46594
  return {
46595
46595
  text: truncatedText2,
@@ -46604,7 +46604,7 @@ async function recallPart({
46604
46604
  }
46605
46605
  throw new Error(`Part index ${partIndex} not found in message ${cursor}. Available indices: ${availableIndices}`);
46606
46606
  }
46607
- const truncatedText = chunk6FHGTYBE_cjs.truncateStringByTokens(target.text, maxTokens);
46607
+ const truncatedText = chunkPCUFN27M_cjs.truncateStringByTokens(target.text, maxTokens);
46608
46608
  const wasTruncated = truncatedText !== target.text;
46609
46609
  return {
46610
46610
  text: truncatedText,
@@ -47979,7 +47979,7 @@ ${workingMemory}`;
47979
47979
  }
47980
47980
  return chunks;
47981
47981
  }
47982
- hasher = chunk6FHGTYBE_cjs.e();
47982
+ hasher = chunkPCUFN27M_cjs.e();
47983
47983
  // embedding is computationally expensive so cache content -> embeddings/chunks
47984
47984
  embeddingCache = /* @__PURE__ */ new Map();
47985
47985
  firstEmbed;
@@ -48410,7 +48410,7 @@ ${workingMemory}`;
48410
48410
  "Observational memory requires @mastra/core support for request-response-id-rotation. Please bump @mastra/core to a newer version."
48411
48411
  );
48412
48412
  }
48413
- const { ObservationalMemory: OMClass } = await import('./observational-memory-E6F7NKJP-PKPSHYAM.cjs');
48413
+ const { ObservationalMemory: OMClass } = await import('./observational-memory-GE5MP6W7-D7IZHLNF.cjs');
48414
48414
  const onIndexObservations = this.hasRetrievalSearch(omConfig.retrieval) ? async (observation) => {
48415
48415
  await this.indexObservation(observation);
48416
48416
  } : void 0;
@@ -48431,6 +48431,7 @@ ${workingMemory}`;
48431
48431
  maxTokensPerBatch: omConfig.observation.maxTokensPerBatch,
48432
48432
  providerOptions: omConfig.observation.providerOptions,
48433
48433
  bufferTokens: omConfig.observation.bufferTokens,
48434
+ bufferOnIdle: omConfig.observation.bufferOnIdle,
48434
48435
  bufferActivation: omConfig.observation.bufferActivation,
48435
48436
  blockAfter: omConfig.observation.blockAfter,
48436
48437
  previousObserverTokens: omConfig.observation.previousObserverTokens,
@@ -49337,7 +49338,7 @@ Notes:
49337
49338
  if (!effectiveConfig) return null;
49338
49339
  const engine = await this.omEngine;
49339
49340
  if (!engine) return null;
49340
- const { ObservationalMemoryProcessor } = await import('./observational-memory-E6F7NKJP-PKPSHYAM.cjs');
49341
+ const { ObservationalMemoryProcessor } = await import('./observational-memory-GE5MP6W7-D7IZHLNF.cjs');
49341
49342
  return new ObservationalMemoryProcessor(engine, this, {
49342
49343
  temporalMarkers: effectiveConfig.temporalMarkers
49343
49344
  });
@@ -60184,5 +60185,5 @@ exports.agentBuilderWorkflows = agentBuilderWorkflows;
60184
60185
  exports.mergeTemplateBySlug = mergeTemplateBySlug;
60185
60186
  exports.planningAndApprovalWorkflow = planningAndApprovalWorkflow;
60186
60187
  exports.workflowBuilderWorkflow = workflowBuilderWorkflow;
60187
- //# sourceMappingURL=dist-ATV426A7.cjs.map
60188
- //# sourceMappingURL=dist-ATV426A7.cjs.map
60188
+ //# sourceMappingURL=dist-LCJ4JRBS.cjs.map
60189
+ //# sourceMappingURL=dist-LCJ4JRBS.cjs.map