@mastra/server 1.52.0-alpha.4 → 1.52.0-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/request-context/index.d.ts +5 -5
  3. package/dist/_types/@internal_voice/dist/routes/index.d.ts +18 -18
  4. package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +2 -2
  5. package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-v6/dist/index.d.ts +7 -3
  6. package/dist/{api-schema-manifest-SFPIP4LQ.cjs → api-schema-manifest-BZGA74J2.cjs} +4 -4
  7. package/dist/{api-schema-manifest-SFPIP4LQ.cjs.map → api-schema-manifest-BZGA74J2.cjs.map} +1 -1
  8. package/dist/{api-schema-manifest-OVMK2UXJ.js → api-schema-manifest-NNWEDO6W.js} +3 -3
  9. package/dist/{api-schema-manifest-OVMK2UXJ.js.map → api-schema-manifest-NNWEDO6W.js.map} +1 -1
  10. package/dist/{chunk-THQZFNHO.cjs → chunk-2CMAB3SO.cjs} +10 -10
  11. package/dist/{chunk-THQZFNHO.cjs.map → chunk-2CMAB3SO.cjs.map} +1 -1
  12. package/dist/{chunk-CCZTBYCI.cjs → chunk-2JMQ5GN2.cjs} +10 -10
  13. package/dist/{chunk-CCZTBYCI.cjs.map → chunk-2JMQ5GN2.cjs.map} +1 -1
  14. package/dist/{chunk-BNR5CIPX.cjs → chunk-2Q2CCUIN.cjs} +4 -4
  15. package/dist/{chunk-BNR5CIPX.cjs.map → chunk-2Q2CCUIN.cjs.map} +1 -1
  16. package/dist/{chunk-Z5OBB3DJ.js → chunk-2Q3GX3ML.js} +3 -3
  17. package/dist/{chunk-Z5OBB3DJ.js.map → chunk-2Q3GX3ML.js.map} +1 -1
  18. package/dist/{chunk-AGMARPDG.js → chunk-2YL7Z4BF.js} +3 -3
  19. package/dist/{chunk-AGMARPDG.js.map → chunk-2YL7Z4BF.js.map} +1 -1
  20. package/dist/{chunk-MJ5QWRI2.cjs → chunk-33C4F4LV.cjs} +4 -4
  21. package/dist/{chunk-MJ5QWRI2.cjs.map → chunk-33C4F4LV.cjs.map} +1 -1
  22. package/dist/{chunk-27F2AJU2.cjs → chunk-3ANOSGBL.cjs} +3 -3
  23. package/dist/{chunk-27F2AJU2.cjs.map → chunk-3ANOSGBL.cjs.map} +1 -1
  24. package/dist/{chunk-NI4O4PKL.js → chunk-3G43R5VJ.js} +4 -4
  25. package/dist/{chunk-NI4O4PKL.js.map → chunk-3G43R5VJ.js.map} +1 -1
  26. package/dist/{chunk-DIG2K5CV.cjs → chunk-3JVOIOO6.cjs} +7 -3
  27. package/dist/chunk-3JVOIOO6.cjs.map +1 -0
  28. package/dist/{chunk-SGXBKIPB.cjs → chunk-3NRUYIMU.cjs} +10 -10
  29. package/dist/{chunk-SGXBKIPB.cjs.map → chunk-3NRUYIMU.cjs.map} +1 -1
  30. package/dist/{chunk-356JZOB2.js → chunk-3W4W6HXP.js} +3 -3
  31. package/dist/{chunk-356JZOB2.js.map → chunk-3W4W6HXP.js.map} +1 -1
  32. package/dist/{chunk-GFP7IMFR.cjs → chunk-4JAXFPYO.cjs} +5 -5
  33. package/dist/{chunk-GFP7IMFR.cjs.map → chunk-4JAXFPYO.cjs.map} +1 -1
  34. package/dist/{chunk-EFJIK2PW.js → chunk-4JVPQKUQ.js} +3 -3
  35. package/dist/{chunk-EFJIK2PW.js.map → chunk-4JVPQKUQ.js.map} +1 -1
  36. package/dist/{chunk-SXOMGGNC.cjs → chunk-4MWZ7C3A.cjs} +16 -16
  37. package/dist/{chunk-SXOMGGNC.cjs.map → chunk-4MWZ7C3A.cjs.map} +1 -1
  38. package/dist/{chunk-ONB3B57W.cjs → chunk-4OMQHNW6.cjs} +9 -9
  39. package/dist/{chunk-ONB3B57W.cjs.map → chunk-4OMQHNW6.cjs.map} +1 -1
  40. package/dist/{chunk-MPFUINWR.js → chunk-5HBR27TT.js} +4 -4
  41. package/dist/{chunk-MPFUINWR.js.map → chunk-5HBR27TT.js.map} +1 -1
  42. package/dist/{chunk-LXWMMOJ4.cjs → chunk-5HJA6HXT.cjs} +6 -6
  43. package/dist/{chunk-LXWMMOJ4.cjs.map → chunk-5HJA6HXT.cjs.map} +1 -1
  44. package/dist/{chunk-2YY3EMMS.js → chunk-6VTOGOS2.js} +7 -4
  45. package/dist/chunk-6VTOGOS2.js.map +1 -0
  46. package/dist/{chunk-J6TRVKBB.cjs → chunk-74UCXGOB.cjs} +28 -21
  47. package/dist/chunk-74UCXGOB.cjs.map +1 -0
  48. package/dist/{chunk-74M2DIPI.js → chunk-7UNBMINL.js} +3 -3
  49. package/dist/{chunk-74M2DIPI.js.map → chunk-7UNBMINL.js.map} +1 -1
  50. package/dist/{chunk-Q6FMYSXG.js → chunk-A6SVMM25.js} +15 -9
  51. package/dist/chunk-A6SVMM25.js.map +1 -0
  52. package/dist/{chunk-H32FN255.cjs → chunk-AEQ33POL.cjs} +9 -9
  53. package/dist/{chunk-H32FN255.cjs.map → chunk-AEQ33POL.cjs.map} +1 -1
  54. package/dist/{chunk-UO4HGWYR.js → chunk-AHA27LVT.js} +4 -4
  55. package/dist/{chunk-UO4HGWYR.js.map → chunk-AHA27LVT.js.map} +1 -1
  56. package/dist/{chunk-3F5MV2ED.js → chunk-ALGN4VJC.js} +4 -4
  57. package/dist/{chunk-3F5MV2ED.js.map → chunk-ALGN4VJC.js.map} +1 -1
  58. package/dist/{chunk-H6AH6GSN.cjs → chunk-BDFKQL7W.cjs} +3 -3
  59. package/dist/{chunk-H6AH6GSN.cjs.map → chunk-BDFKQL7W.cjs.map} +1 -1
  60. package/dist/{chunk-TS2WBQFI.cjs → chunk-BZQ4BGLS.cjs} +4 -4
  61. package/dist/{chunk-TS2WBQFI.cjs.map → chunk-BZQ4BGLS.cjs.map} +1 -1
  62. package/dist/{chunk-I2LG5WYB.js → chunk-BZUNERBP.js} +3 -3
  63. package/dist/{chunk-I2LG5WYB.js.map → chunk-BZUNERBP.js.map} +1 -1
  64. package/dist/{chunk-TXM2XTUT.cjs → chunk-C5V2PEPJ.cjs} +10 -10
  65. package/dist/{chunk-TXM2XTUT.cjs.map → chunk-C5V2PEPJ.cjs.map} +1 -1
  66. package/dist/{chunk-L6CMJI7S.cjs → chunk-CHJJRVKP.cjs} +8 -8
  67. package/dist/{chunk-L6CMJI7S.cjs.map → chunk-CHJJRVKP.cjs.map} +1 -1
  68. package/dist/{chunk-K6WBL3KZ.js → chunk-CPWPKQUC.js} +3 -3
  69. package/dist/{chunk-K6WBL3KZ.js.map → chunk-CPWPKQUC.js.map} +1 -1
  70. package/dist/{chunk-G7YHXDNQ.cjs → chunk-CQQAMFKH.cjs} +8 -8
  71. package/dist/{chunk-G7YHXDNQ.cjs.map → chunk-CQQAMFKH.cjs.map} +1 -1
  72. package/dist/{chunk-7NMKCTA4.js → chunk-CXXOGR3T.js} +5 -5
  73. package/dist/{chunk-7NMKCTA4.js.map → chunk-CXXOGR3T.js.map} +1 -1
  74. package/dist/{chunk-6QIJVEVN.js → chunk-DEEVXKJB.js} +3 -3
  75. package/dist/{chunk-6QIJVEVN.js.map → chunk-DEEVXKJB.js.map} +1 -1
  76. package/dist/{chunk-C6CCPCEC.cjs → chunk-DN6EUIM5.cjs} +5 -5
  77. package/dist/{chunk-C6CCPCEC.cjs.map → chunk-DN6EUIM5.cjs.map} +1 -1
  78. package/dist/{chunk-LZ32IIH2.cjs → chunk-ERHA2RJM.cjs} +7 -7
  79. package/dist/{chunk-LZ32IIH2.cjs.map → chunk-ERHA2RJM.cjs.map} +1 -1
  80. package/dist/{chunk-752PHFEK.js → chunk-F2QKFJRB.js} +3 -3
  81. package/dist/{chunk-752PHFEK.js.map → chunk-F2QKFJRB.js.map} +1 -1
  82. package/dist/{chunk-GLD2BPPG.js → chunk-F6ANJJFG.js} +4 -4
  83. package/dist/{chunk-GLD2BPPG.js.map → chunk-F6ANJJFG.js.map} +1 -1
  84. package/dist/{chunk-HVOQ7C45.js → chunk-F6LFHOOK.js} +75 -58
  85. package/dist/chunk-F6LFHOOK.js.map +1 -0
  86. package/dist/{chunk-UIRQU4GW.js → chunk-FBI32AWY.js} +3 -3
  87. package/dist/{chunk-UIRQU4GW.js.map → chunk-FBI32AWY.js.map} +1 -1
  88. package/dist/{chunk-3OQMTFIV.js → chunk-FXXHWBF2.js} +3 -3
  89. package/dist/{chunk-3OQMTFIV.js.map → chunk-FXXHWBF2.js.map} +1 -1
  90. package/dist/{chunk-BUFXUC67.js → chunk-G54EXH45.js} +3 -3
  91. package/dist/{chunk-BUFXUC67.js.map → chunk-G54EXH45.js.map} +1 -1
  92. package/dist/{chunk-TMGV2NRM.cjs → chunk-GBVJ57SE.cjs} +5 -5
  93. package/dist/{chunk-TMGV2NRM.cjs.map → chunk-GBVJ57SE.cjs.map} +1 -1
  94. package/dist/{chunk-4C5RVGHE.cjs → chunk-GKIWZDPL.cjs} +5 -5
  95. package/dist/{chunk-4C5RVGHE.cjs.map → chunk-GKIWZDPL.cjs.map} +1 -1
  96. package/dist/{chunk-VO64JFHK.js → chunk-GNYX4GCU.js} +4 -4
  97. package/dist/{chunk-VO64JFHK.js.map → chunk-GNYX4GCU.js.map} +1 -1
  98. package/dist/{chunk-TLBW3NWJ.cjs → chunk-HFJ6X4C6.cjs} +16 -16
  99. package/dist/{chunk-TLBW3NWJ.cjs.map → chunk-HFJ6X4C6.cjs.map} +1 -1
  100. package/dist/{chunk-IABGFWY2.cjs → chunk-HGAWQVT6.cjs} +5 -5
  101. package/dist/{chunk-IABGFWY2.cjs.map → chunk-HGAWQVT6.cjs.map} +1 -1
  102. package/dist/{chunk-EN3DVNH7.js → chunk-HJRP5ILZ.js} +3 -3
  103. package/dist/{chunk-EN3DVNH7.js.map → chunk-HJRP5ILZ.js.map} +1 -1
  104. package/dist/{chunk-E43WB5QM.js → chunk-IJ2EU3PK.js} +4 -4
  105. package/dist/{chunk-E43WB5QM.js.map → chunk-IJ2EU3PK.js.map} +1 -1
  106. package/dist/{chunk-U5TPAIT7.js → chunk-J3JR5LOU.js} +5 -5
  107. package/dist/{chunk-U5TPAIT7.js.map → chunk-J3JR5LOU.js.map} +1 -1
  108. package/dist/{chunk-KEE6UMGC.js → chunk-J62MSX2P.js} +3 -3
  109. package/dist/{chunk-KEE6UMGC.js.map → chunk-J62MSX2P.js.map} +1 -1
  110. package/dist/{chunk-ZIBI62YT.cjs → chunk-JCU4NJ5F.cjs} +78 -71
  111. package/dist/chunk-JCU4NJ5F.cjs.map +1 -0
  112. package/dist/{chunk-LEKVIHSE.js → chunk-JF6VE6ZA.js} +3 -3
  113. package/dist/{chunk-LEKVIHSE.js.map → chunk-JF6VE6ZA.js.map} +1 -1
  114. package/dist/{chunk-HEVO2CJX.js → chunk-KAYWPQHZ.js} +5 -5
  115. package/dist/{chunk-HEVO2CJX.js.map → chunk-KAYWPQHZ.js.map} +1 -1
  116. package/dist/{chunk-NI2DJ2VW.cjs → chunk-KK6BI6UL.cjs} +4 -4
  117. package/dist/{chunk-NI2DJ2VW.cjs.map → chunk-KK6BI6UL.cjs.map} +1 -1
  118. package/dist/{chunk-BTAQZX22.cjs → chunk-KPHHXRNR.cjs} +19 -19
  119. package/dist/{chunk-BTAQZX22.cjs.map → chunk-KPHHXRNR.cjs.map} +1 -1
  120. package/dist/{chunk-PTPMBE6M.cjs → chunk-L44I4QOQ.cjs} +19 -15
  121. package/dist/chunk-L44I4QOQ.cjs.map +1 -0
  122. package/dist/{chunk-FMXQN3T3.js → chunk-L5MFX2QW.js} +82 -63
  123. package/dist/chunk-L5MFX2QW.js.map +1 -0
  124. package/dist/{chunk-YFY6IWPM.js → chunk-LARE7IBU.js} +57 -26
  125. package/dist/chunk-LARE7IBU.js.map +1 -0
  126. package/dist/{chunk-WSHY63WR.js → chunk-LBSRLKFT.js} +11 -11
  127. package/dist/{chunk-WSHY63WR.js.map → chunk-LBSRLKFT.js.map} +1 -1
  128. package/dist/{chunk-XNL6KN4F.cjs → chunk-LE7HJWLH.cjs} +20 -20
  129. package/dist/{chunk-XNL6KN4F.cjs.map → chunk-LE7HJWLH.cjs.map} +1 -1
  130. package/dist/{chunk-W4XN6DDQ.cjs → chunk-LLUMUEF6.cjs} +20 -20
  131. package/dist/{chunk-W4XN6DDQ.cjs.map → chunk-LLUMUEF6.cjs.map} +1 -1
  132. package/dist/{chunk-K4HCNNHA.js → chunk-LVPM3N53.js} +13 -9
  133. package/dist/chunk-LVPM3N53.js.map +1 -0
  134. package/dist/{chunk-MG3WOQQQ.js → chunk-MCGO43FL.js} +6 -6
  135. package/dist/{chunk-MG3WOQQQ.js.map → chunk-MCGO43FL.js.map} +1 -1
  136. package/dist/{chunk-RVICRXZF.js → chunk-MTIYMK4E.js} +5 -5
  137. package/dist/{chunk-RVICRXZF.js.map → chunk-MTIYMK4E.js.map} +1 -1
  138. package/dist/{chunk-EJFYAD2W.cjs → chunk-N4GD4MOQ.cjs} +16 -16
  139. package/dist/{chunk-EJFYAD2W.cjs.map → chunk-N4GD4MOQ.cjs.map} +1 -1
  140. package/dist/{chunk-ONEOOPSN.js → chunk-N4S2JBFQ.js} +3 -3
  141. package/dist/{chunk-ONEOOPSN.js.map → chunk-N4S2JBFQ.js.map} +1 -1
  142. package/dist/{chunk-W36PYFFL.cjs → chunk-NIMP2XEL.cjs} +7 -7
  143. package/dist/{chunk-W36PYFFL.cjs.map → chunk-NIMP2XEL.cjs.map} +1 -1
  144. package/dist/{chunk-FGKZYVVB.cjs → chunk-NJ7SUHPS.cjs} +80 -63
  145. package/dist/chunk-NJ7SUHPS.cjs.map +1 -0
  146. package/dist/{chunk-SU4ZAHUZ.js → chunk-NNJ4T7KY.js} +3 -3
  147. package/dist/{chunk-SU4ZAHUZ.js.map → chunk-NNJ4T7KY.js.map} +1 -1
  148. package/dist/{chunk-2R5GLZJD.js → chunk-O2PSL6W6.js} +5 -5
  149. package/dist/{chunk-2R5GLZJD.js.map → chunk-O2PSL6W6.js.map} +1 -1
  150. package/dist/{chunk-HYTCHAEG.cjs → chunk-O4H32NTL.cjs} +12 -12
  151. package/dist/{chunk-HYTCHAEG.cjs.map → chunk-O4H32NTL.cjs.map} +1 -1
  152. package/dist/{chunk-7EEV6KBG.cjs → chunk-OEN2YIF2.cjs} +8 -8
  153. package/dist/{chunk-7EEV6KBG.cjs.map → chunk-OEN2YIF2.cjs.map} +1 -1
  154. package/dist/{chunk-TPB44HAO.cjs → chunk-OKYPWVCW.cjs} +20 -20
  155. package/dist/{chunk-TPB44HAO.cjs.map → chunk-OKYPWVCW.cjs.map} +1 -1
  156. package/dist/{chunk-7HYHJDQE.cjs → chunk-OSGB52U5.cjs} +13 -13
  157. package/dist/{chunk-7HYHJDQE.cjs.map → chunk-OSGB52U5.cjs.map} +1 -1
  158. package/dist/{chunk-T3C54LPX.cjs → chunk-P2X2Q6N6.cjs} +5 -5
  159. package/dist/{chunk-T3C54LPX.cjs.map → chunk-P2X2Q6N6.cjs.map} +1 -1
  160. package/dist/{chunk-BH354CYO.js → chunk-PBWRO6XO.js} +3 -3
  161. package/dist/{chunk-BH354CYO.js.map → chunk-PBWRO6XO.js.map} +1 -1
  162. package/dist/{chunk-4UI3O245.js → chunk-PNU7UJQB.js} +5 -5
  163. package/dist/{chunk-4UI3O245.js.map → chunk-PNU7UJQB.js.map} +1 -1
  164. package/dist/{chunk-2S4SNS5D.cjs → chunk-PU2IZSQV.cjs} +21 -21
  165. package/dist/{chunk-2S4SNS5D.cjs.map → chunk-PU2IZSQV.cjs.map} +1 -1
  166. package/dist/{chunk-HGZMS5RV.cjs → chunk-Q2N32LXT.cjs} +89 -89
  167. package/dist/{chunk-HGZMS5RV.cjs.map → chunk-Q2N32LXT.cjs.map} +1 -1
  168. package/dist/{chunk-HJIYHQK4.js → chunk-QJ4AEKQ3.js} +6 -6
  169. package/dist/{chunk-HJIYHQK4.js.map → chunk-QJ4AEKQ3.js.map} +1 -1
  170. package/dist/{chunk-MXZPGEC2.js → chunk-QJ4B3W64.js} +3 -3
  171. package/dist/{chunk-MXZPGEC2.js.map → chunk-QJ4B3W64.js.map} +1 -1
  172. package/dist/{chunk-ULEOWI5Q.cjs → chunk-QJCV2DRC.cjs} +20 -20
  173. package/dist/{chunk-ULEOWI5Q.cjs.map → chunk-QJCV2DRC.cjs.map} +1 -1
  174. package/dist/{chunk-P6RMY3SH.js → chunk-QOOCPWRR.js} +8 -8
  175. package/dist/{chunk-P6RMY3SH.js.map → chunk-QOOCPWRR.js.map} +1 -1
  176. package/dist/{chunk-DCEYGLZS.js → chunk-R33IQYQI.js} +4 -4
  177. package/dist/{chunk-DCEYGLZS.js.map → chunk-R33IQYQI.js.map} +1 -1
  178. package/dist/{chunk-7PXSB34V.js → chunk-R7GFY2MC.js} +13 -6
  179. package/dist/chunk-R7GFY2MC.js.map +1 -0
  180. package/dist/{chunk-YH4H2AJO.cjs → chunk-RF5JHOPM.cjs} +14 -14
  181. package/dist/{chunk-YH4H2AJO.cjs.map → chunk-RF5JHOPM.cjs.map} +1 -1
  182. package/dist/{chunk-ACEAX7PT.cjs → chunk-RFKHUSBX.cjs} +81 -80
  183. package/dist/chunk-RFKHUSBX.cjs.map +1 -0
  184. package/dist/{chunk-LNZ5W4VQ.js → chunk-S6RIWSNQ.js} +4 -4
  185. package/dist/{chunk-LNZ5W4VQ.js.map → chunk-S6RIWSNQ.js.map} +1 -1
  186. package/dist/{chunk-H5ZXWLOQ.cjs → chunk-SDIJUD3E.cjs} +19 -19
  187. package/dist/{chunk-H5ZXWLOQ.cjs.map → chunk-SDIJUD3E.cjs.map} +1 -1
  188. package/dist/{chunk-L52HD6P4.js → chunk-SERMMJ5D.js} +3 -3
  189. package/dist/{chunk-L52HD6P4.js.map → chunk-SERMMJ5D.js.map} +1 -1
  190. package/dist/chunk-SLBYGLRJ.cjs +744 -0
  191. package/dist/{chunk-QEMLXLXV.cjs.map → chunk-SLBYGLRJ.cjs.map} +1 -1
  192. package/dist/{chunk-DHAHH4TH.js → chunk-SOARWC3S.js} +2 -2
  193. package/dist/{chunk-DHAHH4TH.js.map → chunk-SOARWC3S.js.map} +1 -1
  194. package/dist/{chunk-QDVO3DAW.js → chunk-T26RGYB4.js} +3 -3
  195. package/dist/{chunk-QDVO3DAW.js.map → chunk-T26RGYB4.js.map} +1 -1
  196. package/dist/{chunk-APMXFPSU.cjs → chunk-T3UJXNVA.cjs} +23 -23
  197. package/dist/{chunk-APMXFPSU.cjs.map → chunk-T3UJXNVA.cjs.map} +1 -1
  198. package/dist/{chunk-3BLT6ISZ.js → chunk-TQARCQ7L.js} +3 -3
  199. package/dist/{chunk-3BLT6ISZ.js.map → chunk-TQARCQ7L.js.map} +1 -1
  200. package/dist/{chunk-5535L5CG.js → chunk-U4TKHVVI.js} +4 -4
  201. package/dist/{chunk-5535L5CG.js.map → chunk-U4TKHVVI.js.map} +1 -1
  202. package/dist/{chunk-XSP2SAMP.cjs → chunk-USCPSOLB.cjs} +133 -122
  203. package/dist/chunk-USCPSOLB.cjs.map +1 -0
  204. package/dist/{chunk-VDWXQIZO.cjs → chunk-UTZ4O2RM.cjs} +4 -4
  205. package/dist/{chunk-VDWXQIZO.cjs.map → chunk-UTZ4O2RM.cjs.map} +1 -1
  206. package/dist/{chunk-RKUFUE6P.js → chunk-UXF6QR6K.js} +4 -4
  207. package/dist/{chunk-RKUFUE6P.js.map → chunk-UXF6QR6K.js.map} +1 -1
  208. package/dist/{chunk-OVXNC7WH.cjs → chunk-VHYXKNSW.cjs} +57 -26
  209. package/dist/chunk-VHYXKNSW.cjs.map +1 -0
  210. package/dist/{chunk-3VVKGBOR.cjs → chunk-VMOKBW2F.cjs} +13 -13
  211. package/dist/{chunk-3VVKGBOR.cjs.map → chunk-VMOKBW2F.cjs.map} +1 -1
  212. package/dist/{chunk-32W4T4GH.js → chunk-VP6TKWL5.js} +10 -9
  213. package/dist/chunk-VP6TKWL5.js.map +1 -0
  214. package/dist/{chunk-OGHCGR5P.js → chunk-VTD4AE3B.js} +4 -4
  215. package/dist/{chunk-OGHCGR5P.js.map → chunk-VTD4AE3B.js.map} +1 -1
  216. package/dist/{chunk-X2LTS2LF.cjs → chunk-WA3XNAEH.cjs} +27 -27
  217. package/dist/{chunk-X2LTS2LF.cjs.map → chunk-WA3XNAEH.cjs.map} +1 -1
  218. package/dist/{chunk-QQF22Q32.cjs → chunk-WBW5BNAI.cjs} +22 -16
  219. package/dist/chunk-WBW5BNAI.cjs.map +1 -0
  220. package/dist/{chunk-E4ANVQ27.cjs → chunk-WD7VYH3W.cjs} +82 -63
  221. package/dist/chunk-WD7VYH3W.cjs.map +1 -0
  222. package/dist/{chunk-CXAJPAJ2.cjs → chunk-WE6BWC6H.cjs} +3 -3
  223. package/dist/{chunk-CXAJPAJ2.cjs.map → chunk-WE6BWC6H.cjs.map} +1 -1
  224. package/dist/{chunk-S6TNTR3A.cjs → chunk-WFCNC4DB.cjs} +7 -7
  225. package/dist/{chunk-S6TNTR3A.cjs.map → chunk-WFCNC4DB.cjs.map} +1 -1
  226. package/dist/{chunk-SB4CG73V.js → chunk-WHIHVWH4.js} +3 -3
  227. package/dist/{chunk-SB4CG73V.js.map → chunk-WHIHVWH4.js.map} +1 -1
  228. package/dist/{chunk-X54LX6DV.cjs → chunk-WI5TN7LF.cjs} +76 -76
  229. package/dist/{chunk-X54LX6DV.cjs.map → chunk-WI5TN7LF.cjs.map} +1 -1
  230. package/dist/{chunk-52LEKN7E.cjs → chunk-WPRN2QB2.cjs} +9 -9
  231. package/dist/{chunk-52LEKN7E.cjs.map → chunk-WPRN2QB2.cjs.map} +1 -1
  232. package/dist/{chunk-WXHED7VE.cjs → chunk-WQOGCQAO.cjs} +35 -35
  233. package/dist/{chunk-WXHED7VE.cjs.map → chunk-WQOGCQAO.cjs.map} +1 -1
  234. package/dist/{chunk-NNKRBMNJ.js → chunk-WSVV5VAC.js} +27 -16
  235. package/dist/chunk-WSVV5VAC.js.map +1 -0
  236. package/dist/{chunk-DE6AEVSX.js → chunk-XDFOJW6U.js} +4 -4
  237. package/dist/{chunk-DE6AEVSX.js.map → chunk-XDFOJW6U.js.map} +1 -1
  238. package/dist/{chunk-SYZ2NTP3.cjs → chunk-XLGXOZYB.cjs} +2 -2
  239. package/dist/{chunk-SYZ2NTP3.cjs.map → chunk-XLGXOZYB.cjs.map} +1 -1
  240. package/dist/{chunk-5VSA3DY7.js → chunk-XRRFYMND.js} +34 -34
  241. package/dist/{chunk-5VSA3DY7.js.map → chunk-XRRFYMND.js.map} +1 -1
  242. package/dist/{chunk-WIOYCLJC.cjs → chunk-XWC3RWOE.cjs} +5 -5
  243. package/dist/{chunk-WIOYCLJC.cjs.map → chunk-XWC3RWOE.cjs.map} +1 -1
  244. package/dist/{chunk-QJHZIGQG.js → chunk-XWPRNCUY.js} +11 -4
  245. package/dist/chunk-XWPRNCUY.js.map +1 -0
  246. package/dist/{chunk-GSCS6TAQ.cjs → chunk-YJDCZWCB.cjs} +4 -4
  247. package/dist/{chunk-GSCS6TAQ.cjs.map → chunk-YJDCZWCB.cjs.map} +1 -1
  248. package/dist/{chunk-JGEOOOSP.js → chunk-YPSJBKM7.js} +3 -3
  249. package/dist/{chunk-JGEOOOSP.js.map → chunk-YPSJBKM7.js.map} +1 -1
  250. package/dist/{chunk-3LFW3DVC.js → chunk-YT7X7RBF.js} +4 -4
  251. package/dist/{chunk-3LFW3DVC.js.map → chunk-YT7X7RBF.js.map} +1 -1
  252. package/dist/{chunk-64QFFUEH.js → chunk-YTLTMMB7.js} +3 -3
  253. package/dist/{chunk-64QFFUEH.js.map → chunk-YTLTMMB7.js.map} +1 -1
  254. package/dist/{chunk-6SZGOLAP.js → chunk-ZIE4HRC6.js} +3 -3
  255. package/dist/{chunk-6SZGOLAP.js.map → chunk-ZIE4HRC6.js.map} +1 -1
  256. package/dist/{chunk-67PDCQAC.cjs → chunk-ZWOZMVO5.cjs} +4 -4
  257. package/dist/{chunk-67PDCQAC.cjs.map → chunk-ZWOZMVO5.cjs.map} +1 -1
  258. package/dist/{dist-JZJF3WBI.cjs → dist-2ULT63IU.cjs} +29 -10
  259. package/dist/dist-2ULT63IU.cjs.map +1 -0
  260. package/dist/{dist-Q4R5SHIK.js → dist-NIJRMKC2.js} +28 -9
  261. package/dist/dist-NIJRMKC2.js.map +1 -0
  262. package/dist/docs/SKILL.md +1 -1
  263. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  264. package/dist/{observational-memory-R5X35UYR-OXE6AKYW.cjs → observational-memory-ZYY4KPCN-KSYK7OX2.cjs} +29 -29
  265. package/dist/{observational-memory-R5X35UYR-OXE6AKYW.cjs.map → observational-memory-ZYY4KPCN-KSYK7OX2.cjs.map} +1 -1
  266. package/dist/{observational-memory-R5X35UYR-3YYQEHXK.js → observational-memory-ZYY4KPCN-VDYMNQJR.js} +3 -3
  267. package/dist/{observational-memory-R5X35UYR-3YYQEHXK.js.map → observational-memory-ZYY4KPCN-VDYMNQJR.js.map} +1 -1
  268. package/dist/server/auth/helpers.d.ts.map +1 -1
  269. package/dist/server/auth/index.cjs +15 -15
  270. package/dist/server/auth/index.js +1 -1
  271. package/dist/server/handlers/a2a.cjs +14 -14
  272. package/dist/server/handlers/a2a.js +1 -1
  273. package/dist/server/handlers/agent-builder.cjs +17 -17
  274. package/dist/server/handlers/agent-builder.d.ts +20 -20
  275. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  276. package/dist/server/handlers/agent-builder.js +1 -1
  277. package/dist/server/handlers/agent-controller.cjs +35 -35
  278. package/dist/server/handlers/agent-controller.d.ts +16 -16
  279. package/dist/server/handlers/agent-controller.d.ts.map +1 -1
  280. package/dist/server/handlers/agent-controller.js +1 -1
  281. package/dist/server/handlers/agent-versions.cjs +8 -8
  282. package/dist/server/handlers/agent-versions.js +1 -1
  283. package/dist/server/handlers/agents.cjs +48 -48
  284. package/dist/server/handlers/agents.d.ts +2830 -1060
  285. package/dist/server/handlers/agents.d.ts.map +1 -1
  286. package/dist/server/handlers/agents.js +1 -1
  287. package/dist/server/handlers/auth.cjs +13 -13
  288. package/dist/server/handlers/auth.js +1 -1
  289. package/dist/server/handlers/background-tasks.cjs +4 -4
  290. package/dist/server/handlers/background-tasks.d.ts +2 -2
  291. package/dist/server/handlers/background-tasks.d.ts.map +1 -1
  292. package/dist/server/handlers/background-tasks.js +1 -1
  293. package/dist/server/handlers/conversations.cjs +5 -5
  294. package/dist/server/handlers/conversations.js +1 -1
  295. package/dist/server/handlers/datasets.cjs +26 -26
  296. package/dist/server/handlers/datasets.d.ts +78 -78
  297. package/dist/server/handlers/datasets.d.ts.map +1 -1
  298. package/dist/server/handlers/datasets.js +1 -1
  299. package/dist/server/handlers/editor-builder.cjs +6 -6
  300. package/dist/server/handlers/editor-builder.js +1 -1
  301. package/dist/server/handlers/favorites-enrichment.cjs +4 -4
  302. package/dist/server/handlers/favorites-enrichment.js +1 -1
  303. package/dist/server/handlers/logs.cjs +4 -4
  304. package/dist/server/handlers/logs.d.ts +12 -12
  305. package/dist/server/handlers/logs.js +1 -1
  306. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  307. package/dist/server/handlers/mcp-client-versions.js +1 -1
  308. package/dist/server/handlers/mcp.cjs +11 -11
  309. package/dist/server/handlers/mcp.js +1 -1
  310. package/dist/server/handlers/memory.cjs +27 -27
  311. package/dist/server/handlers/memory.d.ts +49 -30
  312. package/dist/server/handlers/memory.d.ts.map +1 -1
  313. package/dist/server/handlers/memory.js +1 -1
  314. package/dist/server/handlers/observability-new-endpoints.d.ts +2 -2
  315. package/dist/server/handlers/processors.cjs +4 -4
  316. package/dist/server/handlers/processors.d.ts +10 -10
  317. package/dist/server/handlers/processors.js +1 -1
  318. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  319. package/dist/server/handlers/prompt-block-versions.js +1 -1
  320. package/dist/server/handlers/responses.cjs +4 -4
  321. package/dist/server/handlers/responses.js +1 -1
  322. package/dist/server/handlers/scorer-versions.cjs +8 -8
  323. package/dist/server/handlers/scorer-versions.js +1 -1
  324. package/dist/server/handlers/scores.cjs +7 -7
  325. package/dist/server/handlers/scores.js +1 -1
  326. package/dist/server/handlers/stored-agent-favorites.cjs +3 -3
  327. package/dist/server/handlers/stored-agent-favorites.js +1 -1
  328. package/dist/server/handlers/stored-agents.cjs +10 -10
  329. package/dist/server/handlers/stored-agents.js +1 -1
  330. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  331. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  332. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  333. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  334. package/dist/server/handlers/stored-scorers.cjs +6 -6
  335. package/dist/server/handlers/stored-scorers.js +1 -1
  336. package/dist/server/handlers/stored-skill-favorites.cjs +3 -3
  337. package/dist/server/handlers/stored-skill-favorites.js +1 -1
  338. package/dist/server/handlers/stored-skills.cjs +7 -7
  339. package/dist/server/handlers/stored-skills.js +1 -1
  340. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  341. package/dist/server/handlers/stored-workspaces.js +1 -1
  342. package/dist/server/handlers/system.cjs +3 -3
  343. package/dist/server/handlers/system.js +1 -1
  344. package/dist/server/handlers/tools.cjs +6 -6
  345. package/dist/server/handlers/tools.d.ts +8 -8
  346. package/dist/server/handlers/tools.d.ts.map +1 -1
  347. package/dist/server/handlers/tools.js +1 -1
  348. package/dist/server/handlers/vector.cjs +16 -16
  349. package/dist/server/handlers/vector.d.ts +4 -4
  350. package/dist/server/handlers/vector.d.ts.map +1 -1
  351. package/dist/server/handlers/vector.js +1 -1
  352. package/dist/server/handlers/voice.cjs +8 -8
  353. package/dist/server/handlers/voice.js +1 -1
  354. package/dist/server/handlers/workflows.cjs +27 -27
  355. package/dist/server/handlers/workflows.d.ts +46 -46
  356. package/dist/server/handlers/workflows.d.ts.map +1 -1
  357. package/dist/server/handlers/workflows.js +1 -1
  358. package/dist/server/handlers.cjs +26 -26
  359. package/dist/server/handlers.js +13 -13
  360. package/dist/server/schemas/a2a.d.ts +1 -1
  361. package/dist/server/schemas/agents.d.ts +217 -284
  362. package/dist/server/schemas/agents.d.ts.map +1 -1
  363. package/dist/server/schemas/background-tasks.d.ts +1 -1
  364. package/dist/server/schemas/background-tasks.d.ts.map +1 -1
  365. package/dist/server/schemas/common.d.ts +18 -2
  366. package/dist/server/schemas/common.d.ts.map +1 -1
  367. package/dist/server/schemas/datasets.d.ts +39 -39
  368. package/dist/server/schemas/index.cjs +419 -415
  369. package/dist/server/schemas/index.js +26 -26
  370. package/dist/server/schemas/logs.d.ts +3 -3
  371. package/dist/server/schemas/memory.d.ts +23 -11
  372. package/dist/server/schemas/memory.d.ts.map +1 -1
  373. package/dist/server/schemas/processors.d.ts +5 -5
  374. package/dist/server/schemas/vectors.d.ts +2 -2
  375. package/dist/server/schemas/workflows.d.ts +7 -6
  376. package/dist/server/schemas/workflows.d.ts.map +1 -1
  377. package/dist/server/server-adapter/index.cjs +18 -18
  378. package/dist/server/server-adapter/index.cjs.map +1 -1
  379. package/dist/server/server-adapter/index.d.ts +2 -1
  380. package/dist/server/server-adapter/index.d.ts.map +1 -1
  381. package/dist/server/server-adapter/index.js +6 -6
  382. package/dist/server/server-adapter/index.js.map +1 -1
  383. package/dist/server/server-adapter/routes/agent-builder.d.ts +20 -20
  384. package/dist/server/server-adapter/routes/datasets.d.ts +78 -78
  385. package/dist/server/server-adapter/routes/legacy.d.ts +376 -140
  386. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -1
  387. package/dist/server/server-adapter/routes/logs.d.ts +12 -12
  388. package/dist/server/server-adapter/routes/memory.d.ts +49 -30
  389. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -1
  390. package/dist/server/server-adapter/routes/observability.d.ts +1 -1
  391. package/dist/server/server-adapter/routes/processors.d.ts +10 -10
  392. package/dist/server/server-adapter/routes/tools.d.ts +4 -4
  393. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -1
  394. package/dist/server/server-adapter/routes/vectors.d.ts +4 -4
  395. package/dist/server/server-adapter/routes/workflows.d.ts +42 -42
  396. package/package.json +6 -6
  397. package/dist/chunk-2YY3EMMS.js.map +0 -1
  398. package/dist/chunk-32W4T4GH.js.map +0 -1
  399. package/dist/chunk-7PXSB34V.js.map +0 -1
  400. package/dist/chunk-ACEAX7PT.cjs.map +0 -1
  401. package/dist/chunk-DIG2K5CV.cjs.map +0 -1
  402. package/dist/chunk-E4ANVQ27.cjs.map +0 -1
  403. package/dist/chunk-FGKZYVVB.cjs.map +0 -1
  404. package/dist/chunk-FMXQN3T3.js.map +0 -1
  405. package/dist/chunk-HVOQ7C45.js.map +0 -1
  406. package/dist/chunk-J6TRVKBB.cjs.map +0 -1
  407. package/dist/chunk-K4HCNNHA.js.map +0 -1
  408. package/dist/chunk-NNKRBMNJ.js.map +0 -1
  409. package/dist/chunk-OVXNC7WH.cjs.map +0 -1
  410. package/dist/chunk-PTPMBE6M.cjs.map +0 -1
  411. package/dist/chunk-Q6FMYSXG.js.map +0 -1
  412. package/dist/chunk-QEMLXLXV.cjs +0 -744
  413. package/dist/chunk-QJHZIGQG.js.map +0 -1
  414. package/dist/chunk-QQF22Q32.cjs.map +0 -1
  415. package/dist/chunk-XSP2SAMP.cjs.map +0 -1
  416. package/dist/chunk-YFY6IWPM.js.map +0 -1
  417. package/dist/chunk-ZIBI62YT.cjs.map +0 -1
  418. package/dist/dist-JZJF3WBI.cjs.map +0 -1
  419. package/dist/dist-Q4R5SHIK.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/schemas/stored-skills.ts"],"names":["z","createPagePaginationSchema","paginationInfoSchema"],"mappings":"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","file":"chunk-T3C54LPX.cjs","sourcesContent":["import { z } from 'zod/v4';\n\nimport { paginationInfoSchema, createPagePaginationSchema } from './common';\n\n// ============================================================================\n// Path Parameter Schemas\n// ============================================================================\n\nexport const storedSkillIdPathParams = z.object({\n storedSkillId: z.string().describe('Unique identifier for the stored skill'),\n});\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\nconst storageOrderBySchema = z.object({\n field: z.enum(['createdAt', 'updatedAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n});\n\nexport const listStoredSkillsQuerySchema = createPagePaginationSchema(100).extend({\n orderBy: storageOrderBySchema.optional(),\n status: z.enum(['draft', 'published', 'archived']).optional().describe('Filter skills by status'),\n authorId: z.string().optional().describe('Filter skills by author identifier'),\n visibility: z.enum(['public']).optional().describe('Filter to only public skills'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Filter skills by metadata key-value pairs'),\n favoritedOnly: z\n .stringbool()\n .optional()\n .describe('When true, return only skills favorited by the caller (requires the `favorites` EE feature)'),\n pinFavoritedFor: z\n .string()\n .optional()\n .describe(\n 'When set, treat the given subject (user/role) as the favoriting principal for `favoritedOnly` instead of the caller',\n ),\n});\n\n// ============================================================================\n// Body Parameter Schemas\n// ============================================================================\n\nconst sourceSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('external'),\n packagePath: z.string().describe('Package path for external source'),\n }),\n z.object({\n type: z.literal('local'),\n projectPath: z.string().describe('Project path for local source'),\n }),\n z.object({\n type: z.literal('managed'),\n mastraPath: z.string().describe('Mastra path for managed source'),\n }),\n]);\n\nexport interface FileNode {\n id?: string;\n name: string;\n type: 'file' | 'folder';\n content?: string;\n children?: FileNode[];\n}\n\nconst fileNodeSchema: z.ZodType<FileNode> = z.object({\n id: z.string().optional(),\n name: z.string(),\n type: z.enum(['file', 'folder']),\n content: z.string().optional(),\n children: z.lazy(() => z.array(fileNodeSchema)).optional(),\n});\n\n// ============================================================================\n// Origin Schema (metadata.origin)\n// ============================================================================\n\n/**\n * Identifies where a stored skill came from.\n * Persisted as `metadata.origin` on the stored skill so that registry-installed\n * skills can be distinguished from skills authored directly in the Builder.\n */\nexport const skillOriginSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('skills-sh'),\n owner: z.string().describe('Repository owner on skills.sh'),\n repo: z.string().describe('Repository name on skills.sh'),\n skillName: z.string().describe('Original skill name on skills.sh'),\n installedAt: z.string().describe('ISO-8601 timestamp of the install'),\n }),\n z.object({\n type: z.literal('library-copy'),\n sourceSkillId: z.string().describe('ID of the public Library skill this was copied from'),\n sourceSkillName: z.string().describe('Name of the source skill at copy time'),\n sourceAuthorId: z.string().optional().describe('Author of the source skill at copy time, when known'),\n copiedAt: z.string().describe('ISO-8601 timestamp of the copy'),\n }),\n]);\n\nexport type SkillOrigin = z.infer<typeof skillOriginSchema>;\n\n/** Metadata key under which origin information is persisted on a stored skill. */\nexport const SKILL_ORIGIN_METADATA_KEY = 'origin';\n\n/**\n * Read a typed origin off a stored skill's metadata blob, if present and valid.\n * Returns null when the skill has no origin (i.e., authored directly in the Builder).\n */\nexport function readSkillOrigin(metadata: Record<string, unknown> | undefined): SkillOrigin | null {\n if (!metadata) return null;\n const raw = metadata[SKILL_ORIGIN_METADATA_KEY];\n if (!raw) return null;\n const parsed = skillOriginSchema.safeParse(raw);\n return parsed.success ? parsed.data : null;\n}\n\n/** Build a metadata patch for an origin, suitable for spreading into the create body. */\nexport function buildOriginMetadata(origin: SkillOrigin): Record<string, unknown> {\n return { [SKILL_ORIGIN_METADATA_KEY]: origin };\n}\n\nconst snapshotConfigSchema = z.object({\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n files: z.array(fileNodeSchema).optional().describe('Full file tree structure for the skill'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const createStoredSkillBodySchema = z\n .object({\n id: z.string().optional().describe('Unique identifier. If not provided, derived from name.'),\n authorId: z.string().optional().describe('Author identifier for multi-tenant filtering'),\n visibility: z\n .enum(['private', 'public'])\n .optional()\n .describe('Skill visibility: private (owner/admin only) or public (any reader)'),\n })\n .merge(snapshotConfigSchema);\n\nexport const updateStoredSkillBodySchema = z\n .object({\n authorId: z.string().optional(),\n visibility: z\n .enum(['private', 'public'])\n .optional()\n .describe('Skill visibility: private (owner/admin only) or public (any reader)'),\n })\n .partial()\n .merge(snapshotConfigSchema.partial());\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\nexport const storedSkillSchema = z.object({\n id: z.string(),\n status: z.string().describe('Skill status: draft, published, or archived'),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n visibility: z.enum(['private', 'public']).optional(),\n favoriteCount: z.number().int().nonnegative().optional().describe('Number of users who have favorited this skill'),\n isFavorited: z.boolean().optional().describe('Whether the requesting user has favorited this skill'),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n files: z.array(fileNodeSchema).optional().describe('Full file tree structure for the skill'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const listStoredSkillsResponseSchema = paginationInfoSchema.extend({\n skills: z.array(storedSkillSchema),\n});\n\nexport const getStoredSkillResponseSchema = storedSkillSchema;\nexport const createStoredSkillResponseSchema = storedSkillSchema;\n\nexport const updateStoredSkillResponseSchema = z.union([\n z.object({\n id: z.string(),\n status: z.string(),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n visibility: z.enum(['private', 'public']).optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n }),\n storedSkillSchema,\n]);\n\nexport const deleteStoredSkillResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n});\n\n// ============================================================================\n// Publish / Rollback Schemas\n// ============================================================================\n\nexport const publishStoredSkillBodySchema = z.object({\n skillPath: z.string().describe('Path to the skill directory on the server filesystem (containing SKILL.md)'),\n});\n\nexport const publishStoredSkillResponseSchema = storedSkillSchema;\n"]}
1
+ {"version":3,"sources":["../src/server/schemas/stored-skills.ts"],"names":["z","createPagePaginationSchema","paginationInfoSchema"],"mappings":";;;;;AAQO,IAAM,uBAAA,GAA0BA,KAAE,MAAA,CAAO;AAAA,EAC9C,aAAA,EAAeA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,wCAAwC;AAC7E,CAAC;AAMD,IAAM,oBAAA,GAAuBA,KAAE,MAAA,CAAO;AAAA,EACpC,KAAA,EAAOA,KAAE,IAAA,CAAK,CAAC,aAAa,WAAW,CAAC,EAAE,QAAA,EAAS;AAAA,EACnD,SAAA,EAAWA,KAAE,IAAA,CAAK,CAAC,OAAO,MAAM,CAAC,EAAE,QAAA;AACrC,CAAC,CAAA;AAEM,IAAM,2BAAA,GAA8BC,4CAAA,CAA2B,GAAG,CAAA,CAAE,MAAA,CAAO;AAAA,EAChF,OAAA,EAAS,qBAAqB,QAAA,EAAS;AAAA,EACvC,MAAA,EAAQD,IAAA,CAAE,IAAA,CAAK,CAAC,OAAA,EAAS,WAAA,EAAa,UAAU,CAAC,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,yBAAyB,CAAA;AAAA,EAChG,UAAUA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,oCAAoC,CAAA;AAAA,EAC7E,UAAA,EAAYA,IAAA,CAAE,IAAA,CAAK,CAAC,QAAQ,CAAC,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,8BAA8B,CAAA;AAAA,EACjF,QAAA,EAAUA,IAAA,CAAE,MAAA,CAAOA,IAAA,CAAE,MAAA,EAAO,EAAGA,IAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA,EAAS,CAAE,SAAS,2CAA2C,CAAA;AAAA,EAC3G,eAAeA,IAAA,CACZ,UAAA,GACA,QAAA,EAAS,CACT,SAAS,6FAA6F,CAAA;AAAA,EACzG,eAAA,EAAiBA,IAAA,CACd,MAAA,EAAO,CACP,UAAS,CACT,QAAA;AAAA,IACC;AAAA;AAEN,CAAC;AAMD,IAAM,YAAA,GAAeA,IAAA,CAAE,kBAAA,CAAmB,MAAA,EAAQ;AAAA,EAChDA,KAAE,MAAA,CAAO;AAAA,IACP,IAAA,EAAMA,IAAA,CAAE,OAAA,CAAQ,UAAU,CAAA;AAAA,IAC1B,WAAA,EAAaA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,kCAAkC;AAAA,GACpE,CAAA;AAAA,EACDA,KAAE,MAAA,CAAO;AAAA,IACP,IAAA,EAAMA,IAAA,CAAE,OAAA,CAAQ,OAAO,CAAA;AAAA,IACvB,WAAA,EAAaA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+BAA+B;AAAA,GACjE,CAAA;AAAA,EACDA,KAAE,MAAA,CAAO;AAAA,IACP,IAAA,EAAMA,IAAA,CAAE,OAAA,CAAQ,SAAS,CAAA;AAAA,IACzB,UAAA,EAAYA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,gCAAgC;AAAA,GACjE;AACH,CAAC,CAAA;AAUD,IAAM,cAAA,GAAsCA,KAAE,MAAA,CAAO;AAAA,EACnD,EAAA,EAAIA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACxB,IAAA,EAAMA,KAAE,MAAA,EAAO;AAAA,EACf,MAAMA,IAAA,CAAE,IAAA,CAAK,CAAC,MAAA,EAAQ,QAAQ,CAAC,CAAA;AAAA,EAC/B,OAAA,EAASA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,QAAA,EAAUA,KAAE,IAAA,CAAK,MAAMA,KAAE,KAAA,CAAM,cAAc,CAAC,CAAA,CAAE,QAAA;AAClD,CAAC,CAAA;AAWM,IAAM,iBAAA,GAAoBA,IAAA,CAAE,kBAAA,CAAmB,MAAA,EAAQ;AAAA,EAC5DA,KAAE,MAAA,CAAO;AAAA,IACP,IAAA,EAAMA,IAAA,CAAE,OAAA,CAAQ,WAAW,CAAA;AAAA,IAC3B,KAAA,EAAOA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+BAA+B,CAAA;AAAA,IAC1D,IAAA,EAAMA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,8BAA8B,CAAA;AAAA,IACxD,SAAA,EAAWA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,kCAAkC,CAAA;AAAA,IACjE,WAAA,EAAaA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,mCAAmC;AAAA,GACrE,CAAA;AAAA,EACDA,KAAE,MAAA,CAAO;AAAA,IACP,IAAA,EAAMA,IAAA,CAAE,OAAA,CAAQ,cAAc,CAAA;AAAA,IAC9B,aAAA,EAAeA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,qDAAqD,CAAA;AAAA,IACxF,eAAA,EAAiBA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,uCAAuC,CAAA;AAAA,IAC5E,gBAAgBA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qDAAqD,CAAA;AAAA,IACpG,QAAA,EAAUA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,gCAAgC;AAAA,GAC/D;AACH,CAAC;AAKM,IAAM,yBAAA,GAA4B;AAMlC,SAAS,gBAAgB,QAAA,EAAmE;AACjG,EAAA,IAAI,CAAC,UAAU,OAAO,IAAA;AACtB,EAAA,MAAM,GAAA,GAAM,SAAS,yBAAyB,CAAA;AAC9C,EAAA,IAAI,CAAC,KAAK,OAAO,IAAA;AACjB,EAAA,MAAM,MAAA,GAAS,iBAAA,CAAkB,SAAA,CAAU,GAAG,CAAA;AAC9C,EAAA,OAAO,MAAA,CAAO,OAAA,GAAU,MAAA,CAAO,IAAA,GAAO,IAAA;AACxC;AAGO,SAAS,oBAAoB,MAAA,EAA8C;AAChF,EAAA,OAAO,EAAE,CAAC,yBAAyB,GAAG,MAAA,EAAO;AAC/C;AAEA,IAAM,oBAAA,GAAuBA,KAAE,MAAA,CAAO;AAAA,EACpC,IAAA,EAAMA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,mBAAmB,CAAA;AAAA,EAC7C,WAAA,EAAaA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,uDAAuD,CAAA;AAAA,EACxF,YAAA,EAAcA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,qCAAqC,CAAA;AAAA,EACvE,SAASA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,kCAAkC,CAAA;AAAA,EAC1E,eAAeA,IAAA,CAAE,OAAA,GAAU,QAAA,EAAS,CAAE,SAAS,4BAA4B,CAAA;AAAA,EAC3E,MAAA,EAAQ,YAAA,CAAa,QAAA,EAAS,CAAE,SAAS,8BAA8B,CAAA;AAAA,EACvE,UAAA,EAAYA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,8BAA8B,CAAA;AAAA,EAClF,OAAA,EAASA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,2BAA2B,CAAA;AAAA,EAC5E,MAAA,EAAQA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,0BAA0B,CAAA;AAAA,EAC1E,KAAA,EAAOA,KAAE,KAAA,CAAM,cAAc,EAAE,QAAA,EAAS,CAAE,SAAS,wCAAwC,CAAA;AAAA,EAC3F,QAAA,EAAUA,IAAA,CAAE,MAAA,CAAOA,IAAA,CAAE,MAAA,EAAO,EAAGA,IAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA,EAAS,CAAE,SAAS,mCAAmC;AACrG,CAAC,CAAA;AAEM,IAAM,2BAAA,GAA8BA,KACxC,MAAA,CAAO;AAAA,EACN,IAAIA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,wDAAwD,CAAA;AAAA,EAC3F,UAAUA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,8CAA8C,CAAA;AAAA,EACvF,UAAA,EAAYA,IAAA,CACT,IAAA,CAAK,CAAC,SAAA,EAAW,QAAQ,CAAC,CAAA,CAC1B,QAAA,EAAS,CACT,QAAA,CAAS,qEAAqE;AACnF,CAAC,CAAA,CACA,MAAM,oBAAoB;AAEtB,IAAM,2BAAA,GAA8BA,KACxC,MAAA,CAAO;AAAA,EACN,QAAA,EAAUA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,UAAA,EAAYA,IAAA,CACT,IAAA,CAAK,CAAC,SAAA,EAAW,QAAQ,CAAC,CAAA,CAC1B,QAAA,EAAS,CACT,QAAA,CAAS,qEAAqE;AACnF,CAAC,EACA,OAAA,EAAQ,CACR,KAAA,CAAM,oBAAA,CAAqB,SAAS;AAMhC,IAAM,iBAAA,GAAoBA,KAAE,MAAA,CAAO;AAAA,EACxC,EAAA,EAAIA,KAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,6CAA6C,CAAA;AAAA,EACzE,eAAA,EAAiBA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACrC,QAAA,EAAUA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,UAAA,EAAYA,KAAE,IAAA,CAAK,CAAC,WAAW,QAAQ,CAAC,EAAE,QAAA,EAAS;AAAA,EACnD,aAAA,EAAeA,IAAA,CAAE,MAAA,EAAO,CAAE,GAAA,EAAI,CAAE,WAAA,EAAY,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,+CAA+C,CAAA;AAAA,EACjH,aAAaA,IAAA,CAAE,OAAA,GAAU,QAAA,EAAS,CAAE,SAAS,sDAAsD,CAAA;AAAA,EACnG,SAAA,EAAWA,IAAA,CAAE,MAAA,CAAO,IAAA,EAAK;AAAA,EACzB,SAAA,EAAWA,IAAA,CAAE,MAAA,CAAO,IAAA,EAAK;AAAA,EACzB,IAAA,EAAMA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,mBAAmB,CAAA;AAAA,EAC7C,WAAA,EAAaA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,uDAAuD,CAAA;AAAA,EACxF,YAAA,EAAcA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,qCAAqC,CAAA;AAAA,EACvE,SAASA,IAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,kCAAkC,CAAA;AAAA,EAC1E,eAAeA,IAAA,CAAE,OAAA,GAAU,QAAA,EAAS,CAAE,SAAS,4BAA4B,CAAA;AAAA,EAC3E,MAAA,EAAQ,YAAA,CAAa,QAAA,EAAS,CAAE,SAAS,8BAA8B,CAAA;AAAA,EACvE,UAAA,EAAYA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,8BAA8B,CAAA;AAAA,EAClF,OAAA,EAASA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,2BAA2B,CAAA;AAAA,EAC5E,MAAA,EAAQA,IAAA,CAAE,KAAA,CAAMA,IAAA,CAAE,MAAA,EAAQ,CAAA,CAAE,QAAA,EAAS,CAAE,QAAA,CAAS,0BAA0B,CAAA;AAAA,EAC1E,KAAA,EAAOA,KAAE,KAAA,CAAM,cAAc,EAAE,QAAA,EAAS,CAAE,SAAS,wCAAwC,CAAA;AAAA,EAC3F,QAAA,EAAUA,IAAA,CAAE,MAAA,CAAOA,IAAA,CAAE,MAAA,EAAO,EAAGA,IAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA,EAAS,CAAE,SAAS,mCAAmC;AACrG,CAAC;AAEM,IAAM,8BAAA,GAAiCE,uCAAqB,MAAA,CAAO;AAAA,EACxE,MAAA,EAAQF,IAAA,CAAE,KAAA,CAAM,iBAAiB;AACnC,CAAC;AAEM,IAAM,4BAAA,GAA+B;AACrC,IAAM,+BAAA,GAAkC;AAExC,IAAM,+BAAA,GAAkCA,KAAE,KAAA,CAAM;AAAA,EACrDA,KAAE,MAAA,CAAO;AAAA,IACP,EAAA,EAAIA,KAAE,MAAA,EAAO;AAAA,IACb,MAAA,EAAQA,KAAE,MAAA,EAAO;AAAA,IACjB,eAAA,EAAiBA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IACrC,QAAA,EAAUA,IAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,IAC9B,UAAA,EAAYA,KAAE,IAAA,CAAK,CAAC,WAAW,QAAQ,CAAC,EAAE,QAAA,EAAS;AAAA,IACnD,SAAA,EAAWA,IAAA,CAAE,MAAA,CAAO,IAAA,EAAK;AAAA,IACzB,SAAA,EAAWA,IAAA,CAAE,MAAA,CAAO,IAAA;AAAK,GAC1B,CAAA;AAAA,EACD;AACF,CAAC;AAEM,IAAM,+BAAA,GAAkCA,KAAE,MAAA,CAAO;AAAA,EACtD,OAAA,EAASA,KAAE,OAAA,EAAQ;AAAA,EACnB,OAAA,EAASA,KAAE,MAAA;AACb,CAAC;AAMM,IAAM,4BAAA,GAA+BA,KAAE,MAAA,CAAO;AAAA,EACnD,SAAA,EAAWA,IAAA,CAAE,MAAA,EAAO,CAAE,SAAS,4EAA4E;AAC7G,CAAC;AAEM,IAAM,gCAAA,GAAmC","file":"chunk-P2X2Q6N6.cjs","sourcesContent":["import { z } from 'zod/v4';\n\nimport { paginationInfoSchema, createPagePaginationSchema } from './common';\n\n// ============================================================================\n// Path Parameter Schemas\n// ============================================================================\n\nexport const storedSkillIdPathParams = z.object({\n storedSkillId: z.string().describe('Unique identifier for the stored skill'),\n});\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\nconst storageOrderBySchema = z.object({\n field: z.enum(['createdAt', 'updatedAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n});\n\nexport const listStoredSkillsQuerySchema = createPagePaginationSchema(100).extend({\n orderBy: storageOrderBySchema.optional(),\n status: z.enum(['draft', 'published', 'archived']).optional().describe('Filter skills by status'),\n authorId: z.string().optional().describe('Filter skills by author identifier'),\n visibility: z.enum(['public']).optional().describe('Filter to only public skills'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Filter skills by metadata key-value pairs'),\n favoritedOnly: z\n .stringbool()\n .optional()\n .describe('When true, return only skills favorited by the caller (requires the `favorites` EE feature)'),\n pinFavoritedFor: z\n .string()\n .optional()\n .describe(\n 'When set, treat the given subject (user/role) as the favoriting principal for `favoritedOnly` instead of the caller',\n ),\n});\n\n// ============================================================================\n// Body Parameter Schemas\n// ============================================================================\n\nconst sourceSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('external'),\n packagePath: z.string().describe('Package path for external source'),\n }),\n z.object({\n type: z.literal('local'),\n projectPath: z.string().describe('Project path for local source'),\n }),\n z.object({\n type: z.literal('managed'),\n mastraPath: z.string().describe('Mastra path for managed source'),\n }),\n]);\n\nexport interface FileNode {\n id?: string;\n name: string;\n type: 'file' | 'folder';\n content?: string;\n children?: FileNode[];\n}\n\nconst fileNodeSchema: z.ZodType<FileNode> = z.object({\n id: z.string().optional(),\n name: z.string(),\n type: z.enum(['file', 'folder']),\n content: z.string().optional(),\n children: z.lazy(() => z.array(fileNodeSchema)).optional(),\n});\n\n// ============================================================================\n// Origin Schema (metadata.origin)\n// ============================================================================\n\n/**\n * Identifies where a stored skill came from.\n * Persisted as `metadata.origin` on the stored skill so that registry-installed\n * skills can be distinguished from skills authored directly in the Builder.\n */\nexport const skillOriginSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('skills-sh'),\n owner: z.string().describe('Repository owner on skills.sh'),\n repo: z.string().describe('Repository name on skills.sh'),\n skillName: z.string().describe('Original skill name on skills.sh'),\n installedAt: z.string().describe('ISO-8601 timestamp of the install'),\n }),\n z.object({\n type: z.literal('library-copy'),\n sourceSkillId: z.string().describe('ID of the public Library skill this was copied from'),\n sourceSkillName: z.string().describe('Name of the source skill at copy time'),\n sourceAuthorId: z.string().optional().describe('Author of the source skill at copy time, when known'),\n copiedAt: z.string().describe('ISO-8601 timestamp of the copy'),\n }),\n]);\n\nexport type SkillOrigin = z.infer<typeof skillOriginSchema>;\n\n/** Metadata key under which origin information is persisted on a stored skill. */\nexport const SKILL_ORIGIN_METADATA_KEY = 'origin';\n\n/**\n * Read a typed origin off a stored skill's metadata blob, if present and valid.\n * Returns null when the skill has no origin (i.e., authored directly in the Builder).\n */\nexport function readSkillOrigin(metadata: Record<string, unknown> | undefined): SkillOrigin | null {\n if (!metadata) return null;\n const raw = metadata[SKILL_ORIGIN_METADATA_KEY];\n if (!raw) return null;\n const parsed = skillOriginSchema.safeParse(raw);\n return parsed.success ? parsed.data : null;\n}\n\n/** Build a metadata patch for an origin, suitable for spreading into the create body. */\nexport function buildOriginMetadata(origin: SkillOrigin): Record<string, unknown> {\n return { [SKILL_ORIGIN_METADATA_KEY]: origin };\n}\n\nconst snapshotConfigSchema = z.object({\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n files: z.array(fileNodeSchema).optional().describe('Full file tree structure for the skill'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const createStoredSkillBodySchema = z\n .object({\n id: z.string().optional().describe('Unique identifier. If not provided, derived from name.'),\n authorId: z.string().optional().describe('Author identifier for multi-tenant filtering'),\n visibility: z\n .enum(['private', 'public'])\n .optional()\n .describe('Skill visibility: private (owner/admin only) or public (any reader)'),\n })\n .merge(snapshotConfigSchema);\n\nexport const updateStoredSkillBodySchema = z\n .object({\n authorId: z.string().optional(),\n visibility: z\n .enum(['private', 'public'])\n .optional()\n .describe('Skill visibility: private (owner/admin only) or public (any reader)'),\n })\n .partial()\n .merge(snapshotConfigSchema.partial());\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\nexport const storedSkillSchema = z.object({\n id: z.string(),\n status: z.string().describe('Skill status: draft, published, or archived'),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n visibility: z.enum(['private', 'public']).optional(),\n favoriteCount: z.number().int().nonnegative().optional().describe('Number of users who have favorited this skill'),\n isFavorited: z.boolean().optional().describe('Whether the requesting user has favorited this skill'),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n name: z.string().describe('Name of the skill'),\n description: z.string().describe('Description of what the skill does and when to use it'),\n instructions: z.string().describe('Markdown instructions for the skill'),\n license: z.string().optional().describe('License identifier for the skill'),\n compatibility: z.unknown().optional().describe('Compatibility requirements'),\n source: sourceSchema.optional().describe('Source location of the skill'),\n references: z.array(z.string()).optional().describe('List of reference file paths'),\n scripts: z.array(z.string()).optional().describe('List of script file paths'),\n assets: z.array(z.string()).optional().describe('List of asset file paths'),\n files: z.array(fileNodeSchema).optional().describe('Full file tree structure for the skill'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional metadata for the skill'),\n});\n\nexport const listStoredSkillsResponseSchema = paginationInfoSchema.extend({\n skills: z.array(storedSkillSchema),\n});\n\nexport const getStoredSkillResponseSchema = storedSkillSchema;\nexport const createStoredSkillResponseSchema = storedSkillSchema;\n\nexport const updateStoredSkillResponseSchema = z.union([\n z.object({\n id: z.string(),\n status: z.string(),\n activeVersionId: z.string().optional(),\n authorId: z.string().optional(),\n visibility: z.enum(['private', 'public']).optional(),\n createdAt: z.coerce.date(),\n updatedAt: z.coerce.date(),\n }),\n storedSkillSchema,\n]);\n\nexport const deleteStoredSkillResponseSchema = z.object({\n success: z.boolean(),\n message: z.string(),\n});\n\n// ============================================================================\n// Publish / Rollback Schemas\n// ============================================================================\n\nexport const publishStoredSkillBodySchema = z.object({\n skillPath: z.string().describe('Path to the skill directory on the server filesystem (containing SKILL.md)'),\n});\n\nexport const publishStoredSkillResponseSchema = storedSkillSchema;\n"]}
@@ -1,5 +1,5 @@
1
1
  import { resolveAuthorFilter, matchesAuthorFilter, assertReadAccess, getCallerAuthorId, assertWriteAccess } from './chunk-SXZS6VZ3.js';
2
- import { listStoredWorkspacesResponseSchema, listStoredWorkspacesQuerySchema, getStoredWorkspaceResponseSchema, storedWorkspaceIdPathParams, createStoredWorkspaceResponseSchema, createStoredWorkspaceBodySchema, updateStoredWorkspaceResponseSchema, updateStoredWorkspaceBodySchema, deleteStoredWorkspaceResponseSchema } from './chunk-64QFFUEH.js';
2
+ import { listStoredWorkspacesResponseSchema, listStoredWorkspacesQuerySchema, getStoredWorkspaceResponseSchema, storedWorkspaceIdPathParams, createStoredWorkspaceResponseSchema, createStoredWorkspaceBodySchema, updateStoredWorkspaceResponseSchema, updateStoredWorkspaceBodySchema, deleteStoredWorkspaceResponseSchema } from './chunk-YTLTMMB7.js';
3
3
  import { getStoredResourceScope, scopeStoredResourceMetadata, assertStoredResourceScope, toSlug } from './chunk-NBI73TS5.js';
4
4
  import { handleError } from './chunk-7ZWJX3AN.js';
5
5
  import { createRoute } from './chunk-OMNQYWK3.js';
@@ -285,5 +285,5 @@ var DELETE_STORED_WORKSPACE_ROUTE = createRoute({
285
285
  });
286
286
 
287
287
  export { CREATE_STORED_WORKSPACE_ROUTE, DELETE_STORED_WORKSPACE_ROUTE, GET_STORED_WORKSPACE_ROUTE, LIST_STORED_WORKSPACES_ROUTE, UPDATE_STORED_WORKSPACE_ROUTE };
288
- //# sourceMappingURL=chunk-BH354CYO.js.map
289
- //# sourceMappingURL=chunk-BH354CYO.js.map
288
+ //# sourceMappingURL=chunk-PBWRO6XO.js.map
289
+ //# sourceMappingURL=chunk-PBWRO6XO.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/stored-workspaces.ts"],"names":[],"mappings":"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","file":"chunk-BH354CYO.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedWorkspaceIdPathParams,\n listStoredWorkspacesQuerySchema,\n createStoredWorkspaceBodySchema,\n updateStoredWorkspaceBodySchema,\n listStoredWorkspacesResponseSchema,\n getStoredWorkspaceResponseSchema,\n createStoredWorkspaceResponseSchema,\n updateStoredWorkspaceResponseSchema,\n deleteStoredWorkspaceResponseSchema,\n} from '../schemas/stored-workspaces';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { assertStoredResourceScope, getStoredResourceScope, scopeStoredResourceMetadata, toSlug } from '../utils';\n\nimport {\n assertReadAccess,\n assertWriteAccess,\n getCallerAuthorId,\n matchesAuthorFilter,\n resolveAuthorFilter,\n} from './authorship';\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/workspaces - List all stored workspaces\n */\nexport const LIST_STORED_WORKSPACES_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces',\n responseType: 'json',\n queryParamSchema: listStoredWorkspacesQuerySchema,\n responseSchema: listStoredWorkspacesResponseSchema,\n summary: 'List stored workspaces',\n description: 'Returns a paginated list of all workspace configurations stored in the database',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, authorId, metadata, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Resolve the visibility scope for this caller. Non-owner queries for\n // another author return nothing (workspaces have no `public` visibility\n // yet); default lists return the caller's rows plus legacy unowned\n // records.\n const filter = resolveAuthorFilter({\n requestContext,\n resource: 'stored-workspaces',\n queryAuthorId: authorId,\n });\n\n const scope = await getStoredResourceScope(mastra, requestContext);\n const result = await workspaceStore.listResolved({\n page,\n perPage,\n orderBy,\n authorId: filter.kind === 'exact' ? filter.authorId : undefined,\n metadata: scopeStoredResourceMetadata(metadata, scope),\n });\n\n // Post-filter to enforce ownership rules across all backends. Storage\n // adapters can only do an equality filter on authorId, so we apply the\n // ownedOrPublic / ownedOrPublicOthers logic here. `total` is left as the\n // storage-reported count to keep pagination math working.\n const visibleWorkspaces = result.workspaces.filter(record => matchesAuthorFilter(record, filter));\n\n // Annotate each workspace with whether it's registered at runtime\n const runtimeWorkspaces = mastra.listWorkspaces();\n const workspaces = visibleWorkspaces.map(ws => ({\n ...ws,\n runtimeRegistered: ws.id in runtimeWorkspaces,\n }));\n\n return { ...result, workspaces };\n } catch (error) {\n return handleError(error, 'Error listing stored workspaces');\n }\n },\n});\n\n/**\n * GET /stored/workspaces/:storedWorkspaceId - Get a stored workspace by ID\n */\nexport const GET_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: getStoredWorkspaceResponseSchema,\n summary: 'Get stored workspace by ID',\n description:\n 'Returns a specific workspace from storage by its unique identifier (resolved with active version config)',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const workspace = await workspaceStore.getByIdResolved(storedWorkspaceId);\n\n if (!workspace) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n assertStoredResourceScope(workspace, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:read[:<id>]` holder.\n assertReadAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n record: workspace,\n });\n\n return workspace;\n } catch (error) {\n return handleError(error, 'Error getting stored workspace');\n }\n },\n});\n\n/**\n * POST /stored/workspaces - Create a new stored workspace\n */\nexport const CREATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/workspaces',\n responseType: 'json',\n bodySchema: createStoredWorkspaceBodySchema,\n responseSchema: createStoredWorkspaceResponseSchema,\n summary: 'Create stored workspace',\n description: 'Creates a new workspace configuration in storage with the provided settings',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n requestContext,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive workspace ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if workspace with this ID already exists\n const existing = await workspaceStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Workspace with id ${id} already exists` });\n }\n\n // Force authorId from the authenticated caller; ignore any body-provided value.\n // No caller (auth not configured) leaves authorId undefined so legacy\n // single-user setups continue to behave as today.\n const authorId = getCallerAuthorId(requestContext) ?? undefined;\n\n await workspaceStore.create({\n workspace: {\n id,\n authorId,\n metadata: scopeStoredResourceMetadata(metadata, await getStoredResourceScope(mastra, requestContext)),\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n },\n });\n\n // Return the resolved workspace (thin record + version config)\n const resolved = await workspaceStore.getByIdResolved(id);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored workspace');\n }\n },\n});\n\n/**\n * PATCH /stored/workspaces/:storedWorkspaceId - Update a stored workspace\n */\nexport const UPDATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n bodySchema: updateStoredWorkspaceBodySchema,\n responseSchema: updateStoredWorkspaceResponseSchema,\n summary: 'Update stored workspace',\n description: 'Updates an existing workspace in storage with the provided fields',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedWorkspaceId,\n // Metadata-level fields\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n requestContext,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n const scope = await getStoredResourceScope(mastra, requestContext);\n assertStoredResourceScope(existing, scope);\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:edit[:<id>]` holder.\n assertWriteAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n action: 'edit',\n record: existing,\n });\n\n const scopedMetadata =\n metadata !== undefined\n ? scopeStoredResourceMetadata({ ...(existing.metadata ?? {}), ...metadata }, scope)\n : undefined;\n\n // Update the workspace with both metadata-level and config-level fields.\n // The storage layer handles separating these into record updates vs\n // new-version creation. Strip undefined keys so omitted fields don't\n // overwrite persisted values (same pattern as stored-skills PATCH).\n // Note: authorId is intentionally not accepted here. Ownership cannot be\n // transferred via PATCH; admins must use a dedicated flow if that is ever\n // needed.\n const updateInput: Record<string, unknown> = { id: storedWorkspaceId };\n const candidate: Record<string, unknown> = {\n ...(scopedMetadata !== undefined ? { metadata: scopedMetadata } : {}),\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n };\n for (const [key, value] of Object.entries(candidate)) {\n if (value !== undefined) updateInput[key] = value;\n }\n await workspaceStore.update(updateInput as Parameters<typeof workspaceStore.update>[0]);\n\n // Return the resolved workspace with the updated config\n const resolved = await workspaceStore.getByIdResolved(storedWorkspaceId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored workspace');\n }\n },\n});\n\n/**\n * DELETE /stored/workspaces/:storedWorkspaceId - Delete a stored workspace\n */\nexport const DELETE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: deleteStoredWorkspaceResponseSchema,\n summary: 'Delete stored workspace',\n description: 'Deletes a workspace from storage by its unique identifier',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n assertStoredResourceScope(existing, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:delete[:<id>]` holder.\n assertWriteAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n action: 'delete',\n record: existing,\n });\n\n await workspaceStore.delete(storedWorkspaceId);\n\n return {\n success: true,\n message: `Workspace ${storedWorkspaceId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored workspace');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/stored-workspaces.ts"],"names":[],"mappings":"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","file":"chunk-PBWRO6XO.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n storedWorkspaceIdPathParams,\n listStoredWorkspacesQuerySchema,\n createStoredWorkspaceBodySchema,\n updateStoredWorkspaceBodySchema,\n listStoredWorkspacesResponseSchema,\n getStoredWorkspaceResponseSchema,\n createStoredWorkspaceResponseSchema,\n updateStoredWorkspaceResponseSchema,\n deleteStoredWorkspaceResponseSchema,\n} from '../schemas/stored-workspaces';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { assertStoredResourceScope, getStoredResourceScope, scopeStoredResourceMetadata, toSlug } from '../utils';\n\nimport {\n assertReadAccess,\n assertWriteAccess,\n getCallerAuthorId,\n matchesAuthorFilter,\n resolveAuthorFilter,\n} from './authorship';\nimport { handleError } from './error';\n\n// ============================================================================\n// Route Definitions\n// ============================================================================\n\n/**\n * GET /stored/workspaces - List all stored workspaces\n */\nexport const LIST_STORED_WORKSPACES_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces',\n responseType: 'json',\n queryParamSchema: listStoredWorkspacesQuerySchema,\n responseSchema: listStoredWorkspacesResponseSchema,\n summary: 'List stored workspaces',\n description: 'Returns a paginated list of all workspace configurations stored in the database',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, page, perPage, orderBy, authorId, metadata, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Resolve the visibility scope for this caller. Non-owner queries for\n // another author return nothing (workspaces have no `public` visibility\n // yet); default lists return the caller's rows plus legacy unowned\n // records.\n const filter = resolveAuthorFilter({\n requestContext,\n resource: 'stored-workspaces',\n queryAuthorId: authorId,\n });\n\n const scope = await getStoredResourceScope(mastra, requestContext);\n const result = await workspaceStore.listResolved({\n page,\n perPage,\n orderBy,\n authorId: filter.kind === 'exact' ? filter.authorId : undefined,\n metadata: scopeStoredResourceMetadata(metadata, scope),\n });\n\n // Post-filter to enforce ownership rules across all backends. Storage\n // adapters can only do an equality filter on authorId, so we apply the\n // ownedOrPublic / ownedOrPublicOthers logic here. `total` is left as the\n // storage-reported count to keep pagination math working.\n const visibleWorkspaces = result.workspaces.filter(record => matchesAuthorFilter(record, filter));\n\n // Annotate each workspace with whether it's registered at runtime\n const runtimeWorkspaces = mastra.listWorkspaces();\n const workspaces = visibleWorkspaces.map(ws => ({\n ...ws,\n runtimeRegistered: ws.id in runtimeWorkspaces,\n }));\n\n return { ...result, workspaces };\n } catch (error) {\n return handleError(error, 'Error listing stored workspaces');\n }\n },\n});\n\n/**\n * GET /stored/workspaces/:storedWorkspaceId - Get a stored workspace by ID\n */\nexport const GET_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: getStoredWorkspaceResponseSchema,\n summary: 'Get stored workspace by ID',\n description:\n 'Returns a specific workspace from storage by its unique identifier (resolved with active version config)',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n const workspace = await workspaceStore.getByIdResolved(storedWorkspaceId);\n\n if (!workspace) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n assertStoredResourceScope(workspace, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:read[:<id>]` holder.\n assertReadAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n record: workspace,\n });\n\n return workspace;\n } catch (error) {\n return handleError(error, 'Error getting stored workspace');\n }\n },\n});\n\n/**\n * POST /stored/workspaces - Create a new stored workspace\n */\nexport const CREATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/workspaces',\n responseType: 'json',\n bodySchema: createStoredWorkspaceBodySchema,\n responseSchema: createStoredWorkspaceResponseSchema,\n summary: 'Create stored workspace',\n description: 'Creates a new workspace configuration in storage with the provided settings',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n id: providedId,\n metadata,\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n requestContext,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Derive ID from name if not explicitly provided\n const id = providedId || toSlug(name);\n\n if (!id) {\n throw new HTTPException(400, {\n message: 'Could not derive workspace ID from name. Please provide an explicit id.',\n });\n }\n\n // Check if workspace with this ID already exists\n const existing = await workspaceStore.getById(id);\n if (existing) {\n throw new HTTPException(409, { message: `Workspace with id ${id} already exists` });\n }\n\n // Force authorId from the authenticated caller; ignore any body-provided value.\n // No caller (auth not configured) leaves authorId undefined so legacy\n // single-user setups continue to behave as today.\n const authorId = getCallerAuthorId(requestContext) ?? undefined;\n\n await workspaceStore.create({\n workspace: {\n id,\n authorId,\n metadata: scopeStoredResourceMetadata(metadata, await getStoredResourceScope(mastra, requestContext)),\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n },\n });\n\n // Return the resolved workspace (thin record + version config)\n const resolved = await workspaceStore.getByIdResolved(id);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve created workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error creating stored workspace');\n }\n },\n});\n\n/**\n * PATCH /stored/workspaces/:storedWorkspaceId - Update a stored workspace\n */\nexport const UPDATE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'PATCH',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n bodySchema: updateStoredWorkspaceBodySchema,\n responseSchema: updateStoredWorkspaceResponseSchema,\n summary: 'Update stored workspace',\n description: 'Updates an existing workspace in storage with the provided fields',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({\n mastra,\n storedWorkspaceId,\n // Metadata-level fields\n metadata,\n // Config fields (snapshot-level)\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n requestContext,\n }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n const scope = await getStoredResourceScope(mastra, requestContext);\n assertStoredResourceScope(existing, scope);\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:edit[:<id>]` holder.\n assertWriteAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n action: 'edit',\n record: existing,\n });\n\n const scopedMetadata =\n metadata !== undefined\n ? scopeStoredResourceMetadata({ ...(existing.metadata ?? {}), ...metadata }, scope)\n : undefined;\n\n // Update the workspace with both metadata-level and config-level fields.\n // The storage layer handles separating these into record updates vs\n // new-version creation. Strip undefined keys so omitted fields don't\n // overwrite persisted values (same pattern as stored-skills PATCH).\n // Note: authorId is intentionally not accepted here. Ownership cannot be\n // transferred via PATCH; admins must use a dedicated flow if that is ever\n // needed.\n const updateInput: Record<string, unknown> = { id: storedWorkspaceId };\n const candidate: Record<string, unknown> = {\n ...(scopedMetadata !== undefined ? { metadata: scopedMetadata } : {}),\n name,\n description,\n filesystem,\n sandbox,\n mounts,\n search,\n skills,\n tools,\n autoSync,\n operationTimeout,\n };\n for (const [key, value] of Object.entries(candidate)) {\n if (value !== undefined) updateInput[key] = value;\n }\n await workspaceStore.update(updateInput as Parameters<typeof workspaceStore.update>[0]);\n\n // Return the resolved workspace with the updated config\n const resolved = await workspaceStore.getByIdResolved(storedWorkspaceId);\n if (!resolved) {\n throw new HTTPException(500, { message: 'Failed to resolve updated workspace' });\n }\n\n return resolved;\n } catch (error) {\n return handleError(error, 'Error updating stored workspace');\n }\n },\n});\n\n/**\n * DELETE /stored/workspaces/:storedWorkspaceId - Delete a stored workspace\n */\nexport const DELETE_STORED_WORKSPACE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/workspaces/:storedWorkspaceId',\n responseType: 'json',\n pathParamSchema: storedWorkspaceIdPathParams,\n responseSchema: deleteStoredWorkspaceResponseSchema,\n summary: 'Delete stored workspace',\n description: 'Deletes a workspace from storage by its unique identifier',\n tags: ['Stored Workspaces'],\n requiresAuth: true,\n handler: async ({ mastra, storedWorkspaceId, requestContext }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const workspaceStore = await storage.getStore('workspaces');\n if (!workspaceStore) {\n throw new HTTPException(500, { message: 'Workspaces storage domain is not available' });\n }\n\n // Check if workspace exists\n const existing = await workspaceStore.getById(storedWorkspaceId);\n if (!existing) {\n throw new HTTPException(404, { message: `Stored workspace with id ${storedWorkspaceId} not found` });\n }\n assertStoredResourceScope(existing, await getStoredResourceScope(mastra, requestContext));\n\n // Throws 404 if the caller isn't the owner, admin, or `stored-workspaces:delete[:<id>]` holder.\n assertWriteAccess({\n requestContext,\n resource: 'stored-workspaces',\n resourceId: storedWorkspaceId,\n action: 'delete',\n record: existing,\n });\n\n await workspaceStore.delete(storedWorkspaceId);\n\n return {\n success: true,\n message: `Workspace ${storedWorkspaceId} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting stored workspace');\n }\n },\n});\n"]}
@@ -1,6 +1,6 @@
1
- import { agentCardResponseSchema, a2aAgentIdPathParams, agentExecutionResponseSchema, agentExecutionBodySchema } from './chunk-KEE6UMGC.js';
2
- import { getAgentFromSystem } from './chunk-NNKRBMNJ.js';
3
- import { getPublicOrigin } from './chunk-Z5OBB3DJ.js';
1
+ import { agentCardResponseSchema, a2aAgentIdPathParams, agentExecutionResponseSchema, agentExecutionBodySchema } from './chunk-J62MSX2P.js';
2
+ import { getAgentFromSystem } from './chunk-WSVV5VAC.js';
3
+ import { getPublicOrigin } from './chunk-2Q3GX3ML.js';
4
4
  import { convertInstructionsToString } from './chunk-NBI73TS5.js';
5
5
  import { createRoute } from './chunk-OMNQYWK3.js';
6
6
  import { __commonJS, __export, __toESM } from './chunk-PR4QN5HX.js';
@@ -1637,5 +1637,5 @@ var AGENT_EXECUTION_ROUTE = createRoute({
1637
1637
  });
1638
1638
 
1639
1639
  export { AGENT_EXECUTION_ROUTE, GET_AGENT_CARD_ROUTE, a2a_exports, getAgentCardByIdHandler, getAgentExecutionHandler, handleDeleteTaskPushNotificationConfig, handleGetTaskPushNotificationConfig, handleListTaskPushNotificationConfig, handleMessageSend, handleMessageStream, handleSetTaskPushNotificationConfig, handleTaskCancel, handleTaskGet, handleTaskResubscribe };
1640
- //# sourceMappingURL=chunk-4UI3O245.js.map
1641
- //# sourceMappingURL=chunk-4UI3O245.js.map
1640
+ //# sourceMappingURL=chunk-PNU7UJQB.js.map
1641
+ //# sourceMappingURL=chunk-PNU7UJQB.js.map