@mastra/server 1.32.0-alpha.1 → 1.32.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 (305) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/_types/@internal_core/dist/index.d.ts +82 -1
  3. package/dist/{chunk-44JNOREB.cjs → chunk-2REMDR2Q.cjs} +12 -12
  4. package/dist/{chunk-44JNOREB.cjs.map → chunk-2REMDR2Q.cjs.map} +1 -1
  5. package/dist/{chunk-W53ZIS6J.js → chunk-33USMBWV.js} +3 -3
  6. package/dist/{chunk-W53ZIS6J.js.map → chunk-33USMBWV.js.map} +1 -1
  7. package/dist/{chunk-ZQVMWCVT.js → chunk-4JWF4VAL.js} +3 -3
  8. package/dist/{chunk-ZQVMWCVT.js.map → chunk-4JWF4VAL.js.map} +1 -1
  9. package/dist/{chunk-53YFG5AY.js → chunk-4L2UVFJO.js} +8 -2
  10. package/dist/chunk-4L2UVFJO.js.map +1 -0
  11. package/dist/{chunk-CXBX2UAP.cjs → chunk-4UMO2IGR.cjs} +7 -7
  12. package/dist/{chunk-CXBX2UAP.cjs.map → chunk-4UMO2IGR.cjs.map} +1 -1
  13. package/dist/{chunk-5KM5P23Q.cjs → chunk-5VMRQT5S.cjs} +29 -29
  14. package/dist/{chunk-5KM5P23Q.cjs.map → chunk-5VMRQT5S.cjs.map} +1 -1
  15. package/dist/{chunk-BCBNR2J2.js → chunk-64M357LE.js} +6 -6
  16. package/dist/{chunk-BCBNR2J2.js.map → chunk-64M357LE.js.map} +1 -1
  17. package/dist/{chunk-CUIH4FYN.js → chunk-67TYG7WH.js} +3 -3
  18. package/dist/{chunk-CUIH4FYN.js.map → chunk-67TYG7WH.js.map} +1 -1
  19. package/dist/{chunk-EAOBAXC7.js → chunk-6M7OOHNA.js} +6 -6
  20. package/dist/{chunk-EAOBAXC7.js.map → chunk-6M7OOHNA.js.map} +1 -1
  21. package/dist/{chunk-HSU5D2KT.js → chunk-72RVQAAZ.js} +4 -4
  22. package/dist/{chunk-HSU5D2KT.js.map → chunk-72RVQAAZ.js.map} +1 -1
  23. package/dist/{chunk-5UKYK7YK.cjs → chunk-7LAFXMXB.cjs} +2 -2
  24. package/dist/{chunk-5UKYK7YK.cjs.map → chunk-7LAFXMXB.cjs.map} +1 -1
  25. package/dist/{chunk-CC6HRROH.cjs → chunk-AF6AYXRW.cjs} +86 -86
  26. package/dist/{chunk-CC6HRROH.cjs.map → chunk-AF6AYXRW.cjs.map} +1 -1
  27. package/dist/{chunk-NB2NE7QS.cjs → chunk-ANEBYNP6.cjs} +89 -67
  28. package/dist/chunk-ANEBYNP6.cjs.map +1 -0
  29. package/dist/{chunk-YI2LXCWB.js → chunk-AOKUS5NX.js} +3 -3
  30. package/dist/{chunk-YI2LXCWB.js.map → chunk-AOKUS5NX.js.map} +1 -1
  31. package/dist/{chunk-GITUJAKR.cjs → chunk-ASVWXKET.cjs} +12 -12
  32. package/dist/{chunk-GITUJAKR.cjs.map → chunk-ASVWXKET.cjs.map} +1 -1
  33. package/dist/{chunk-XG2VRXG5.cjs → chunk-BK2PRWVJ.cjs} +22 -2
  34. package/dist/chunk-BK2PRWVJ.cjs.map +1 -0
  35. package/dist/{chunk-DFEFYM5I.js → chunk-CBSIIPHQ.js} +6 -6
  36. package/dist/{chunk-DFEFYM5I.js.map → chunk-CBSIIPHQ.js.map} +1 -1
  37. package/dist/{chunk-VGR4DSXQ.cjs → chunk-CEZZQMPM.cjs} +11 -11
  38. package/dist/{chunk-VGR4DSXQ.cjs.map → chunk-CEZZQMPM.cjs.map} +1 -1
  39. package/dist/{chunk-OES3CANB.js → chunk-CR7RGILH.js} +3 -3
  40. package/dist/{chunk-OES3CANB.js.map → chunk-CR7RGILH.js.map} +1 -1
  41. package/dist/{chunk-OBYYH7DX.cjs → chunk-CTYPGLJG.cjs} +46 -21
  42. package/dist/chunk-CTYPGLJG.cjs.map +1 -0
  43. package/dist/{chunk-H6NJWTER.cjs → chunk-CZU262RD.cjs} +20 -15
  44. package/dist/chunk-CZU262RD.cjs.map +1 -0
  45. package/dist/{chunk-4IYALPXO.js → chunk-DCMRHRHR.js} +4 -4
  46. package/dist/{chunk-4IYALPXO.js.map → chunk-DCMRHRHR.js.map} +1 -1
  47. package/dist/{chunk-B346SGRP.cjs → chunk-DIBOFJUK.cjs} +11 -11
  48. package/dist/{chunk-B346SGRP.cjs.map → chunk-DIBOFJUK.cjs.map} +1 -1
  49. package/dist/{chunk-DY6OYCMG.js → chunk-DOTOVTE2.js} +4 -4
  50. package/dist/{chunk-DY6OYCMG.js.map → chunk-DOTOVTE2.js.map} +1 -1
  51. package/dist/{chunk-VOAVPKTH.js → chunk-EAJSW5GK.js} +3 -3
  52. package/dist/{chunk-VOAVPKTH.js.map → chunk-EAJSW5GK.js.map} +1 -1
  53. package/dist/{chunk-S7REEERK.cjs → chunk-EWNTXTFB.cjs} +11 -11
  54. package/dist/{chunk-S7REEERK.cjs.map → chunk-EWNTXTFB.cjs.map} +1 -1
  55. package/dist/{chunk-R76F63OE.js → chunk-F23SQINQ.js} +30 -8
  56. package/dist/chunk-F23SQINQ.js.map +1 -0
  57. package/dist/{chunk-6QL3PDQ7.cjs → chunk-F5RU45N6.cjs} +7 -7
  58. package/dist/{chunk-6QL3PDQ7.cjs.map → chunk-F5RU45N6.cjs.map} +1 -1
  59. package/dist/{chunk-TNNU7IZK.cjs → chunk-FFDMYX2V.cjs} +25 -25
  60. package/dist/{chunk-TNNU7IZK.cjs.map → chunk-FFDMYX2V.cjs.map} +1 -1
  61. package/dist/{chunk-ANP3ESTF.js → chunk-FICILXAQ.js} +3 -3
  62. package/dist/{chunk-ANP3ESTF.js.map → chunk-FICILXAQ.js.map} +1 -1
  63. package/dist/{chunk-2QNJHTKM.cjs → chunk-GME2ZNSG.cjs} +11 -11
  64. package/dist/{chunk-2QNJHTKM.cjs.map → chunk-GME2ZNSG.cjs.map} +1 -1
  65. package/dist/{chunk-6SBH6SYP.js → chunk-GOFGQSF7.js} +20 -7
  66. package/dist/chunk-GOFGQSF7.js.map +1 -0
  67. package/dist/{chunk-PQETTP2F.js → chunk-GQOWV33T.js} +3 -3
  68. package/dist/{chunk-PQETTP2F.js.map → chunk-GQOWV33T.js.map} +1 -1
  69. package/dist/{chunk-7RAGUCER.js → chunk-HBWNPGIL.js} +5 -5
  70. package/dist/{chunk-7RAGUCER.js.map → chunk-HBWNPGIL.js.map} +1 -1
  71. package/dist/{chunk-H23VTK56.js → chunk-HKXIZNJC.js} +4 -4
  72. package/dist/{chunk-H23VTK56.js.map → chunk-HKXIZNJC.js.map} +1 -1
  73. package/dist/{chunk-ME255ZWD.cjs → chunk-HN3V6UA4.cjs} +12 -12
  74. package/dist/{chunk-ME255ZWD.cjs.map → chunk-HN3V6UA4.cjs.map} +1 -1
  75. package/dist/{chunk-OGV23F3H.cjs → chunk-IMPWOZUQ.cjs} +28 -15
  76. package/dist/chunk-IMPWOZUQ.cjs.map +1 -0
  77. package/dist/{chunk-ZEESV2HZ.js → chunk-IRKGFNRR.js} +34 -9
  78. package/dist/chunk-IRKGFNRR.js.map +1 -0
  79. package/dist/{chunk-EPM6ILRW.js → chunk-IYEGDP3G.js} +22 -3
  80. package/dist/chunk-IYEGDP3G.js.map +1 -0
  81. package/dist/{chunk-TJAYLVG5.js → chunk-K2KWDOYR.js} +31 -4
  82. package/dist/chunk-K2KWDOYR.js.map +1 -0
  83. package/dist/{chunk-2TRRXAQK.cjs → chunk-K745HNW2.cjs} +11 -11
  84. package/dist/{chunk-2TRRXAQK.cjs.map → chunk-K745HNW2.cjs.map} +1 -1
  85. package/dist/{chunk-YJQYJ5WD.cjs → chunk-K7IVZQKI.cjs} +6 -6
  86. package/dist/{chunk-YJQYJ5WD.cjs.map → chunk-K7IVZQKI.cjs.map} +1 -1
  87. package/dist/{chunk-PA2BYLKF.js → chunk-KDUX3YN3.js} +2 -2
  88. package/dist/{chunk-PA2BYLKF.js.map → chunk-KDUX3YN3.js.map} +1 -1
  89. package/dist/{chunk-LVGLLXRY.cjs → chunk-KQU6VKAO.cjs} +7 -7
  90. package/dist/{chunk-LVGLLXRY.cjs.map → chunk-KQU6VKAO.cjs.map} +1 -1
  91. package/dist/{chunk-QGNNJRKA.js → chunk-KTTHNIBJ.js} +89 -26
  92. package/dist/chunk-KTTHNIBJ.js.map +1 -0
  93. package/dist/{chunk-YP2KYGCY.cjs → chunk-LGR7SFQ5.cjs} +38 -25
  94. package/dist/chunk-LGR7SFQ5.cjs.map +1 -0
  95. package/dist/{chunk-DTB2PQPA.js → chunk-LO7CBY5Q.js} +6 -6
  96. package/dist/{chunk-DTB2PQPA.js.map → chunk-LO7CBY5Q.js.map} +1 -1
  97. package/dist/{chunk-TGZNNEAI.cjs → chunk-M7L5EVQE.cjs} +12 -12
  98. package/dist/{chunk-TGZNNEAI.cjs.map → chunk-M7L5EVQE.cjs.map} +1 -1
  99. package/dist/{chunk-BMWSQ6HM.cjs → chunk-NIRJGDC6.cjs} +4 -4
  100. package/dist/{chunk-BMWSQ6HM.cjs.map → chunk-NIRJGDC6.cjs.map} +1 -1
  101. package/dist/{chunk-HAOI6QSD.js → chunk-NKD5XK43.js} +5 -5
  102. package/dist/{chunk-HAOI6QSD.js.map → chunk-NKD5XK43.js.map} +1 -1
  103. package/dist/{chunk-LTLTS3RN.js → chunk-NRKGN3C5.js} +4 -4
  104. package/dist/{chunk-LTLTS3RN.js.map → chunk-NRKGN3C5.js.map} +1 -1
  105. package/dist/{chunk-NHJFLZZN.cjs → chunk-OBRYBTX6.cjs} +12 -12
  106. package/dist/{chunk-NHJFLZZN.cjs.map → chunk-OBRYBTX6.cjs.map} +1 -1
  107. package/dist/{chunk-N6EQZJFN.js → chunk-OCBL7S62.js} +6 -6
  108. package/dist/{chunk-N6EQZJFN.js.map → chunk-OCBL7S62.js.map} +1 -1
  109. package/dist/{chunk-JCWPQ5DD.cjs → chunk-ODCWNXTX.cjs} +8 -8
  110. package/dist/{chunk-JCWPQ5DD.cjs.map → chunk-ODCWNXTX.cjs.map} +1 -1
  111. package/dist/{chunk-PQDR7XQP.js → chunk-OJ7SK6PH.js} +373 -52
  112. package/dist/chunk-OJ7SK6PH.js.map +1 -0
  113. package/dist/{chunk-LHY3IIL2.js → chunk-OPBMOOBR.js} +5 -5
  114. package/dist/{chunk-LHY3IIL2.js.map → chunk-OPBMOOBR.js.map} +1 -1
  115. package/dist/{chunk-2MWLNHBG.cjs → chunk-OQHTG2JK.cjs} +11 -11
  116. package/dist/{chunk-2MWLNHBG.cjs.map → chunk-OQHTG2JK.cjs.map} +1 -1
  117. package/dist/{chunk-4BSJHDYP.js → chunk-OUS6FNA7.js} +11 -6
  118. package/dist/chunk-OUS6FNA7.js.map +1 -0
  119. package/dist/{chunk-OGEXISZT.cjs → chunk-OZC7GEO5.cjs} +11 -11
  120. package/dist/{chunk-OGEXISZT.cjs.map → chunk-OZC7GEO5.cjs.map} +1 -1
  121. package/dist/{chunk-WFVK6ZXR.cjs → chunk-Q2T2Q4S5.cjs} +6 -6
  122. package/dist/{chunk-WFVK6ZXR.cjs.map → chunk-Q2T2Q4S5.cjs.map} +1 -1
  123. package/dist/{chunk-CKZMJIUO.cjs → chunk-R3DQGOTC.cjs} +6 -6
  124. package/dist/{chunk-CKZMJIUO.cjs.map → chunk-R3DQGOTC.cjs.map} +1 -1
  125. package/dist/{chunk-IQA7HL2V.js → chunk-R7X4YOSH.js} +51 -10
  126. package/dist/chunk-R7X4YOSH.js.map +1 -0
  127. package/dist/{chunk-NRFMMYTG.js → chunk-RF5ZDERV.js} +4 -4
  128. package/dist/{chunk-NRFMMYTG.js.map → chunk-RF5ZDERV.js.map} +1 -1
  129. package/dist/{chunk-O6YA7VM3.cjs → chunk-RL34ZMLF.cjs} +159 -96
  130. package/dist/chunk-RL34ZMLF.cjs.map +1 -0
  131. package/dist/{chunk-DITB4LGJ.js → chunk-RPEPKUZQ.js} +12 -11
  132. package/dist/chunk-RPEPKUZQ.js.map +1 -0
  133. package/dist/{chunk-TU7U5XUE.cjs → chunk-SUT6SU4I.cjs} +8 -2
  134. package/dist/chunk-SUT6SU4I.cjs.map +1 -0
  135. package/dist/{chunk-FRKJAWEK.cjs → chunk-T6MMZWHW.cjs} +426 -105
  136. package/dist/chunk-T6MMZWHW.cjs.map +1 -0
  137. package/dist/{chunk-KG2CULOS.js → chunk-TLOT3CIB.js} +6 -6
  138. package/dist/{chunk-KG2CULOS.js.map → chunk-TLOT3CIB.js.map} +1 -1
  139. package/dist/{chunk-3NNQG5XP.js → chunk-VG6A54JE.js} +3 -3
  140. package/dist/{chunk-3NNQG5XP.js.map → chunk-VG6A54JE.js.map} +1 -1
  141. package/dist/{chunk-UMVQATCY.js → chunk-VRPAOMXW.js} +25 -12
  142. package/dist/chunk-VRPAOMXW.js.map +1 -0
  143. package/dist/{chunk-EFP5PJBY.cjs → chunk-WMFH3SH2.cjs} +136 -94
  144. package/dist/chunk-WMFH3SH2.cjs.map +1 -0
  145. package/dist/{chunk-NBEKX4M5.js → chunk-WYSQECWW.js} +8 -8
  146. package/dist/{chunk-NBEKX4M5.js.map → chunk-WYSQECWW.js.map} +1 -1
  147. package/dist/{chunk-ERKUFMCT.js → chunk-X2LYM3QK.js} +3 -3
  148. package/dist/{chunk-ERKUFMCT.js.map → chunk-X2LYM3QK.js.map} +1 -1
  149. package/dist/{chunk-OGZ6ROYD.js → chunk-X3RINDH6.js} +6 -5
  150. package/dist/chunk-X3RINDH6.js.map +1 -0
  151. package/dist/{chunk-7QAQXIA4.cjs → chunk-X47OINMY.cjs} +17 -17
  152. package/dist/{chunk-7QAQXIA4.cjs.map → chunk-X47OINMY.cjs.map} +1 -1
  153. package/dist/{chunk-RTYIV265.cjs → chunk-XCXPPGJ3.cjs} +13 -13
  154. package/dist/{chunk-RTYIV265.cjs.map → chunk-XCXPPGJ3.cjs.map} +1 -1
  155. package/dist/{chunk-3S5WOAYR.cjs → chunk-XEERRXWL.cjs} +31 -3
  156. package/dist/chunk-XEERRXWL.cjs.map +1 -0
  157. package/dist/{chunk-NUGBBASK.js → chunk-XOHBH6NQ.js} +4 -4
  158. package/dist/{chunk-NUGBBASK.js.map → chunk-XOHBH6NQ.js.map} +1 -1
  159. package/dist/{chunk-OLPARCPM.cjs → chunk-XUFQVLBC.cjs} +5 -5
  160. package/dist/{chunk-OLPARCPM.cjs.map → chunk-XUFQVLBC.cjs.map} +1 -1
  161. package/dist/{chunk-U4ZN4PDI.cjs → chunk-YMBKVVDF.cjs} +22 -21
  162. package/dist/chunk-YMBKVVDF.cjs.map +1 -0
  163. package/dist/{chunk-I2IUAPQE.cjs → chunk-ZCCXXT7V.cjs} +12 -12
  164. package/dist/{chunk-I2IUAPQE.cjs.map → chunk-ZCCXXT7V.cjs.map} +1 -1
  165. package/dist/{chunk-EBKNX5RM.cjs → chunk-ZHEQYOTL.cjs} +53 -52
  166. package/dist/chunk-ZHEQYOTL.cjs.map +1 -0
  167. package/dist/docs/SKILL.md +1 -1
  168. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  169. package/dist/server/auth/helpers.d.ts +9 -1
  170. package/dist/server/auth/helpers.d.ts.map +1 -1
  171. package/dist/server/auth/index.cjs +18 -14
  172. package/dist/server/auth/index.js +1 -1
  173. package/dist/server/handlers/a2a.cjs +10 -10
  174. package/dist/server/handlers/a2a.js +1 -1
  175. package/dist/server/handlers/agent-builder.cjs +16 -16
  176. package/dist/server/handlers/agent-builder.js +1 -1
  177. package/dist/server/handlers/agent-versions.cjs +8 -8
  178. package/dist/server/handlers/agent-versions.js +1 -1
  179. package/dist/server/handlers/agents.cjs +38 -38
  180. package/dist/server/handlers/agents.d.ts.map +1 -1
  181. package/dist/server/handlers/agents.js +1 -1
  182. package/dist/server/handlers/auth.cjs +11 -11
  183. package/dist/server/handlers/auth.d.ts.map +1 -1
  184. package/dist/server/handlers/auth.js +1 -1
  185. package/dist/server/handlers/background-tasks.cjs +4 -4
  186. package/dist/server/handlers/background-tasks.js +1 -1
  187. package/dist/server/handlers/channels.cjs +5 -5
  188. package/dist/server/handlers/channels.js +1 -1
  189. package/dist/server/handlers/conversations.cjs +5 -5
  190. package/dist/server/handlers/conversations.d.ts.map +1 -1
  191. package/dist/server/handlers/conversations.js +1 -1
  192. package/dist/server/handlers/datasets.cjs +26 -26
  193. package/dist/server/handlers/datasets.js +1 -1
  194. package/dist/server/handlers/logs.cjs +4 -4
  195. package/dist/server/handlers/logs.js +1 -1
  196. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  197. package/dist/server/handlers/mcp-client-versions.js +1 -1
  198. package/dist/server/handlers/mcp.cjs +9 -9
  199. package/dist/server/handlers/mcp.d.ts.map +1 -1
  200. package/dist/server/handlers/mcp.js +1 -1
  201. package/dist/server/handlers/memory.cjs +27 -27
  202. package/dist/server/handlers/memory.d.ts.map +1 -1
  203. package/dist/server/handlers/memory.js +1 -1
  204. package/dist/server/handlers/observability-new-endpoints.cjs +31 -27
  205. package/dist/server/handlers/observability-new-endpoints.d.ts +315 -19
  206. package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
  207. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  208. package/dist/server/handlers/observability-shared.cjs +5 -5
  209. package/dist/server/handlers/observability-shared.d.ts +6 -0
  210. package/dist/server/handlers/observability-shared.d.ts.map +1 -1
  211. package/dist/server/handlers/observability-shared.js +1 -1
  212. package/dist/server/handlers/observability.cjs +39 -35
  213. package/dist/server/handlers/observability.js +2 -2
  214. package/dist/server/handlers/processor-providers.cjs +3 -3
  215. package/dist/server/handlers/processor-providers.js +1 -1
  216. package/dist/server/handlers/processors.cjs +4 -4
  217. package/dist/server/handlers/processors.js +1 -1
  218. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  219. package/dist/server/handlers/prompt-block-versions.js +1 -1
  220. package/dist/server/handlers/responses.cjs +4 -4
  221. package/dist/server/handlers/responses.d.ts.map +1 -1
  222. package/dist/server/handlers/responses.js +1 -1
  223. package/dist/server/handlers/responses.storage.cjs +8 -8
  224. package/dist/server/handlers/responses.storage.js +1 -1
  225. package/dist/server/handlers/schedules.cjs +6 -6
  226. package/dist/server/handlers/schedules.js +1 -1
  227. package/dist/server/handlers/scorer-versions.cjs +8 -8
  228. package/dist/server/handlers/scorer-versions.js +1 -1
  229. package/dist/server/handlers/scores.cjs +7 -7
  230. package/dist/server/handlers/scores.js +1 -1
  231. package/dist/server/handlers/stored-agents.cjs +7 -7
  232. package/dist/server/handlers/stored-agents.js +1 -1
  233. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  234. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  235. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  236. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  237. package/dist/server/handlers/stored-scorers.cjs +6 -6
  238. package/dist/server/handlers/stored-scorers.js +1 -1
  239. package/dist/server/handlers/stored-skills.cjs +7 -7
  240. package/dist/server/handlers/stored-skills.js +1 -1
  241. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  242. package/dist/server/handlers/stored-workspaces.js +1 -1
  243. package/dist/server/handlers/system.cjs +2 -2
  244. package/dist/server/handlers/system.js +1 -1
  245. package/dist/server/handlers/tool-providers.cjs +5 -5
  246. package/dist/server/handlers/tool-providers.js +1 -1
  247. package/dist/server/handlers/tools.cjs +6 -6
  248. package/dist/server/handlers/tools.d.ts.map +1 -1
  249. package/dist/server/handlers/tools.js +1 -1
  250. package/dist/server/handlers/utils.cjs +13 -9
  251. package/dist/server/handlers/utils.d.ts +15 -0
  252. package/dist/server/handlers/utils.d.ts.map +1 -1
  253. package/dist/server/handlers/utils.js +1 -1
  254. package/dist/server/handlers/vector.cjs +16 -16
  255. package/dist/server/handlers/vector.js +1 -1
  256. package/dist/server/handlers/voice.cjs +8 -8
  257. package/dist/server/handlers/voice.js +1 -1
  258. package/dist/server/handlers/workflows.cjs +24 -24
  259. package/dist/server/handlers/workflows.d.ts.map +1 -1
  260. package/dist/server/handlers/workflows.js +1 -1
  261. package/dist/server/handlers/workspace.cjs +26 -26
  262. package/dist/server/handlers/workspace.js +1 -1
  263. package/dist/server/handlers.cjs +37 -37
  264. package/dist/server/handlers.js +15 -15
  265. package/dist/server/schemas/index.cjs +307 -307
  266. package/dist/server/schemas/index.js +5 -5
  267. package/dist/server/server-adapter/index.cjs +385 -324
  268. package/dist/server/server-adapter/index.cjs.map +1 -1
  269. package/dist/server/server-adapter/index.d.ts +9 -0
  270. package/dist/server/server-adapter/index.d.ts.map +1 -1
  271. package/dist/server/server-adapter/index.js +101 -41
  272. package/dist/server/server-adapter/index.js.map +1 -1
  273. package/dist/server/server-adapter/routes/index.d.ts +19 -3
  274. package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
  275. package/dist/server/server-adapter/routes/observability.d.ts +156 -9
  276. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
  277. package/dist/server/server-adapter/routes/route-builder.d.ts +15 -1
  278. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -1
  279. package/package.json +6 -4
  280. package/dist/chunk-3S5WOAYR.cjs.map +0 -1
  281. package/dist/chunk-4BSJHDYP.js.map +0 -1
  282. package/dist/chunk-53YFG5AY.js.map +0 -1
  283. package/dist/chunk-6SBH6SYP.js.map +0 -1
  284. package/dist/chunk-DITB4LGJ.js.map +0 -1
  285. package/dist/chunk-EBKNX5RM.cjs.map +0 -1
  286. package/dist/chunk-EFP5PJBY.cjs.map +0 -1
  287. package/dist/chunk-EPM6ILRW.js.map +0 -1
  288. package/dist/chunk-FRKJAWEK.cjs.map +0 -1
  289. package/dist/chunk-H6NJWTER.cjs.map +0 -1
  290. package/dist/chunk-IQA7HL2V.js.map +0 -1
  291. package/dist/chunk-NB2NE7QS.cjs.map +0 -1
  292. package/dist/chunk-O6YA7VM3.cjs.map +0 -1
  293. package/dist/chunk-OBYYH7DX.cjs.map +0 -1
  294. package/dist/chunk-OGV23F3H.cjs.map +0 -1
  295. package/dist/chunk-OGZ6ROYD.js.map +0 -1
  296. package/dist/chunk-PQDR7XQP.js.map +0 -1
  297. package/dist/chunk-QGNNJRKA.js.map +0 -1
  298. package/dist/chunk-R76F63OE.js.map +0 -1
  299. package/dist/chunk-TJAYLVG5.js.map +0 -1
  300. package/dist/chunk-TU7U5XUE.cjs.map +0 -1
  301. package/dist/chunk-U4ZN4PDI.cjs.map +0 -1
  302. package/dist/chunk-UMVQATCY.js.map +0 -1
  303. package/dist/chunk-XG2VRXG5.cjs.map +0 -1
  304. package/dist/chunk-YP2KYGCY.cjs.map +0 -1
  305. package/dist/chunk-ZEESV2HZ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/index.ts"],"names":[],"mappings":"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"}
@@ -739,9 +739,95 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
739
739
  }, import("zod/v4/core").$strip>;
740
740
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
741
741
  success: import("zod").ZodBoolean;
742
+ }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
743
+ scoreId: string;
744
+ }, {
745
+ score: {
746
+ timestamp: Date;
747
+ scorerId: string;
748
+ score: number;
749
+ scoreTraceId?: string | null | undefined;
750
+ metadata?: Record<string, unknown> | null | undefined;
751
+ executionSource?: string | null | undefined;
752
+ tags?: string[] | null | undefined;
753
+ entityType?: import("../../../_types/@internal_core/dist/index.js").EntityType | null | undefined;
754
+ entityId?: string | null | undefined;
755
+ entityName?: string | null | undefined;
756
+ parentEntityType?: import("../../../_types/@internal_core/dist/index.js").EntityType | null | undefined;
757
+ parentEntityId?: string | null | undefined;
758
+ parentEntityName?: string | null | undefined;
759
+ rootEntityType?: import("../../../_types/@internal_core/dist/index.js").EntityType | null | undefined;
760
+ rootEntityId?: string | null | undefined;
761
+ rootEntityName?: string | null | undefined;
762
+ userId?: string | null | undefined;
763
+ organizationId?: string | null | undefined;
764
+ resourceId?: string | null | undefined;
765
+ runId?: string | null | undefined;
766
+ sessionId?: string | null | undefined;
767
+ threadId?: string | null | undefined;
768
+ requestId?: string | null | undefined;
769
+ environment?: string | null | undefined;
770
+ serviceName?: string | null | undefined;
771
+ scope?: Record<string, unknown> | null | undefined;
772
+ entityVersionId?: string | null | undefined;
773
+ parentEntityVersionId?: string | null | undefined;
774
+ rootEntityVersionId?: string | null | undefined;
775
+ experimentId?: string | null | undefined;
776
+ scoreId?: string | null | undefined;
777
+ traceId?: string | null | undefined;
778
+ spanId?: string | null | undefined;
779
+ scorerName?: string | null | undefined;
780
+ scorerVersion?: string | null | undefined;
781
+ scoreSource?: string | null | undefined;
782
+ source?: string | null | undefined;
783
+ reason?: string | null | undefined;
784
+ } | null;
785
+ }, "json", import(".").RouteSchemas<import("zod").ZodObject<{
786
+ scoreId: import("zod").ZodString;
787
+ }, import("zod/v4/core").$strip>, undefined, undefined, import("zod").ZodObject<{
788
+ score: import("zod").ZodNullable<import("zod").ZodObject<{
789
+ scoreTraceId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
790
+ metadata: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>>;
791
+ executionSource: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
792
+ tags: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodArray<import("zod").ZodString>>>;
793
+ entityType: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodEnum<typeof import("../../../_types/@internal_core/dist/index.js").EntityType>>>;
794
+ entityId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
795
+ entityName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
796
+ parentEntityType: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodEnum<typeof import("../../../_types/@internal_core/dist/index.js").EntityType>>>;
797
+ parentEntityId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
798
+ parentEntityName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
799
+ rootEntityType: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodEnum<typeof import("../../../_types/@internal_core/dist/index.js").EntityType>>>;
800
+ rootEntityId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
801
+ rootEntityName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
802
+ userId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
803
+ organizationId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
804
+ resourceId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
805
+ runId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
806
+ sessionId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
807
+ threadId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
808
+ requestId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
809
+ environment: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
810
+ serviceName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
811
+ scope: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>>;
812
+ entityVersionId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
813
+ parentEntityVersionId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
814
+ rootEntityVersionId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
815
+ experimentId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
816
+ scoreId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
817
+ timestamp: import("zod").ZodDate;
818
+ traceId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
819
+ spanId: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
820
+ scorerId: import("zod").ZodString;
821
+ scorerName: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
822
+ scorerVersion: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
823
+ scoreSource: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
824
+ source: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
825
+ score: import("zod").ZodNumber;
826
+ reason: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
827
+ }, import("zod/v4/core").$strip>>;
742
828
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
743
829
  scorerId: string;
744
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
830
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
745
831
  scoreSource?: string | undefined;
746
832
  filters?: {
747
833
  scorerId?: string | string[] | undefined;
@@ -791,6 +877,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
791
877
  min: "min";
792
878
  max: "max";
793
879
  count: "count";
880
+ count_distinct: "count_distinct";
794
881
  last: "last";
795
882
  }>;
796
883
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -839,7 +926,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
839
926
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
840
927
  scorerId: string;
841
928
  groupBy: string[];
842
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
929
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
843
930
  scoreSource?: string | undefined;
844
931
  filters?: {
845
932
  scorerId?: string | string[] | undefined;
@@ -890,6 +977,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
890
977
  min: "min";
891
978
  max: "max";
892
979
  count: "count";
980
+ count_distinct: "count_distinct";
893
981
  last: "last";
894
982
  }>;
895
983
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -934,7 +1022,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
934
1022
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
935
1023
  scorerId: string;
936
1024
  interval: "5m" | "1h" | "1m" | "15m" | "1d";
937
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1025
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
938
1026
  scoreSource?: string | undefined;
939
1027
  filters?: {
940
1028
  scorerId?: string | string[] | undefined;
@@ -995,6 +1083,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
995
1083
  min: "min";
996
1084
  max: "max";
997
1085
  count: "count";
1086
+ count_distinct: "count_distinct";
998
1087
  last: "last";
999
1088
  }>;
1000
1089
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -1318,7 +1407,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1318
1407
  success: import("zod").ZodBoolean;
1319
1408
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1320
1409
  feedbackType: string;
1321
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1410
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
1322
1411
  feedbackSource?: string | undefined;
1323
1412
  filters?: {
1324
1413
  feedbackType?: string | string[] | undefined;
@@ -1369,6 +1458,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1369
1458
  min: "min";
1370
1459
  max: "max";
1371
1460
  count: "count";
1461
+ count_distinct: "count_distinct";
1372
1462
  last: "last";
1373
1463
  }>;
1374
1464
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -1418,7 +1508,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1418
1508
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1419
1509
  feedbackType: string;
1420
1510
  groupBy: string[];
1421
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1511
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
1422
1512
  feedbackSource?: string | undefined;
1423
1513
  filters?: {
1424
1514
  feedbackType?: string | string[] | undefined;
@@ -1470,6 +1560,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1470
1560
  min: "min";
1471
1561
  max: "max";
1472
1562
  count: "count";
1563
+ count_distinct: "count_distinct";
1473
1564
  last: "last";
1474
1565
  }>;
1475
1566
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -1515,7 +1606,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1515
1606
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1516
1607
  feedbackType: string;
1517
1608
  interval: "5m" | "1h" | "1m" | "15m" | "1d";
1518
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1609
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
1519
1610
  feedbackSource?: string | undefined;
1520
1611
  filters?: {
1521
1612
  feedbackType?: string | string[] | undefined;
@@ -1577,6 +1668,7 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1577
1668
  min: "min";
1578
1669
  max: "max";
1579
1670
  count: "count";
1671
+ count_distinct: "count_distinct";
1580
1672
  last: "last";
1581
1673
  }>;
1582
1674
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -1727,7 +1819,8 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1727
1819
  }, import("zod/v4/core").$strip>>;
1728
1820
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1729
1821
  name: string[];
1730
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1822
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
1823
+ distinctColumn?: "name" | "model" | "provider" | "entityType" | "entityName" | "serviceName" | "environment" | "parentEntityType" | "parentEntityName" | "rootEntityType" | "rootEntityName" | "executionSource" | undefined;
1731
1824
  filters?: {
1732
1825
  name?: string[] | undefined;
1733
1826
  source?: string | undefined;
@@ -1782,8 +1875,23 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1782
1875
  min: "min";
1783
1876
  max: "max";
1784
1877
  count: "count";
1878
+ count_distinct: "count_distinct";
1785
1879
  last: "last";
1786
1880
  }>;
1881
+ distinctColumn: import("zod").ZodOptional<import("zod").ZodEnum<{
1882
+ executionSource: "executionSource";
1883
+ entityType: "entityType";
1884
+ entityName: "entityName";
1885
+ parentEntityType: "parentEntityType";
1886
+ parentEntityName: "parentEntityName";
1887
+ rootEntityType: "rootEntityType";
1888
+ rootEntityName: "rootEntityName";
1889
+ environment: "environment";
1890
+ serviceName: "serviceName";
1891
+ name: "name";
1892
+ provider: "provider";
1893
+ model: "model";
1894
+ }>>;
1787
1895
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
1788
1896
  name: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
1789
1897
  source: import("zod").ZodOptional<import("zod").ZodString>;
@@ -1837,7 +1945,8 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1837
1945
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1838
1946
  name: string[];
1839
1947
  groupBy: string[];
1840
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
1948
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
1949
+ distinctColumn?: "name" | "model" | "provider" | "entityType" | "entityName" | "serviceName" | "environment" | "parentEntityType" | "parentEntityName" | "rootEntityType" | "rootEntityName" | "executionSource" | undefined;
1841
1950
  filters?: {
1842
1951
  name?: string[] | undefined;
1843
1952
  source?: string | undefined;
@@ -1875,6 +1984,8 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1875
1984
  executionSource?: string | undefined;
1876
1985
  tags?: string[] | undefined;
1877
1986
  } | undefined;
1987
+ limit?: number | undefined;
1988
+ orderDirection?: "ASC" | "DESC" | undefined;
1878
1989
  }, {
1879
1990
  groups: {
1880
1991
  dimensions: Record<string, string | null>;
@@ -1891,8 +2002,23 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1891
2002
  min: "min";
1892
2003
  max: "max";
1893
2004
  count: "count";
2005
+ count_distinct: "count_distinct";
1894
2006
  last: "last";
1895
2007
  }>;
2008
+ distinctColumn: import("zod").ZodOptional<import("zod").ZodEnum<{
2009
+ executionSource: "executionSource";
2010
+ entityType: "entityType";
2011
+ entityName: "entityName";
2012
+ parentEntityType: "parentEntityType";
2013
+ parentEntityName: "parentEntityName";
2014
+ rootEntityType: "rootEntityType";
2015
+ rootEntityName: "rootEntityName";
2016
+ environment: "environment";
2017
+ serviceName: "serviceName";
2018
+ name: "name";
2019
+ provider: "provider";
2020
+ model: "model";
2021
+ }>>;
1896
2022
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
1897
2023
  name: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
1898
2024
  source: import("zod").ZodOptional<import("zod").ZodString>;
@@ -1930,6 +2056,11 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1930
2056
  executionSource: import("zod").ZodOptional<import("zod").ZodString>;
1931
2057
  tags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
1932
2058
  }, import("zod/v4/core").$strip>>;
2059
+ limit: import("zod").ZodOptional<import("zod").ZodNumber>;
2060
+ orderDirection: import("zod").ZodOptional<import("zod").ZodEnum<{
2061
+ ASC: "ASC";
2062
+ DESC: "DESC";
2063
+ }>>;
1933
2064
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
1934
2065
  groups: import("zod").ZodArray<import("zod").ZodObject<{
1935
2066
  dimensions: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodNullable<import("zod").ZodString>>;
@@ -1940,7 +2071,8 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
1940
2071
  }, import("zod/v4/core").$strip>>, string, `/${string}`>, import(".").ServerRoute<{
1941
2072
  name: string[];
1942
2073
  interval: "5m" | "1h" | "1m" | "15m" | "1d";
1943
- aggregation: "count" | "max" | "min" | "sum" | "avg" | "last";
2074
+ aggregation: "count" | "max" | "min" | "sum" | "avg" | "count_distinct" | "last";
2075
+ distinctColumn?: "name" | "model" | "provider" | "entityType" | "entityName" | "serviceName" | "environment" | "parentEntityType" | "parentEntityName" | "rootEntityType" | "rootEntityName" | "executionSource" | undefined;
1944
2076
  filters?: {
1945
2077
  name?: string[] | undefined;
1946
2078
  source?: string | undefined;
@@ -2004,8 +2136,23 @@ export declare const OBSERVABILITY_ROUTES: readonly [import(".").ServerRoute<Rec
2004
2136
  min: "min";
2005
2137
  max: "max";
2006
2138
  count: "count";
2139
+ count_distinct: "count_distinct";
2007
2140
  last: "last";
2008
2141
  }>;
2142
+ distinctColumn: import("zod").ZodOptional<import("zod").ZodEnum<{
2143
+ executionSource: "executionSource";
2144
+ entityType: "entityType";
2145
+ entityName: "entityName";
2146
+ parentEntityType: "parentEntityType";
2147
+ parentEntityName: "parentEntityName";
2148
+ rootEntityType: "rootEntityType";
2149
+ rootEntityName: "rootEntityName";
2150
+ environment: "environment";
2151
+ serviceName: "serviceName";
2152
+ name: "name";
2153
+ provider: "provider";
2154
+ model: "model";
2155
+ }>>;
2009
2156
  filters: import("zod").ZodOptional<import("zod").ZodObject<{
2010
2157
  name: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString>>;
2011
2158
  source: import("zod").ZodOptional<import("zod").ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/observability.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAmCvB,CAAC"}
1
+ {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/observability.ts"],"names":[],"mappings":"AAsCA,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAoCvB,CAAC"}
@@ -1,3 +1,5 @@
1
+ import type { MastraFGAPermissionInput } from '@mastra/core/auth/ee';
2
+ import type { RequestContext } from '@mastra/core/request-context';
1
3
  import type { ValidationErrorHook } from '@mastra/core/server';
2
4
  import type { ZodRawShape, ZodTypeAny } from 'zod/v4';
3
5
  import { z, ZodObject } from 'zod/v4';
@@ -81,7 +83,19 @@ interface RouteConfig<TPathSchema extends z.ZodTypeAny | undefined = undefined,
81
83
  * If set, the user must have this permission to access the route.
82
84
  * Uses the format: `resource:action` or `resource:action:resourceId`
83
85
  */
84
- requiresPermission?: string;
86
+ requiresPermission?: MastraFGAPermissionInput;
87
+ /**
88
+ * FGA authorization config for this route (EE feature).
89
+ * If set, the user must have the specified permission on the resource.
90
+ */
91
+ fga?: {
92
+ resourceType: string;
93
+ resourceIdParam?: string;
94
+ resourceId?: string | ((params: Record<string, unknown>, context: {
95
+ requestContext?: RequestContext;
96
+ }) => string | undefined);
97
+ permission?: MastraFGAPermissionInput;
98
+ };
85
99
  onValidationError?: ValidationErrorHook;
86
100
  }
87
101
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"route-builder.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/route-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route-builder.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/route-builder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/server",
3
- "version": "1.32.0-alpha.1",
3
+ "version": "1.32.0-alpha.2",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "files": [
@@ -112,13 +112,14 @@
112
112
  "typescript": "^6.0.3",
113
113
  "vitest": "4.1.5",
114
114
  "zod": "^4.3.6",
115
+ "zod-to-ts": "^2.0.0",
115
116
  "@internal/core": "0.0.0",
116
117
  "@internal/lint": "0.0.90",
117
- "@internal/storage-test-utils": "0.0.86",
118
118
  "@internal/test-utils": "0.0.26",
119
- "@internal/types-builder": "0.0.65",
120
119
  "@mastra/agent-builder": "1.0.33-alpha.0",
121
- "@mastra/core": "1.32.0-alpha.1",
120
+ "@internal/storage-test-utils": "0.0.86",
121
+ "@internal/types-builder": "0.0.65",
122
+ "@mastra/core": "1.32.0-alpha.2",
122
123
  "@mastra/schema-compat": "1.2.9"
123
124
  },
124
125
  "homepage": "https://mastra.ai",
@@ -142,6 +143,7 @@
142
143
  "build:watch": "pnpm build:lib --watch",
143
144
  "pull:openapispec": "node src/server/openapi.script.js",
144
145
  "generate:permissions": "pnpx tsx scripts/generate-permissions.ts",
146
+ "generate:route-types": "pnpx tsx scripts/generate-route-types.ts",
145
147
  "check:permissions": "pnpx tsx scripts/check-permissions.ts",
146
148
  "test": "vitest run",
147
149
  "lint": "eslint ."
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/handlers/utils.ts"],"names":["HTTPException","MASTRA_RESOURCE_ID_KEY","MASTRA_THREAD_ID_KEY"],"mappings":";;;;;;AAKO,SAAS,aAAa,IAAA,EAA+B;AAC1D,EAAA,MAAM,aAAA,GAAgB,MAAA,CAAO,OAAA,CAAQ,IAAI,CAAA,CAAE,MAAA,CAA+B,CAAC,GAAA,EAAK,CAAC,GAAA,EAAK,KAAK,CAAA,KAAM;AAC/F,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,GAAA,CAAI,GAAG,CAAA,GAAI,CAAA,UAAA,EAAa,GAAG,CAAA,aAAA,CAAA;AAAA,IAC7B;AACA,IAAA,OAAO,GAAA;AAAA,EACT,CAAA,EAAG,EAAE,CAAA;AAEL,EAAA,IAAI,MAAA,CAAO,IAAA,CAAK,aAAa,CAAA,CAAE,SAAS,CAAA,EAAG;AACzC,IAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,MAAA,CAAO,MAAA,CAAO,aAAa,CAAA,CAAE,CAAC,CAAA,EAAG,CAAA;AAAA,EAC3E;AACF;AAOO,SAAS,YAAA,CAAa,MAA+B,cAAA,EAA0B;AACpF,EAAA,KAAA,MAAW,OAAO,cAAA,EAAgB;AAChC,IAAA,IAAI,OAAO,IAAA,EAAM;AACf,MAAA,OAAO,KAAK,GAAG,CAAA;AAAA,IACjB;AAAA,EACF;AACF;AAEO,SAAS,YAAA,CACd,KAAA,EACA,YAAA,GAAuB,GAAA,EACvB,MAAc,GAAA,EACE;AAChB,EAAA,MAAM,UAAA,GAAA,CAAc,KAAA,IAAS,EAAA,EAAI,IAAA,GAAO,WAAA,EAAY;AAEpD,EAAA,IAAI,eAAe,OAAA,EAAS;AAC1B,IAAA,OAAO,KAAA;AAAA,EACT;AACA,EAAA,MAAM,SAAS,QAAA,CAAS,KAAA,IAAS,MAAA,CAAO,YAAY,GAAG,EAAE,CAAA;AACzD,EAAA,IAAI,KAAA,CAAM,MAAM,CAAA,EAAG,OAAO,YAAA;AAC1B,EAAA,OAAO,KAAK,GAAA,CAAI,GAAA,EAAK,KAAK,GAAA,CAAI,CAAA,EAAG,MAAM,CAAC,CAAA;AAC1C;AAKO,SAAS,aAAa,OAAA,EAA4E;AACvG,EAAA,IAAI,CAAC,SAAS,OAAO,MAAA;AAErB,EAAA,OAAO,MAAA,CAAO,WAAA;AAAA,IAAA,CACX,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,GAAI,OAAA,GAAU,CAAC,OAAO,CAAA,EAAG,GAAA,CAAI,CAAC,IAAA,KAAiB;AACnE,MAAA,MAAM,CAAC,GAAA,EAAK,GAAG,UAAU,CAAA,GAAI,IAAA,CAAK,MAAM,GAAG,CAAA;AAC3C,MAAA,MAAM,KAAA,GAAQ,UAAA,CAAW,IAAA,CAAK,GAAG,CAAA;AACjC,MAAA,OAAO,CAAC,KAAK,KAAK,CAAA;AAAA,IACpB,CAAC;AAAA,GACH;AACF;AAUO,SAAS,sBAAA,CACd,gBACA,gBAAA,EACoB;AACpB,EAAA,MAAM,iBAAA,GAAoB,cAAA,EAAgB,GAAA,CAAIC,wCAAsB,CAAA;AACpE,EAAA,OAAO,iBAAA,IAAqB,gBAAA;AAC9B;AAMO,SAAS,oBAAA,CACd,gBACA,cAAA,EACoB;AACpB,EAAA,MAAM,eAAA,GAAkB,cAAA,EAAgB,GAAA,CAAIC,sCAAoB,CAAA;AAChE,EAAA,OAAO,eAAA,IAAmB,cAAA;AAC5B;AAOA,eAAsB,uBAAA,CACpB,QACA,mBAAA,EACe;AACf,EAAA,IAAI,UAAU,mBAAA,IAAuB,MAAA,CAAO,UAAA,IAAc,MAAA,CAAO,eAAe,mBAAA,EAAqB;AACnG,IAAA,MAAM,IAAIF,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,yDAAyD,CAAA;AAAA,EACnG;AACF;AAMA,eAAsB,oBAAA,CACpB,KACA,mBAAA,EACe;AACf,EAAA,IAAI,OAAO,mBAAA,IAAuB,GAAA,CAAI,UAAA,IAAc,GAAA,CAAI,eAAe,mBAAA,EAAqB;AAC1F,IAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,+DAA+D,CAAA;AAAA,EACzG;AACF","file":"chunk-3S5WOAYR.cjs","sourcesContent":["import type { RequestContext } from '@mastra/core/di';\nimport { MASTRA_RESOURCE_ID_KEY, MASTRA_THREAD_ID_KEY } from '../constants';\nimport { HTTPException } from '../http-exception';\n\n// Validation helper\nexport function validateBody(body: Record<string, unknown>) {\n const errorResponse = Object.entries(body).reduce<Record<string, string>>((acc, [key, value]) => {\n if (!value) {\n acc[key] = `Argument \"${key}\" is required`;\n }\n return acc;\n }, {});\n\n if (Object.keys(errorResponse).length > 0) {\n throw new HTTPException(400, { message: Object.values(errorResponse)[0] });\n }\n}\n\n/**\n * sanitizes the body by removing disallowed keys.\n * @param body body to sanitize\n * @param disallowedKeys keys to remove from the body\n */\nexport function sanitizeBody(body: Record<string, unknown>, disallowedKeys: string[]) {\n for (const key of disallowedKeys) {\n if (key in body) {\n delete body[key];\n }\n }\n}\n\nexport function parsePerPage(\n value: string | undefined,\n defaultValue: number = 100,\n max: number = 1000,\n): number | false {\n const normalized = (value || '').trim().toLowerCase();\n // Handle explicit false to bypass pagination\n if (normalized === 'false') {\n return false;\n }\n const parsed = parseInt(value || String(defaultValue), 10);\n if (isNaN(parsed)) return defaultValue;\n return Math.min(max, Math.max(1, parsed));\n}\n\n/**\n * Parses filter query parameters into a key-value object.\n */\nexport function parseFilters(filters: string | string[] | undefined): Record<string, string> | undefined {\n if (!filters) return undefined;\n\n return Object.fromEntries(\n (Array.isArray(filters) ? filters : [filters]).map((attr: string) => {\n const [key, ...valueParts] = attr.split(':');\n const value = valueParts.join(':'); // ✅ Handles colons in values\n return [key, value];\n }),\n );\n}\n\n// ============================================================================\n// Authorization Utilities\n// ============================================================================\n\n/**\n * Gets the effective resourceId, preferring the reserved key from requestContext\n * over client-provided values for security.\n */\nexport function getEffectiveResourceId(\n requestContext: RequestContext | undefined,\n clientResourceId: string | undefined,\n): string | undefined {\n const contextResourceId = requestContext?.get(MASTRA_RESOURCE_ID_KEY) as string | undefined;\n return contextResourceId || clientResourceId;\n}\n\n/**\n * Gets the effective threadId, preferring the reserved key from requestContext\n * over client-provided values for security.\n */\nexport function getEffectiveThreadId(\n requestContext: RequestContext | undefined,\n clientThreadId: string | undefined,\n): string | undefined {\n const contextThreadId = requestContext?.get(MASTRA_THREAD_ID_KEY) as string | undefined;\n return contextThreadId || clientThreadId;\n}\n\n/**\n * Validates that a thread belongs to the specified resourceId.\n * Throws 403 if the thread exists but belongs to a different resource.\n * Threads with no resourceId are accessible to all (shared threads).\n */\nexport async function validateThreadOwnership(\n thread: { resourceId?: string | null } | null | undefined,\n effectiveResourceId: string | undefined,\n): Promise<void> {\n if (thread && effectiveResourceId && thread.resourceId && thread.resourceId !== effectiveResourceId) {\n throw new HTTPException(403, { message: 'Access denied: thread belongs to a different resource' });\n }\n}\n\n/**\n * Validates that a workflow run belongs to the specified resourceId.\n * Throws 403 if the run exists but belongs to a different resource.\n */\nexport async function validateRunOwnership(\n run: { resourceId?: string | null } | null | undefined,\n effectiveResourceId: string | undefined,\n): Promise<void> {\n if (run && effectiveResourceId && run.resourceId && run.resourceId !== effectiveResourceId) {\n throw new HTTPException(403, { message: 'Access denied: workflow run belongs to a different resource' });\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/handlers/auth.ts"],"names":["mastra"],"mappings":"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","file":"chunk-4BSJHDYP.js","sourcesContent":["/**\n * Auth handlers for EE authentication capabilities.\n *\n * These routes enable Studio to:\n * - Detect available auth capabilities\n * - Initiate SSO login flows\n * - Handle OAuth callbacks\n * - Logout users\n */\n\nimport type {\n IUserProvider,\n ISessionProvider,\n ISSOProvider,\n ICredentialsProvider,\n SSOCallbackResult,\n} from '@mastra/core/auth';\nimport type { IRBACProvider, EEUser } from '@mastra/core/auth/ee';\nimport type { MastraAuthProvider } from '@mastra/core/server';\n\nimport { supportsSessionRefresh } from '../auth/helpers';\nimport { HTTPException } from '../http-exception';\nimport {\n capabilitiesResponseSchema,\n ssoLoginQuerySchema,\n ssoCallbackQuerySchema,\n currentUserResponseSchema,\n credentialsSignInBodySchema,\n credentialsSignUpBodySchema,\n refreshResponseSchema,\n} from '../schemas/auth';\nimport { createPublicRoute } from '../server-adapter/routes/route-builder';\nimport { handleError } from './error';\n\ntype BuildCapabilitiesFn = (auth: any, request: Request, options?: { rbac?: any; apiPrefix?: string }) => Promise<any>;\nlet _buildCapabilitiesPromise: Promise<BuildCapabilitiesFn | undefined> | undefined;\nfunction loadBuildCapabilities(): Promise<BuildCapabilitiesFn | undefined> {\n if (!_buildCapabilitiesPromise) {\n _buildCapabilitiesPromise = import('@mastra/core/auth/ee')\n .then(m => m.buildCapabilities as BuildCapabilitiesFn)\n .catch(() => {\n console.error(\n '[@mastra/server] EE auth features require @mastra/core >= 1.6.0. Please upgrade: npm install @mastra/core@latest',\n );\n return undefined;\n });\n }\n return _buildCapabilitiesPromise;\n}\n\n/**\n * Helper to get auth provider from Mastra instance.\n */\nfunction getAuthProvider(mastra: any): MastraAuthProvider | null {\n const serverConfig = mastra.getServer?.();\n if (!serverConfig?.auth) return null;\n\n // Auth can be either MastraAuthConfig or MastraAuthProvider\n // If it has authenticateToken method, it's a provider\n if (typeof serverConfig.auth.authenticateToken === 'function') {\n return serverConfig.auth as MastraAuthProvider;\n }\n\n return null;\n}\n\n/**\n * Get the public-facing origin from a request, respecting reverse proxy headers.\n * Behind a proxy (e.g. edge router), request.url contains the internal hostname,\n * so we rely on forwarded headers to reconstruct the real public origin.\n *\n * Assumes the server is behind a trusted proxy (or running locally). When\n * exposed directly to untrusted clients, the Host header is attacker-controlled\n * and must be validated upstream.\n *\n * Priority:\n * 1. X-Forwarded-Host (traditional reverse proxy) → always HTTPS. Knative's\n * queue-proxy overwrites X-Forwarded-Proto based on the internal HTTP\n * connection, so X-Forwarded-Proto is ignored here.\n * 2. Host header with X-Forwarded-Proto (AWS ALB, some proxies) → respect proto.\n * 3. Host header alone → use the scheme from request.url (covers both direct\n * HTTP access and proxies that preserve Host but don't set a proto header).\n * 4. No Host header → fall back to request.url.origin (local dev / direct access).\n */\nexport function getPublicOrigin(request: Request): string {\n const forwardedHost = request.headers.get('x-forwarded-host')?.split(',')[0]?.trim();\n if (forwardedHost) {\n return `https://${forwardedHost}`;\n }\n\n const host = request.headers.get('host');\n if (host) {\n const forwardedProto = request.headers.get('x-forwarded-proto')?.split(',')[0]?.trim();\n const proto = forwardedProto || new URL(request.url).protocol.replace(':', '');\n return `${proto}://${host}`;\n }\n\n return new URL(request.url).origin;\n}\n\n/**\n * Helper to get RBAC provider from Mastra server config.\n */\nfunction getRBACProvider(mastra: any): IRBACProvider<EEUser> | undefined {\n const serverConfig = mastra.getServer?.();\n return serverConfig?.rbac as IRBACProvider<EEUser> | undefined;\n}\n\n/**\n * Type guard to check if auth provider implements an interface.\n */\nfunction implementsInterface<T>(auth: unknown, method: keyof T): auth is T {\n return auth !== null && typeof auth === 'object' && method in auth;\n}\n\n// ============================================================================\n// GET /auth/capabilities\n// ============================================================================\n\nexport const GET_AUTH_CAPABILITIES_ROUTE = createPublicRoute({\n method: 'GET',\n path: '/auth/capabilities',\n responseType: 'json',\n responseSchema: capabilitiesResponseSchema,\n summary: 'Get auth capabilities',\n description:\n 'Returns authentication capabilities and current user info. Used by Studio to determine available features and user state.',\n tags: ['Auth'],\n handler: async ctx => {\n try {\n const { mastra, request, routePrefix } = ctx as any;\n\n const auth = getAuthProvider(mastra);\n\n if (!auth) {\n return { enabled: false, login: null };\n }\n\n const rbac = getRBACProvider(mastra);\n\n const buildCapabilities = await loadBuildCapabilities();\n if (!buildCapabilities) {\n return { enabled: false, login: null };\n }\n const capabilities = await buildCapabilities(auth, request, { rbac, apiPrefix: routePrefix });\n\n // If capabilities came back without a user, the session may have expired.\n // Attempt a transparent refresh (same logic as coreAuthMiddleware) and retry.\n if (!('user' in capabilities) && supportsSessionRefresh(auth)) {\n try {\n const sessionId = await auth.getSessionIdFromRequest(request);\n if (sessionId) {\n const refreshedSession = await auth.refreshSession(sessionId);\n if (refreshedSession) {\n const sessionHeaders = await auth.getSessionHeaders(refreshedSession);\n const cookieValue = extractCookieFromHeaders(sessionHeaders);\n if (cookieValue) {\n // Rebuild capabilities with the refreshed cookie\n const refreshedRequest = new Request(request.url, {\n method: request.method,\n headers: new Headers(request.headers),\n });\n refreshedRequest.headers.set('Cookie', cookieValue);\n const refreshedCapabilities = await buildCapabilities(auth, refreshedRequest, {\n rbac,\n apiPrefix: routePrefix,\n });\n\n // Attach refresh headers so the adapter can set the new cookie\n if ('user' in refreshedCapabilities) {\n (refreshedCapabilities as any).__refreshHeaders = sessionHeaders;\n }\n return refreshedCapabilities;\n }\n }\n }\n } catch {\n // Refresh failed — return original unauthenticated capabilities\n }\n }\n\n return capabilities;\n } catch (error) {\n return handleError(error, 'Error getting auth capabilities');\n }\n },\n});\n\n/**\n * Extract a full cookie string from session headers (e.g. Set-Cookie → Cookie).\n */\nfunction extractCookieFromHeaders(headers: Record<string, string>): string | null {\n const setCookie = headers['Set-Cookie'] || headers['set-cookie'];\n if (!setCookie) return null;\n // Set-Cookie value is \"name=value; Path=/; ...\" — extract \"name=value\"\n const match = setCookie.match(/^([^;]+)/);\n return match ? (match[1] ?? null) : null;\n}\n\n// ============================================================================\n// GET /auth/me\n// ============================================================================\n\nexport const GET_CURRENT_USER_ROUTE = createPublicRoute({\n method: 'GET',\n path: '/auth/me',\n responseType: 'json',\n responseSchema: currentUserResponseSchema,\n summary: 'Get current user',\n description: 'Returns the currently authenticated user, or null if not authenticated.',\n tags: ['Auth'],\n handler: async ctx => {\n try {\n const { mastra, request } = ctx as any;\n const auth = getAuthProvider(mastra);\n const rbac = getRBACProvider(mastra);\n\n if (!auth || !implementsInterface<IUserProvider>(auth, 'getCurrentUser')) {\n return null;\n }\n\n const user = await auth.getCurrentUser(request);\n if (!user) return null;\n\n // Get roles/permissions from RBAC provider if available\n let roles: string[] | undefined;\n let permissions: string[] | undefined;\n\n if (rbac) {\n try {\n roles = await rbac.getRoles(user);\n permissions = await rbac.getPermissions(user);\n } catch {\n // RBAC not available or failed\n }\n }\n\n return {\n id: user.id,\n email: user.email,\n name: user.name,\n avatarUrl: user.avatarUrl,\n roles,\n permissions,\n };\n } catch (error) {\n return handleError(error, 'Error getting current user');\n }\n },\n});\n\n// ============================================================================\n// GET /auth/sso/login\n// ============================================================================\n\nexport const GET_SSO_LOGIN_ROUTE = createPublicRoute({\n method: 'GET',\n path: '/auth/sso/login',\n responseType: 'datastream-response',\n queryParamSchema: ssoLoginQuerySchema,\n summary: 'Initiate SSO login',\n description: 'Returns the SSO login URL and sets PKCE cookies if needed.',\n tags: ['Auth'],\n handler: async ctx => {\n try {\n const { mastra, redirect_uri, request, routePrefix } = ctx as any;\n const auth = getAuthProvider(mastra);\n\n if (!auth || !implementsInterface<ISSOProvider>(auth, 'getLoginUrl')) {\n throw new HTTPException(404, { message: 'SSO not configured' });\n }\n\n // Build OAuth callback URI using the configured route prefix\n const origin = getPublicOrigin(request);\n const raw = ((routePrefix as string) || '/api').trim();\n const withSlash = raw.startsWith('/') ? raw : `/${raw}`;\n const prefix = withSlash.endsWith('/') ? withSlash.slice(0, -1) : withSlash;\n const oauthCallbackUri = `${origin}${prefix}/auth/sso/callback`;\n\n // Encode the post-login redirect in state (where user goes after auth completes)\n // State format: uuid|postLoginRedirect\n // Validate redirect_uri to prevent open-redirect attacks: allow relative paths,\n // same-origin URLs, and localhost URLs (for dev setups where Studio runs on a\n // different port).\n let postLoginRedirect = '/';\n if (redirect_uri) {\n if (!redirect_uri.startsWith('http')) {\n // Relative path — always safe\n postLoginRedirect = redirect_uri;\n } else {\n try {\n const redirectUrl = new URL(redirect_uri);\n const requestOrigin = new URL(origin);\n const isHttps = redirectUrl.protocol === 'http:' || redirectUrl.protocol === 'https:';\n const isSameOrigin = redirectUrl.origin === requestOrigin.origin;\n const isLocalhost =\n redirectUrl.hostname === 'localhost' ||\n redirectUrl.hostname === '127.0.0.1' ||\n redirectUrl.hostname === '[::1]';\n if (isHttps && (isSameOrigin || isLocalhost)) {\n postLoginRedirect = redirect_uri;\n }\n } catch {\n // Malformed URL — fall back to /\n }\n }\n }\n const stateId = crypto.randomUUID();\n const state = `${stateId}|${encodeURIComponent(postLoginRedirect)}`;\n\n const loginUrl = auth.getLoginUrl(oauthCallbackUri, state);\n\n // Build response with optional PKCE cookies\n const headers = new Headers({ 'Content-Type': 'application/json' });\n\n // Check for PKCE cookies (e.g., MastraCloudAuthProvider)\n if (implementsInterface<ISSOProvider>(auth, 'getLoginCookies') && auth.getLoginCookies) {\n const cookies = auth.getLoginCookies(oauthCallbackUri, state);\n if (cookies?.length) {\n // PKCE cookies set for SSO state management\n for (const cookie of cookies) {\n headers.append('Set-Cookie', cookie);\n }\n }\n }\n\n return new Response(JSON.stringify({ url: loginUrl }), { status: 200, headers });\n } catch (error) {\n return handleError(error, 'Error initiating SSO login');\n }\n },\n});\n\n// ============================================================================\n// GET /auth/sso/callback\n// ============================================================================\n\nexport const GET_SSO_CALLBACK_ROUTE = createPublicRoute({\n method: 'GET',\n path: '/auth/sso/callback',\n responseType: 'datastream-response',\n queryParamSchema: ssoCallbackQuerySchema,\n summary: 'Handle SSO callback',\n description: 'Handles the OAuth callback, exchanges code for session, and redirects to the app.',\n tags: ['Auth'],\n handler: async ctx => {\n const { mastra, code, state, request } = ctx as any;\n\n // Build base URL for redirects (Response.redirect requires absolute URL)\n const baseUrl = getPublicOrigin(request);\n\n // Extract post-login redirect from state (format: uuid|encodedRedirect)\n let redirectTo = '/';\n let stateId = state || '';\n if (state && state.includes('|')) {\n const [id, encodedRedirect] = state.split('|', 2);\n stateId = id;\n try {\n redirectTo = decodeURIComponent(encodedRedirect);\n } catch {\n redirectTo = '/';\n }\n }\n\n // Build absolute redirect URL.\n // The redirect_uri was validated at the login endpoint (same-origin or localhost\n // only), so the state should only contain safe URLs. We still apply defense-in-depth\n // checks here: allow http(s) same-origin or localhost, reject everything else.\n let absoluteRedirect: string;\n if (redirectTo.startsWith('http')) {\n try {\n const parsed = new URL(redirectTo);\n const baseOrigin = new URL(baseUrl);\n const isHttps = parsed.protocol === 'http:' || parsed.protocol === 'https:';\n const isSameOrigin = parsed.origin === baseOrigin.origin;\n const isLocalhost =\n parsed.hostname === 'localhost' || parsed.hostname === '127.0.0.1' || parsed.hostname === '[::1]';\n absoluteRedirect = isHttps && (isSameOrigin || isLocalhost) ? redirectTo : `${baseUrl}/`;\n } catch {\n absoluteRedirect = `${baseUrl}/`;\n }\n } else {\n absoluteRedirect = `${baseUrl}${redirectTo}`;\n }\n\n try {\n const auth = getAuthProvider(mastra);\n\n if (!auth || !implementsInterface<ISSOProvider>(auth, 'handleCallback')) {\n return Response.redirect(`${absoluteRedirect}?error=sso_not_configured`, 302);\n }\n\n // Pass cookie header to provider for PKCE validation (if supported)\n const reqCookieHeader = request.headers.get('cookie');\n if (typeof (auth as any).setCallbackCookieHeader === 'function') {\n (auth as any).setCallbackCookieHeader(reqCookieHeader);\n }\n\n const result = (await auth.handleCallback(code, stateId)) as SSOCallbackResult<EEUser>;\n const user = result.user as EEUser;\n\n // Build response headers (session cookies, etc.)\n const headers = new Headers();\n headers.set('Location', absoluteRedirect);\n\n // Set session cookies from the SSO result\n if (result.cookies?.length) {\n for (const cookie of result.cookies) {\n headers.append('Set-Cookie', cookie);\n }\n } else if (implementsInterface<ISessionProvider>(auth, 'createSession') && result.tokens) {\n // Fallback: Create session manually for providers without cookie support\n const session = await auth.createSession(user.id, {\n accessToken: result.tokens.accessToken,\n refreshToken: result.tokens.refreshToken,\n expiresAt: result.tokens.expiresAt,\n organizationId: (user as any).organizationId,\n });\n const sessionHeaders = auth.getSessionHeaders(session);\n for (const [key, value] of Object.entries(sessionHeaders)) {\n headers.append(key, value);\n }\n }\n\n return new Response(null, {\n status: 302,\n headers,\n });\n } catch (error) {\n // Redirect with error (use absolute URL)\n const errorMessage = encodeURIComponent(error instanceof Error ? error.message : 'Unknown error');\n return Response.redirect(`${absoluteRedirect}?error=${errorMessage}`, 302);\n }\n },\n});\n\n// ============================================================================\n// POST /auth/logout\n// ============================================================================\n\nexport const POST_LOGOUT_ROUTE = createPublicRoute({\n method: 'POST',\n path: '/auth/logout',\n responseType: 'datastream-response',\n summary: 'Logout',\n description: 'Destroys the current session and returns logout redirect URL if available.',\n tags: ['Auth'],\n handler: async ctx => {\n const { mastra, request } = ctx as any;\n\n try {\n const auth = getAuthProvider(mastra);\n\n if (!auth) {\n return new Response(JSON.stringify({ success: true }), {\n status: 200,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n\n // Get session ID and destroy it\n if (implementsInterface<ISessionProvider>(auth, 'getSessionIdFromRequest')) {\n const sessionId = auth.getSessionIdFromRequest(request);\n if (sessionId && implementsInterface<ISessionProvider>(auth, 'destroySession')) {\n await auth.destroySession(sessionId);\n }\n }\n\n // Get logout URL if available\n let redirectTo: string | undefined;\n if (implementsInterface<ISSOProvider>(auth, 'getLogoutUrl') && auth.getLogoutUrl) {\n // Use public origin (respects X-Forwarded-Host behind reverse proxy)\n const origin = getPublicOrigin(request);\n const logoutUrl = await auth.getLogoutUrl(origin, request);\n redirectTo = logoutUrl ?? undefined;\n }\n\n // Build response with session clearing headers\n const headers = new Headers({ 'Content-Type': 'application/json' });\n\n // Clear session cookie\n if (implementsInterface<ISessionProvider>(auth, 'getClearSessionHeaders')) {\n const clearHeaders = auth.getClearSessionHeaders();\n for (const [key, value] of Object.entries(clearHeaders)) {\n headers.append(key, value);\n }\n }\n\n return new Response(JSON.stringify({ success: true, redirectTo }), {\n status: 200,\n headers,\n });\n } catch (error) {\n return handleError(error, 'Error logging out');\n }\n },\n});\n\n// ============================================================================\n// POST /auth/refresh\n// ============================================================================\n\nexport const POST_REFRESH_ROUTE = createPublicRoute({\n method: 'POST',\n path: '/auth/refresh',\n responseType: 'datastream-response',\n responseSchema: refreshResponseSchema,\n summary: 'Refresh session',\n description: 'Refreshes the current session, extending its expiry. Sets a new session cookie on success.',\n tags: ['Auth'],\n handler: async ctx => {\n const { mastra, request } = ctx as any;\n\n try {\n const auth = getAuthProvider(mastra);\n\n if (\n !auth ||\n !implementsInterface<ISessionProvider>(auth, 'refreshSession') ||\n !implementsInterface<ISessionProvider>(auth, 'getSessionIdFromRequest')\n ) {\n throw new HTTPException(404, { message: 'Session refresh not configured' });\n }\n\n // Get session ID from request\n const sessionId = auth.getSessionIdFromRequest(request);\n if (!sessionId) {\n throw new HTTPException(401, { message: 'No session' });\n }\n\n // Refresh the session\n const newSession = await auth.refreshSession(sessionId);\n if (!newSession) {\n throw new HTTPException(401, { message: 'Session expired' });\n }\n\n // Build response with new session headers\n const headers = new Headers({ 'Content-Type': 'application/json' });\n if (implementsInterface<ISessionProvider>(auth, 'getSessionHeaders')) {\n const sessionHeaders = auth.getSessionHeaders(newSession);\n for (const [key, value] of Object.entries(sessionHeaders)) {\n headers.append(key, value);\n }\n }\n\n return new Response(JSON.stringify({ success: true }), {\n status: 200,\n headers,\n });\n } catch (error) {\n if (error instanceof HTTPException) throw error;\n return handleError(error, 'Error refreshing session');\n }\n },\n});\n\n// ============================================================================\n// POST /auth/credentials/sign-in\n// ============================================================================\n\nexport const POST_CREDENTIALS_SIGN_IN_ROUTE = createPublicRoute({\n method: 'POST',\n path: '/auth/credentials/sign-in',\n responseType: 'datastream-response',\n bodySchema: credentialsSignInBodySchema,\n summary: 'Sign in with credentials',\n description: 'Authenticates a user with email and password.',\n tags: ['Auth'],\n handler: async ctx => {\n const { mastra, request, email, password } = ctx as any;\n\n try {\n const auth = getAuthProvider(mastra);\n\n if (!auth || !implementsInterface<ICredentialsProvider>(auth, 'signIn')) {\n throw new HTTPException(404, { message: 'Credentials authentication not configured' });\n }\n\n const result = await auth.signIn(email, password, request);\n const user = result.user as EEUser;\n\n const responseBody = JSON.stringify({\n user: {\n id: user.id,\n email: user.email,\n name: user.name,\n avatarUrl: user.avatarUrl,\n },\n token: result.token,\n });\n\n // Build response headers, including cookies from the auth provider\n const headers = new Headers({\n 'Content-Type': 'application/json',\n });\n\n // Forward session cookies from the auth provider\n if (result.cookies?.length) {\n for (const cookie of result.cookies) {\n headers.append('Set-Cookie', cookie);\n }\n }\n\n return new Response(responseBody, { status: 200, headers });\n } catch (error) {\n if (error instanceof HTTPException) throw error;\n // Return a generic error for auth failures to avoid leaking info\n throw new HTTPException(401, { message: 'Invalid email or password' });\n }\n },\n});\n\n// ============================================================================\n// POST /auth/credentials/sign-up\n// ============================================================================\n\nexport const POST_CREDENTIALS_SIGN_UP_ROUTE = createPublicRoute({\n method: 'POST',\n path: '/auth/credentials/sign-up',\n responseType: 'datastream-response',\n bodySchema: credentialsSignUpBodySchema,\n summary: 'Sign up with credentials',\n description: 'Creates a new user account with email and password.',\n tags: ['Auth'],\n handler: async ctx => {\n const { mastra, request, email, password, name } = ctx as any;\n\n try {\n const auth = getAuthProvider(mastra);\n\n if (!auth || !implementsInterface<ICredentialsProvider>(auth, 'signUp')) {\n throw new HTTPException(404, { message: 'Credentials authentication not configured' });\n }\n\n const result = await auth.signUp(email, password, name, request);\n const user = result.user as EEUser;\n\n const responseBody = JSON.stringify({\n user: {\n id: user.id,\n email: user.email,\n name: user.name,\n avatarUrl: user.avatarUrl,\n },\n token: result.token,\n });\n\n // Build response headers, including cookies from the auth provider\n const headers = new Headers({\n 'Content-Type': 'application/json',\n });\n\n // Forward session cookies from the auth provider\n if (result.cookies?.length) {\n for (const cookie of result.cookies) {\n headers.append('Set-Cookie', cookie);\n }\n }\n\n return new Response(responseBody, { status: 200, headers });\n } catch (error) {\n if (error instanceof HTTPException) throw error;\n const mastra = (ctx as any).mastra;\n mastra?.getLogger?.()?.error('Sign-up error', {\n error: error instanceof Error ? { message: error.message, stack: error.stack } : error,\n });\n throw new HTTPException(400, { message: 'Failed to create account' });\n }\n },\n});\n\n// ============================================================================\n// Export all auth routes\n// ============================================================================\n\nexport const AUTH_ROUTES = [\n GET_AUTH_CAPABILITIES_ROUTE,\n GET_CURRENT_USER_ROUTE,\n GET_SSO_LOGIN_ROUTE,\n GET_SSO_CALLBACK_ROUTE,\n POST_LOGOUT_ROUTE,\n POST_REFRESH_ROUTE,\n POST_CREDENTIALS_SIGN_IN_ROUTE,\n POST_CREDENTIALS_SIGN_UP_ROUTE,\n] as const;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/handlers/observability-shared.ts"],"names":[],"mappings":"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","file":"chunk-53YFG5AY.js","sourcesContent":["import type { Mastra } from '@mastra/core';\nimport type { MastraCompositeStore, ObservabilityStorage } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport type { ServerRoute } from '../server-adapter/routes';\n\nexport const NEW_OBSERVABILITY_UPGRADE_MESSAGE =\n 'New observability endpoints require a newer @mastra/core. Please upgrade.';\n\n/** Retrieves MastraCompositeStore or throws 500 if unavailable. */\nexport function getStorage(mastra: Mastra): MastraCompositeStore {\n const storage = mastra.getStorage();\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not available' });\n }\n return storage;\n}\n\n/** Retrieves the observability storage domain or throws 500 if unavailable. */\nexport async function getObservabilityStore(mastra: Mastra): Promise<ObservabilityStorage> {\n const storage = getStorage(mastra);\n const observability = await storage.getStore('observability');\n if (!observability) {\n throw new HTTPException(500, { message: 'Observability storage domain is not available' });\n }\n return observability;\n}\n\nexport interface RouteDetails {\n method: ServerRoute['method'];\n path: `/${string}`;\n summary: string;\n description: string;\n requiresPermission?: ServerRoute['requiresPermission'];\n}\n\nexport const NEW_ROUTE_DEFS = {\n LIST_LOGS: {\n method: 'GET',\n path: '/observability/logs',\n summary: 'List logs',\n description: 'Returns a paginated list of logs with optional filtering and sorting',\n },\n\n LIST_SCORES: {\n method: 'GET',\n path: '/observability/scores',\n summary: 'List scores',\n description: 'Returns a paginated list of scores with optional filtering and sorting',\n },\n\n CREATE_SCORE: {\n method: 'POST',\n path: '/observability/scores',\n summary: 'Create a score',\n description: 'Creates a single score record in the observability store',\n },\n\n GET_SCORE_AGGREGATE: {\n method: 'POST',\n path: '/observability/scores/aggregate',\n summary: 'Get score aggregate',\n description: 'Returns an aggregated score value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_BREAKDOWN: {\n method: 'POST',\n path: '/observability/scores/breakdown',\n summary: 'Get score breakdown',\n description: 'Returns score values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_TIME_SERIES: {\n method: 'POST',\n path: '/observability/scores/timeseries',\n summary: 'Get score time series',\n description: 'Returns score values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_SCORE_PERCENTILES: {\n method: 'POST',\n path: '/observability/scores/percentiles',\n summary: 'Get score percentiles',\n description: 'Returns percentile values for a score bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n LIST_FEEDBACK: {\n method: 'GET',\n path: '/observability/feedback',\n summary: 'List feedback',\n description: 'Returns a paginated list of feedback with optional filtering and sorting',\n },\n\n CREATE_FEEDBACK: {\n method: 'POST',\n path: '/observability/feedback',\n summary: 'Create feedback',\n description: 'Creates a single feedback record in the observability store',\n },\n\n GET_FEEDBACK_AGGREGATE: {\n method: 'POST',\n path: '/observability/feedback/aggregate',\n summary: 'Get feedback aggregate',\n description: 'Returns an aggregated numeric feedback value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_BREAKDOWN: {\n method: 'POST',\n path: '/observability/feedback/breakdown',\n summary: 'Get feedback breakdown',\n description: 'Returns numeric feedback values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_TIME_SERIES: {\n method: 'POST',\n path: '/observability/feedback/timeseries',\n summary: 'Get feedback time series',\n description: 'Returns numeric feedback values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_FEEDBACK_PERCENTILES: {\n method: 'POST',\n path: '/observability/feedback/percentiles',\n summary: 'Get feedback percentiles',\n description: 'Returns percentile values for numeric feedback bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_AGGREGATE: {\n method: 'POST',\n path: '/observability/metrics/aggregate',\n summary: 'Get metric aggregate',\n description: 'Returns an aggregated metric value with optional period-over-period comparison',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_BREAKDOWN: {\n method: 'POST',\n path: '/observability/metrics/breakdown',\n summary: 'Get metric breakdown',\n description: 'Returns metric values grouped by specified dimensions',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_TIME_SERIES: {\n method: 'POST',\n path: '/observability/metrics/timeseries',\n summary: 'Get metric time series',\n description: 'Returns metric values bucketed by time interval with optional grouping',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_PERCENTILES: {\n method: 'POST',\n path: '/observability/metrics/percentiles',\n summary: 'Get metric percentiles',\n description: 'Returns percentile values for a metric bucketed by time interval',\n requiresPermission: 'observability:read',\n },\n\n GET_METRIC_NAMES: {\n method: 'GET',\n path: '/observability/discovery/metric-names',\n summary: 'Get metric names',\n description: 'Returns distinct metric names with optional prefix filtering',\n },\n\n GET_METRIC_LABEL_KEYS: {\n method: 'GET',\n path: '/observability/discovery/metric-label-keys',\n summary: 'Get metric label keys',\n description: 'Returns distinct label keys for a given metric',\n },\n\n GET_METRIC_LABEL_VALUES: {\n method: 'GET',\n path: '/observability/discovery/metric-label-values',\n summary: 'Get label values',\n description: 'Returns distinct values for a given metric label key',\n },\n\n GET_ENTITY_TYPES: {\n method: 'GET',\n path: '/observability/discovery/entity-types',\n summary: 'Get entity types',\n description: 'Returns distinct entity types from observability data',\n },\n\n GET_ENTITY_NAMES: {\n method: 'GET',\n path: '/observability/discovery/entity-names',\n summary: 'Get entity names',\n description: 'Returns distinct entity names with optional type filtering',\n },\n\n GET_SERVICE_NAMES: {\n method: 'GET',\n path: '/observability/discovery/service-names',\n summary: 'Get service names',\n description: 'Returns distinct service names from observability data',\n },\n\n GET_ENVIRONMENTS: {\n method: 'GET',\n path: '/observability/discovery/environments',\n summary: 'Get environments',\n description: 'Returns distinct environments from observability data',\n },\n\n GET_TAGS: {\n method: 'GET',\n path: '/observability/discovery/tags',\n summary: 'Get tags',\n description: 'Returns distinct tags with optional entity type filtering',\n },\n} as const satisfies Record<string, RouteDetails>;\n\nexport type NewRoutesKey = keyof typeof NEW_ROUTE_DEFS;\nexport type NewRoutesDefinitions = (typeof NEW_ROUTE_DEFS)[NewRoutesKey];\n"]}