@mastra/server 1.16.0-alpha.2 → 1.16.0-alpha.3

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 (232) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/{chunk-PUMBMYBX.cjs → chunk-37LAVKFO.cjs} +11 -11
  3. package/dist/{chunk-PUMBMYBX.cjs.map → chunk-37LAVKFO.cjs.map} +1 -1
  4. package/dist/{chunk-62GR2C36.cjs → chunk-3BRCE7JC.cjs} +11 -11
  5. package/dist/{chunk-62GR2C36.cjs.map → chunk-3BRCE7JC.cjs.map} +1 -1
  6. package/dist/{chunk-Z7BMOL42.cjs → chunk-3W54ZNYP.cjs} +30 -30
  7. package/dist/{chunk-Z7BMOL42.cjs.map → chunk-3W54ZNYP.cjs.map} +1 -1
  8. package/dist/{chunk-MZ275AAF.js → chunk-4D7KSU4X.js} +4 -4
  9. package/dist/{chunk-MZ275AAF.js.map → chunk-4D7KSU4X.js.map} +1 -1
  10. package/dist/{chunk-XWN66HIC.cjs → chunk-4G5KVXN6.cjs} +17 -17
  11. package/dist/{chunk-XWN66HIC.cjs.map → chunk-4G5KVXN6.cjs.map} +1 -1
  12. package/dist/{chunk-YAQDFKGR.js → chunk-4NRXB7VI.js} +3 -3
  13. package/dist/{chunk-YAQDFKGR.js.map → chunk-4NRXB7VI.js.map} +1 -1
  14. package/dist/{chunk-WOU6ROOP.js → chunk-5GXB4IME.js} +3 -3
  15. package/dist/{chunk-WOU6ROOP.js.map → chunk-5GXB4IME.js.map} +1 -1
  16. package/dist/{chunk-O52KF4SM.js → chunk-6QBPL7ME.js} +4 -4
  17. package/dist/{chunk-O52KF4SM.js.map → chunk-6QBPL7ME.js.map} +1 -1
  18. package/dist/{chunk-U67CHRAK.js → chunk-7DAVYYZ6.js} +3 -3
  19. package/dist/{chunk-U67CHRAK.js.map → chunk-7DAVYYZ6.js.map} +1 -1
  20. package/dist/{chunk-3ZPZHQRS.js → chunk-7TESOQZ3.js} +3 -3
  21. package/dist/{chunk-3ZPZHQRS.js.map → chunk-7TESOQZ3.js.map} +1 -1
  22. package/dist/{chunk-4I2LMHTI.js → chunk-7ZHBGYZB.js} +3 -3
  23. package/dist/{chunk-4I2LMHTI.js.map → chunk-7ZHBGYZB.js.map} +1 -1
  24. package/dist/{chunk-QD7NPKXK.cjs → chunk-A5J2TY2W.cjs} +6 -6
  25. package/dist/{chunk-QD7NPKXK.cjs.map → chunk-A5J2TY2W.cjs.map} +1 -1
  26. package/dist/{chunk-K3TANUFC.js → chunk-ATZ7V3XS.js} +5 -5
  27. package/dist/{chunk-K3TANUFC.js.map → chunk-ATZ7V3XS.js.map} +1 -1
  28. package/dist/{chunk-MR2JXSLN.js → chunk-B5KNWY2P.js} +3 -3
  29. package/dist/{chunk-MR2JXSLN.js.map → chunk-B5KNWY2P.js.map} +1 -1
  30. package/dist/{chunk-OQCQTAI6.js → chunk-CZUJUB46.js} +14 -5
  31. package/dist/chunk-CZUJUB46.js.map +1 -0
  32. package/dist/{chunk-375NFGLA.js → chunk-E56FRMZY.js} +3 -3
  33. package/dist/{chunk-375NFGLA.js.map → chunk-E56FRMZY.js.map} +1 -1
  34. package/dist/{chunk-2OGP3GTW.cjs → chunk-EGSCXVMR.cjs} +5 -52
  35. package/dist/chunk-EGSCXVMR.cjs.map +1 -0
  36. package/dist/{chunk-3LBYNV6U.js → chunk-FB5NRM2M.js} +3 -3
  37. package/dist/{chunk-3LBYNV6U.js.map → chunk-FB5NRM2M.js.map} +1 -1
  38. package/dist/{chunk-E3ZR4JAK.cjs → chunk-FPEX6KOJ.cjs} +46 -43
  39. package/dist/chunk-FPEX6KOJ.cjs.map +1 -0
  40. package/dist/{chunk-3CILCP75.js → chunk-FU5Z5NSF.js} +4 -4
  41. package/dist/{chunk-3CILCP75.js.map → chunk-FU5Z5NSF.js.map} +1 -1
  42. package/dist/{chunk-Y5MUJIDZ.js → chunk-G2ZZKKQI.js} +4 -4
  43. package/dist/{chunk-Y5MUJIDZ.js.map → chunk-G2ZZKKQI.js.map} +1 -1
  44. package/dist/{chunk-EGFJ3CSS.cjs → chunk-G5KXPZUB.cjs} +7 -7
  45. package/dist/{chunk-EGFJ3CSS.cjs.map → chunk-G5KXPZUB.cjs.map} +1 -1
  46. package/dist/{chunk-MSGUG7XP.js → chunk-GF42M6A3.js} +3 -3
  47. package/dist/{chunk-MSGUG7XP.js.map → chunk-GF42M6A3.js.map} +1 -1
  48. package/dist/{chunk-ODP5DUNL.cjs → chunk-GVZ7VB33.cjs} +16 -7
  49. package/dist/chunk-GVZ7VB33.cjs.map +1 -0
  50. package/dist/{chunk-HDF6J2PA.js → chunk-GYD5JBBZ.js} +3 -3
  51. package/dist/{chunk-HDF6J2PA.js.map → chunk-GYD5JBBZ.js.map} +1 -1
  52. package/dist/{chunk-C3VLRWVN.cjs → chunk-H6ZLN6EU.cjs} +11 -11
  53. package/dist/{chunk-C3VLRWVN.cjs.map → chunk-H6ZLN6EU.cjs.map} +1 -1
  54. package/dist/{chunk-OIBX76JU.cjs → chunk-HBMIUVV4.cjs} +10 -10
  55. package/dist/{chunk-OIBX76JU.cjs.map → chunk-HBMIUVV4.cjs.map} +1 -1
  56. package/dist/{chunk-2HD547CV.js → chunk-HI5EDX3F.js} +3 -3
  57. package/dist/{chunk-2HD547CV.js.map → chunk-HI5EDX3F.js.map} +1 -1
  58. package/dist/{chunk-NASA6WQI.cjs → chunk-HXICAUTW.cjs} +9 -5
  59. package/dist/chunk-HXICAUTW.cjs.map +1 -0
  60. package/dist/{chunk-HOAPBP32.cjs → chunk-JH576GTI.cjs} +10 -10
  61. package/dist/{chunk-HOAPBP32.cjs.map → chunk-JH576GTI.cjs.map} +1 -1
  62. package/dist/{chunk-EP7BGEQN.js → chunk-JL6JURL5.js} +4 -4
  63. package/dist/{chunk-EP7BGEQN.js.map → chunk-JL6JURL5.js.map} +1 -1
  64. package/dist/{chunk-PY465Q3R.js → chunk-K6RNBFGH.js} +4 -4
  65. package/dist/{chunk-PY465Q3R.js.map → chunk-K6RNBFGH.js.map} +1 -1
  66. package/dist/{chunk-YENPIZNE.cjs → chunk-KAWEDYGS.cjs} +11 -11
  67. package/dist/{chunk-YENPIZNE.cjs.map → chunk-KAWEDYGS.cjs.map} +1 -1
  68. package/dist/{chunk-AYBVZYKG.js → chunk-M6AQTASN.js} +3 -3
  69. package/dist/{chunk-AYBVZYKG.js.map → chunk-M6AQTASN.js.map} +1 -1
  70. package/dist/{chunk-7U4AWIZN.js → chunk-MH2WUZWZ.js} +4 -4
  71. package/dist/{chunk-7U4AWIZN.js.map → chunk-MH2WUZWZ.js.map} +1 -1
  72. package/dist/{chunk-FSAN76YB.js → chunk-MKW43AJ3.js} +4 -4
  73. package/dist/{chunk-FSAN76YB.js.map → chunk-MKW43AJ3.js.map} +1 -1
  74. package/dist/{chunk-7XTRDSIB.cjs → chunk-MNEANLCY.cjs} +10 -10
  75. package/dist/{chunk-7XTRDSIB.cjs.map → chunk-MNEANLCY.cjs.map} +1 -1
  76. package/dist/{chunk-F6OAHS7U.cjs → chunk-NCCK5NVX.cjs} +10 -10
  77. package/dist/{chunk-F6OAHS7U.cjs.map → chunk-NCCK5NVX.cjs.map} +1 -1
  78. package/dist/{chunk-5LHQGPOK.js → chunk-NMS2SC2B.js} +4 -50
  79. package/dist/chunk-NMS2SC2B.js.map +1 -0
  80. package/dist/{chunk-37WHTNK3.cjs → chunk-NOBDUHIG.cjs} +10 -10
  81. package/dist/{chunk-37WHTNK3.cjs.map → chunk-NOBDUHIG.cjs.map} +1 -1
  82. package/dist/{chunk-4RNME2SG.js → chunk-OXE6JN54.js} +3 -3
  83. package/dist/{chunk-4RNME2SG.js.map → chunk-OXE6JN54.js.map} +1 -1
  84. package/dist/{chunk-OMZ2AFE6.js → chunk-QJZOWORS.js} +4 -4
  85. package/dist/{chunk-OMZ2AFE6.js.map → chunk-QJZOWORS.js.map} +1 -1
  86. package/dist/{chunk-3UXER23P.js → chunk-RGI5IQDO.js} +3 -3
  87. package/dist/{chunk-3UXER23P.js.map → chunk-RGI5IQDO.js.map} +1 -1
  88. package/dist/{chunk-VEAVTM4P.js → chunk-RW62AXQH.js} +5 -3
  89. package/dist/chunk-RW62AXQH.js.map +1 -0
  90. package/dist/{chunk-75A4PINQ.js → chunk-SCHPGBMK.js} +5 -5
  91. package/dist/{chunk-75A4PINQ.js.map → chunk-SCHPGBMK.js.map} +1 -1
  92. package/dist/{chunk-5LURYWNF.cjs → chunk-SEMV475G.cjs} +5 -5
  93. package/dist/{chunk-5LURYWNF.cjs.map → chunk-SEMV475G.cjs.map} +1 -1
  94. package/dist/{chunk-BB6XFMH3.js → chunk-TVGJFK3J.js} +6 -6
  95. package/dist/{chunk-BB6XFMH3.js.map → chunk-TVGJFK3J.js.map} +1 -1
  96. package/dist/{chunk-J4OPB4KS.cjs → chunk-TYYGY4H4.cjs} +11 -11
  97. package/dist/{chunk-J4OPB4KS.cjs.map → chunk-TYYGY4H4.cjs.map} +1 -1
  98. package/dist/{chunk-UOYOF6ZJ.cjs → chunk-UFK5THVP.cjs} +10 -10
  99. package/dist/{chunk-UOYOF6ZJ.cjs.map → chunk-UFK5THVP.cjs.map} +1 -1
  100. package/dist/{chunk-FLIDCUYX.js → chunk-UKYIFRF3.js} +3 -3
  101. package/dist/{chunk-FLIDCUYX.js.map → chunk-UKYIFRF3.js.map} +1 -1
  102. package/dist/{chunk-C4U6B3QN.cjs → chunk-ULLR3RN3.cjs} +10 -10
  103. package/dist/{chunk-C4U6B3QN.cjs.map → chunk-ULLR3RN3.cjs.map} +1 -1
  104. package/dist/{chunk-ZGDE3DVS.cjs → chunk-UUQ6I673.cjs} +6 -6
  105. package/dist/{chunk-ZGDE3DVS.cjs.map → chunk-UUQ6I673.cjs.map} +1 -1
  106. package/dist/{chunk-2CO6GUN2.cjs → chunk-WC4OPIB4.cjs} +6 -6
  107. package/dist/{chunk-2CO6GUN2.cjs.map → chunk-WC4OPIB4.cjs.map} +1 -1
  108. package/dist/{chunk-JURBS7AW.cjs → chunk-WIQDQTKG.cjs} +12 -12
  109. package/dist/{chunk-JURBS7AW.cjs.map → chunk-WIQDQTKG.cjs.map} +1 -1
  110. package/dist/{chunk-VDMJKGYJ.cjs → chunk-WUCJRGTK.cjs} +10 -10
  111. package/dist/{chunk-VDMJKGYJ.cjs.map → chunk-WUCJRGTK.cjs.map} +1 -1
  112. package/dist/{chunk-S3OSXKBZ.js → chunk-WYAFNFFM.js} +55 -42
  113. package/dist/chunk-WYAFNFFM.js.map +1 -0
  114. package/dist/{chunk-FFX5KP4Y.cjs → chunk-XBMICDYC.cjs} +26 -26
  115. package/dist/{chunk-FFX5KP4Y.cjs.map → chunk-XBMICDYC.cjs.map} +1 -1
  116. package/dist/{chunk-XUBQNV4W.cjs → chunk-Y2OBOWHZ.cjs} +33 -33
  117. package/dist/{chunk-XUBQNV4W.cjs.map → chunk-Y2OBOWHZ.cjs.map} +1 -1
  118. package/dist/{chunk-JTKK7ZEC.cjs → chunk-YEYWCSMW.cjs} +14 -14
  119. package/dist/{chunk-JTKK7ZEC.cjs.map → chunk-YEYWCSMW.cjs.map} +1 -1
  120. package/dist/{chunk-OSZ6AAFG.cjs → chunk-YIVUZPOV.cjs} +28 -28
  121. package/dist/{chunk-OSZ6AAFG.cjs.map → chunk-YIVUZPOV.cjs.map} +1 -1
  122. package/dist/{chunk-OOTESG4L.js → chunk-YKS5HCGB.js} +12 -9
  123. package/dist/chunk-YKS5HCGB.js.map +1 -0
  124. package/dist/{chunk-DZHGLVLY.cjs → chunk-YTB4DWYU.cjs} +30 -30
  125. package/dist/{chunk-DZHGLVLY.cjs.map → chunk-YTB4DWYU.cjs.map} +1 -1
  126. package/dist/{chunk-F37L2WVR.cjs → chunk-YV7FX2SA.cjs} +10 -10
  127. package/dist/{chunk-F37L2WVR.cjs.map → chunk-YV7FX2SA.cjs.map} +1 -1
  128. package/dist/{chunk-KVLNMWUF.cjs → chunk-YWPRH3D3.cjs} +132 -119
  129. package/dist/chunk-YWPRH3D3.cjs.map +1 -0
  130. package/dist/{chunk-DWIUNYVY.cjs → chunk-ZFCNTRZ2.cjs} +5 -3
  131. package/dist/chunk-ZFCNTRZ2.cjs.map +1 -0
  132. package/dist/{chunk-C2ITUXN6.js → chunk-ZHULRNJG.js} +9 -6
  133. package/dist/chunk-ZHULRNJG.js.map +1 -0
  134. package/dist/{chunk-BHMMMTPE.js → chunk-ZKXIAID6.js} +4 -4
  135. package/dist/{chunk-BHMMMTPE.js.map → chunk-ZKXIAID6.js.map} +1 -1
  136. package/dist/{chunk-GIEF7CQR.cjs → chunk-ZPHHURXX.cjs} +84 -84
  137. package/dist/{chunk-GIEF7CQR.cjs.map → chunk-ZPHHURXX.cjs.map} +1 -1
  138. package/dist/docs/SKILL.md +1 -1
  139. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  140. package/dist/server/handlers/a2a.cjs +9 -9
  141. package/dist/server/handlers/a2a.js +1 -1
  142. package/dist/server/handlers/agent-builder.cjs +16 -16
  143. package/dist/server/handlers/agent-builder.js +1 -1
  144. package/dist/server/handlers/agent-versions.cjs +8 -8
  145. package/dist/server/handlers/agent-versions.js +1 -1
  146. package/dist/server/handlers/agents.cjs +33 -33
  147. package/dist/server/handlers/agents.d.ts +10 -5
  148. package/dist/server/handlers/agents.d.ts.map +1 -1
  149. package/dist/server/handlers/agents.js +1 -1
  150. package/dist/server/handlers/auth.cjs +10 -10
  151. package/dist/server/handlers/auth.js +1 -1
  152. package/dist/server/handlers/datasets.cjs +24 -24
  153. package/dist/server/handlers/datasets.js +1 -1
  154. package/dist/server/handlers/logs.cjs +4 -4
  155. package/dist/server/handlers/logs.js +1 -1
  156. package/dist/server/handlers/mcp-client-versions.cjs +8 -8
  157. package/dist/server/handlers/mcp-client-versions.js +1 -1
  158. package/dist/server/handlers/mcp.cjs +9 -9
  159. package/dist/server/handlers/mcp.js +1 -1
  160. package/dist/server/handlers/memory.cjs +27 -27
  161. package/dist/server/handlers/memory.js +1 -1
  162. package/dist/server/handlers/observability-new-endpoints.cjs +19 -19
  163. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  164. package/dist/server/handlers/observability.cjs +24 -24
  165. package/dist/server/handlers/observability.js +2 -2
  166. package/dist/server/handlers/processor-providers.cjs +3 -3
  167. package/dist/server/handlers/processor-providers.js +1 -1
  168. package/dist/server/handlers/processors.cjs +4 -4
  169. package/dist/server/handlers/processors.js +1 -1
  170. package/dist/server/handlers/prompt-block-versions.cjs +8 -8
  171. package/dist/server/handlers/prompt-block-versions.js +1 -1
  172. package/dist/server/handlers/scorer-versions.cjs +8 -8
  173. package/dist/server/handlers/scorer-versions.js +1 -1
  174. package/dist/server/handlers/scores.cjs +7 -7
  175. package/dist/server/handlers/scores.js +1 -1
  176. package/dist/server/handlers/stored-agents.cjs +7 -7
  177. package/dist/server/handlers/stored-agents.js +1 -1
  178. package/dist/server/handlers/stored-mcp-clients.cjs +6 -6
  179. package/dist/server/handlers/stored-mcp-clients.js +1 -1
  180. package/dist/server/handlers/stored-prompt-blocks.cjs +6 -6
  181. package/dist/server/handlers/stored-prompt-blocks.js +1 -1
  182. package/dist/server/handlers/stored-scorers.cjs +6 -6
  183. package/dist/server/handlers/stored-scorers.js +1 -1
  184. package/dist/server/handlers/stored-skills.cjs +7 -7
  185. package/dist/server/handlers/stored-skills.js +1 -1
  186. package/dist/server/handlers/stored-workspaces.cjs +6 -6
  187. package/dist/server/handlers/stored-workspaces.js +1 -1
  188. package/dist/server/handlers/system.cjs +2 -2
  189. package/dist/server/handlers/system.d.ts +4 -0
  190. package/dist/server/handlers/system.d.ts.map +1 -1
  191. package/dist/server/handlers/system.js +1 -1
  192. package/dist/server/handlers/tool-providers.cjs +5 -5
  193. package/dist/server/handlers/tool-providers.js +1 -1
  194. package/dist/server/handlers/tools.cjs +6 -6
  195. package/dist/server/handlers/tools.js +1 -1
  196. package/dist/server/handlers/vector.cjs +16 -16
  197. package/dist/server/handlers/vector.js +1 -1
  198. package/dist/server/handlers/voice.cjs +8 -8
  199. package/dist/server/handlers/voice.js +1 -1
  200. package/dist/server/handlers/workflows.cjs +24 -24
  201. package/dist/server/handlers/workflows.js +1 -1
  202. package/dist/server/handlers/workspace.cjs +26 -26
  203. package/dist/server/handlers/workspace.d.ts +60 -32
  204. package/dist/server/handlers/workspace.d.ts.map +1 -1
  205. package/dist/server/handlers/workspace.js +1 -1
  206. package/dist/server/handlers.cjs +26 -26
  207. package/dist/server/handlers.js +13 -13
  208. package/dist/server/schemas/index.cjs +59 -55
  209. package/dist/server/schemas/index.js +2 -2
  210. package/dist/server/schemas/system.d.ts +2 -0
  211. package/dist/server/schemas/system.d.ts.map +1 -1
  212. package/dist/server/schemas/workspace.d.ts +6 -0
  213. package/dist/server/schemas/workspace.d.ts.map +1 -1
  214. package/dist/server/server-adapter/index.cjs +284 -284
  215. package/dist/server/server-adapter/index.js +34 -34
  216. package/dist/server/server-adapter/routes/system.d.ts +4 -0
  217. package/dist/server/server-adapter/routes/system.d.ts.map +1 -1
  218. package/dist/server/server-adapter/routes/workspace.d.ts +30 -16
  219. package/dist/server/server-adapter/routes/workspace.d.ts.map +1 -1
  220. package/package.json +6 -6
  221. package/dist/chunk-2OGP3GTW.cjs.map +0 -1
  222. package/dist/chunk-5LHQGPOK.js.map +0 -1
  223. package/dist/chunk-C2ITUXN6.js.map +0 -1
  224. package/dist/chunk-DWIUNYVY.cjs.map +0 -1
  225. package/dist/chunk-E3ZR4JAK.cjs.map +0 -1
  226. package/dist/chunk-KVLNMWUF.cjs.map +0 -1
  227. package/dist/chunk-NASA6WQI.cjs.map +0 -1
  228. package/dist/chunk-ODP5DUNL.cjs.map +0 -1
  229. package/dist/chunk-OOTESG4L.js.map +0 -1
  230. package/dist/chunk-OQCQTAI6.js.map +0 -1
  231. package/dist/chunk-S3OSXKBZ.js.map +0 -1
  232. package/dist/chunk-VEAVTM4P.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { listScorerVersionsResponseSchema, listScorerVersionsQuerySchema, scorerVersionPathParams, createScorerVersionResponseSchema, createScorerVersionBodySchema, getScorerVersionResponseSchema, scorerVersionIdPathParams, activateScorerVersionResponseSchema, restoreScorerVersionResponseSchema, deleteScorerVersionResponseSchema, compareScorerVersionsResponseSchema, compareScorerVersionsQuerySchema } from './chunk-QRCL3KIX.js';
2
2
  import { extractConfigFromVersion, calculateChangedFields, createVersionWithRetry, enforceRetentionLimit, computeVersionDiffs } from './chunk-33QPJPK4.js';
3
3
  import { handleError } from './chunk-P23KBWKB.js';
4
- import { createRoute } from './chunk-5LHQGPOK.js';
4
+ import { createRoute } from './chunk-NMS2SC2B.js';
5
5
  import { HTTPException } from './chunk-6QWQZI4Q.js';
6
6
 
7
7
  // src/server/handlers/scorer-versions.ts
@@ -384,5 +384,5 @@ var COMPARE_SCORER_VERSIONS_ROUTE = createRoute({
384
384
  });
385
385
 
386
386
  export { ACTIVATE_SCORER_VERSION_ROUTE, COMPARE_SCORER_VERSIONS_ROUTE, CREATE_SCORER_VERSION_ROUTE, DELETE_SCORER_VERSION_ROUTE, GET_SCORER_VERSION_ROUTE, LIST_SCORER_VERSIONS_ROUTE, RESTORE_SCORER_VERSION_ROUTE };
387
- //# sourceMappingURL=chunk-3LBYNV6U.js.map
388
- //# sourceMappingURL=chunk-3LBYNV6U.js.map
387
+ //# sourceMappingURL=chunk-FB5NRM2M.js.map
388
+ //# sourceMappingURL=chunk-FB5NRM2M.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/scorer-versions.ts"],"names":[],"mappings":"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","file":"chunk-3LBYNV6U.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n scorerVersionPathParams,\n scorerVersionIdPathParams,\n listScorerVersionsQuerySchema,\n createScorerVersionBodySchema,\n compareScorerVersionsQuerySchema,\n listScorerVersionsResponseSchema,\n getScorerVersionResponseSchema,\n createScorerVersionResponseSchema,\n activateScorerVersionResponseSchema,\n restoreScorerVersionResponseSchema,\n deleteScorerVersionResponseSchema,\n compareScorerVersionsResponseSchema,\n} from '../schemas/scorer-versions';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport {\n extractConfigFromVersion,\n calculateChangedFields,\n computeVersionDiffs,\n createVersionWithRetry,\n enforceRetentionLimit,\n} from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'type',\n 'model',\n 'instructions',\n 'scoreRange',\n 'presetConfig',\n 'defaultSampling',\n] as const;\n\n/**\n * GET /stored/scorers/:scorerId/versions - List all versions for a scorer\n */\nexport const LIST_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: listScorerVersionsQuerySchema,\n responseSchema: listScorerVersionsResponseSchema,\n summary: 'List scorer versions',\n description: 'Returns a paginated list of all versions for a stored scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, page, perPage, orderBy }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const result = await scorerStore.listVersions({\n scorerDefinitionId: scorerId,\n page,\n perPage,\n orderBy,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing scorer versions');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions - Create a new version snapshot\n */\nexport const CREATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n bodySchema: createScorerVersionBodySchema,\n responseSchema: createScorerVersionResponseSchema,\n summary: 'Create scorer version',\n description: 'Creates a new version snapshot of the current scorer configuration',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, changeMessage }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n let currentConfig: Record<string, unknown> = {};\n if (scorer.activeVersionId) {\n const activeVersion = await scorerStore.getVersion(scorer.activeVersionId);\n if (activeVersion) {\n currentConfig = extractConfigFromVersion(\n activeVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n }\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n\n // If no activeVersionId, fall back to latest version config\n if (!scorer.activeVersionId && latestVersion) {\n currentConfig = extractConfigFromVersion(\n latestVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, currentConfig);\n\n const { versionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n currentConfig,\n changedFields,\n { changeMessage },\n );\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n return version;\n } catch (error) {\n return handleError(error, 'Error creating scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/:versionId - Get a specific version\n */\nexport const GET_SCORER_VERSION_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: getScorerVersionResponseSchema,\n summary: 'Get scorer version',\n description: 'Returns a specific version of a scorer by its version ID',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const version = await scorerStore.getVersion(versionId);\n\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n return version;\n } catch (error) {\n return handleError(error, 'Error getting scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/activate - Set a version as active\n */\nexport const ACTIVATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/activate',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: activateScorerVersionResponseSchema,\n summary: 'Activate scorer version',\n description: 'Sets a specific version as the active version for the scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n await scorerStore.update({\n id: scorerId,\n activeVersionId: versionId,\n status: 'published',\n });\n\n // Clear the editor cache so subsequent requests see the new active version\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} is now active`,\n activeVersionId: versionId,\n };\n } catch (error) {\n return handleError(error, 'Error activating scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/restore - Restore scorer to a version\n */\nexport const RESTORE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/restore',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: restoreScorerVersionResponseSchema,\n summary: 'Restore scorer version',\n description: 'Restores the scorer configuration from a version, creating a new version',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const versionToRestore = await scorerStore.getVersion(versionId);\n if (!versionToRestore) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (versionToRestore.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n const restoredConfig = extractConfigFromVersion(\n versionToRestore as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n await scorerStore.update({\n id: scorerId,\n ...restoredConfig,\n });\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, restoredConfig);\n\n const { versionId: newVersionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n restoredConfig,\n changedFields,\n {\n changeMessage: `Restored from version ${versionToRestore.versionNumber}`,\n },\n );\n\n const newVersion = await scorerStore.getVersion(newVersionId);\n if (!newVersion) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return newVersion;\n } catch (error) {\n return handleError(error, 'Error restoring scorer version');\n }\n },\n});\n\n/**\n * DELETE /stored/scorers/:scorerId/versions/:versionId - Delete a version\n */\nexport const DELETE_SCORER_VERSION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: deleteScorerVersionResponseSchema,\n summary: 'Delete scorer version',\n description: 'Deletes a specific version (cannot delete the active version)',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n if (scorer.activeVersionId === versionId) {\n throw new HTTPException(400, {\n message: 'Cannot delete the active version. Activate a different version first.',\n });\n }\n\n await scorerStore.deleteVersion(versionId);\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/compare - Compare two versions\n */\nexport const COMPARE_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/compare',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: compareScorerVersionsQuerySchema,\n responseSchema: compareScorerVersionsResponseSchema,\n summary: 'Compare scorer versions',\n description: 'Compares two versions and returns the differences between them',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, from, to }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const fromVersion = await scorerStore.getVersion(from);\n if (!fromVersion) {\n throw new HTTPException(404, { message: `Version with id ${from} not found` });\n }\n if (fromVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${from} not found for scorer ${scorerId}`,\n });\n }\n\n const toVersion = await scorerStore.getVersion(to);\n if (!toVersion) {\n throw new HTTPException(404, { message: `Version with id ${to} not found` });\n }\n if (toVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${to} not found for scorer ${scorerId}`,\n });\n }\n\n const fromConfig = extractConfigFromVersion(\n fromVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n const toConfig = extractConfigFromVersion(\n toVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n const diffs = computeVersionDiffs(fromConfig, toConfig);\n\n return {\n diffs,\n fromVersion,\n toVersion,\n };\n } catch (error) {\n return handleError(error, 'Error comparing scorer versions');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/scorer-versions.ts"],"names":[],"mappings":"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","file":"chunk-FB5NRM2M.js","sourcesContent":["import { HTTPException } from '../http-exception';\nimport {\n scorerVersionPathParams,\n scorerVersionIdPathParams,\n listScorerVersionsQuerySchema,\n createScorerVersionBodySchema,\n compareScorerVersionsQuerySchema,\n listScorerVersionsResponseSchema,\n getScorerVersionResponseSchema,\n createScorerVersionResponseSchema,\n activateScorerVersionResponseSchema,\n restoreScorerVersionResponseSchema,\n deleteScorerVersionResponseSchema,\n compareScorerVersionsResponseSchema,\n} from '../schemas/scorer-versions';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { handleError } from './error';\nimport {\n extractConfigFromVersion,\n calculateChangedFields,\n computeVersionDiffs,\n createVersionWithRetry,\n enforceRetentionLimit,\n} from './version-helpers';\nimport type { VersionedStoreInterface } from './version-helpers';\n\nconst SNAPSHOT_CONFIG_FIELDS = [\n 'name',\n 'description',\n 'type',\n 'model',\n 'instructions',\n 'scoreRange',\n 'presetConfig',\n 'defaultSampling',\n] as const;\n\n/**\n * GET /stored/scorers/:scorerId/versions - List all versions for a scorer\n */\nexport const LIST_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: listScorerVersionsQuerySchema,\n responseSchema: listScorerVersionsResponseSchema,\n summary: 'List scorer versions',\n description: 'Returns a paginated list of all versions for a stored scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, page, perPage, orderBy }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const result = await scorerStore.listVersions({\n scorerDefinitionId: scorerId,\n page,\n perPage,\n orderBy,\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error listing scorer versions');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions - Create a new version snapshot\n */\nexport const CREATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n bodySchema: createScorerVersionBodySchema,\n responseSchema: createScorerVersionResponseSchema,\n summary: 'Create scorer version',\n description: 'Creates a new version snapshot of the current scorer configuration',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, changeMessage }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n let currentConfig: Record<string, unknown> = {};\n if (scorer.activeVersionId) {\n const activeVersion = await scorerStore.getVersion(scorer.activeVersionId);\n if (activeVersion) {\n currentConfig = extractConfigFromVersion(\n activeVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n }\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n\n // If no activeVersionId, fall back to latest version config\n if (!scorer.activeVersionId && latestVersion) {\n currentConfig = extractConfigFromVersion(\n latestVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n }\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, currentConfig);\n\n const { versionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n currentConfig,\n changedFields,\n { changeMessage },\n );\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n return version;\n } catch (error) {\n return handleError(error, 'Error creating scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/:versionId - Get a specific version\n */\nexport const GET_SCORER_VERSION_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: getScorerVersionResponseSchema,\n summary: 'Get scorer version',\n description: 'Returns a specific version of a scorer by its version ID',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const version = await scorerStore.getVersion(versionId);\n\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n return version;\n } catch (error) {\n return handleError(error, 'Error getting scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/activate - Set a version as active\n */\nexport const ACTIVATE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/activate',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: activateScorerVersionResponseSchema,\n summary: 'Activate scorer version',\n description: 'Sets a specific version as the active version for the scorer',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n await scorerStore.update({\n id: scorerId,\n activeVersionId: versionId,\n status: 'published',\n });\n\n // Clear the editor cache so subsequent requests see the new active version\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} is now active`,\n activeVersionId: versionId,\n };\n } catch (error) {\n return handleError(error, 'Error activating scorer version');\n }\n },\n});\n\n/**\n * POST /stored/scorers/:scorerId/versions/:versionId/restore - Restore scorer to a version\n */\nexport const RESTORE_SCORER_VERSION_ROUTE = createRoute({\n method: 'POST',\n path: '/stored/scorers/:scorerId/versions/:versionId/restore',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: restoreScorerVersionResponseSchema,\n summary: 'Restore scorer version',\n description: 'Restores the scorer configuration from a version, creating a new version',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const versionToRestore = await scorerStore.getVersion(versionId);\n if (!versionToRestore) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (versionToRestore.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n const restoredConfig = extractConfigFromVersion(\n versionToRestore as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n await scorerStore.update({\n id: scorerId,\n ...restoredConfig,\n });\n\n const latestVersion = await scorerStore.getLatestVersion(scorerId);\n const previousConfig = latestVersion\n ? extractConfigFromVersion(latestVersion as unknown as Record<string, unknown>, SNAPSHOT_CONFIG_FIELDS)\n : null;\n\n const changedFields = calculateChangedFields(previousConfig, restoredConfig);\n\n const { versionId: newVersionId } = await createVersionWithRetry(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n restoredConfig,\n changedFields,\n {\n changeMessage: `Restored from version ${versionToRestore.versionNumber}`,\n },\n );\n\n const newVersion = await scorerStore.getVersion(newVersionId);\n if (!newVersion) {\n throw new HTTPException(500, { message: 'Failed to retrieve created version' });\n }\n\n await enforceRetentionLimit(\n scorerStore as unknown as VersionedStoreInterface,\n scorerId,\n 'scorerDefinitionId',\n scorer.activeVersionId,\n );\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return newVersion;\n } catch (error) {\n return handleError(error, 'Error restoring scorer version');\n }\n },\n});\n\n/**\n * DELETE /stored/scorers/:scorerId/versions/:versionId - Delete a version\n */\nexport const DELETE_SCORER_VERSION_ROUTE = createRoute({\n method: 'DELETE',\n path: '/stored/scorers/:scorerId/versions/:versionId',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionIdPathParams,\n responseSchema: deleteScorerVersionResponseSchema,\n summary: 'Delete scorer version',\n description: 'Deletes a specific version (cannot delete the active version)',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, versionId }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const scorer = await scorerStore.getById(scorerId);\n if (!scorer) {\n throw new HTTPException(404, { message: `Scorer with id ${scorerId} not found` });\n }\n\n const version = await scorerStore.getVersion(versionId);\n if (!version) {\n throw new HTTPException(404, { message: `Version with id ${versionId} not found` });\n }\n if (version.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${versionId} not found for scorer ${scorerId}`,\n });\n }\n\n if (scorer.activeVersionId === versionId) {\n throw new HTTPException(400, {\n message: 'Cannot delete the active version. Activate a different version first.',\n });\n }\n\n await scorerStore.deleteVersion(versionId);\n\n // Clear the editor cache so subsequent requests see the updated config\n mastra.getEditor()?.scorer.clearCache(scorerId);\n\n return {\n success: true,\n message: `Version ${version.versionNumber} deleted successfully`,\n };\n } catch (error) {\n return handleError(error, 'Error deleting scorer version');\n }\n },\n});\n\n/**\n * GET /stored/scorers/:scorerId/versions/compare - Compare two versions\n */\nexport const COMPARE_SCORER_VERSIONS_ROUTE = createRoute({\n method: 'GET',\n path: '/stored/scorers/:scorerId/versions/compare',\n requiresAuth: true,\n responseType: 'json',\n pathParamSchema: scorerVersionPathParams,\n queryParamSchema: compareScorerVersionsQuerySchema,\n responseSchema: compareScorerVersionsResponseSchema,\n summary: 'Compare scorer versions',\n description: 'Compares two versions and returns the differences between them',\n tags: ['Scorer Versions'],\n handler: async ({ mastra, scorerId, from, to }) => {\n try {\n const storage = mastra.getStorage();\n\n if (!storage) {\n throw new HTTPException(500, { message: 'Storage is not configured' });\n }\n\n const scorerStore = await storage.getStore('scorerDefinitions');\n if (!scorerStore) {\n throw new HTTPException(500, { message: 'Scorer definitions storage domain is not available' });\n }\n\n const fromVersion = await scorerStore.getVersion(from);\n if (!fromVersion) {\n throw new HTTPException(404, { message: `Version with id ${from} not found` });\n }\n if (fromVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${from} not found for scorer ${scorerId}`,\n });\n }\n\n const toVersion = await scorerStore.getVersion(to);\n if (!toVersion) {\n throw new HTTPException(404, { message: `Version with id ${to} not found` });\n }\n if (toVersion.scorerDefinitionId !== scorerId) {\n throw new HTTPException(404, {\n message: `Version with id ${to} not found for scorer ${scorerId}`,\n });\n }\n\n const fromConfig = extractConfigFromVersion(\n fromVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n const toConfig = extractConfigFromVersion(\n toVersion as unknown as Record<string, unknown>,\n SNAPSHOT_CONFIG_FIELDS,\n );\n\n const diffs = computeVersionDiffs(fromConfig, toConfig);\n\n return {\n diffs,\n fromVersion,\n toVersion,\n };\n } catch (error) {\n return handleError(error, 'Error comparing scorer versions');\n }\n },\n});\n"]}
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunkNASA6WQI_cjs = require('./chunk-NASA6WQI.cjs');
3
+ var chunkHXICAUTW_cjs = require('./chunk-HXICAUTW.cjs');
4
4
  var chunkVTPTMQFA_cjs = require('./chunk-VTPTMQFA.cjs');
5
- var chunk2CO6GUN2_cjs = require('./chunk-2CO6GUN2.cjs');
5
+ var chunkWC4OPIB4_cjs = require('./chunk-WC4OPIB4.cjs');
6
6
  var chunkZKMVCV4G_cjs = require('./chunk-ZKMVCV4G.cjs');
7
7
  var chunkQGYUGVXG_cjs = require('./chunk-QGYUGVXG.cjs');
8
8
  var chunkB34S64RC_cjs = require('./chunk-B34S64RC.cjs');
9
- var chunk2OGP3GTW_cjs = require('./chunk-2OGP3GTW.cjs');
9
+ var chunkEGSCXVMR_cjs = require('./chunk-EGSCXVMR.cjs');
10
10
  var chunk64ITUOXI_cjs = require('./chunk-64ITUOXI.cjs');
11
11
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
12
12
  var agent = require('@mastra/core/agent');
@@ -140,7 +140,7 @@ function schemaToJsonSchema(schema) {
140
140
  if (!schema) {
141
141
  return void 0;
142
142
  }
143
- return chunk2OGP3GTW_cjs.standardSchemaToJSONSchema(chunk2OGP3GTW_cjs.toStandardSchema5(schema), { target: "draft-2020-12" });
143
+ return chunkEGSCXVMR_cjs.standardSchemaToJSONSchema(chunkEGSCXVMR_cjs.toStandardSchema5(schema), { target: "draft-2020-12" });
144
144
  }
145
145
  async function getSerializedAgentTools(tools, partial = false) {
146
146
  return Object.entries(tools || {}).reduce((acc, [key, tool]) => {
@@ -154,19 +154,19 @@ async function getSerializedAgentTools(tools, partial = false) {
154
154
  resolveLazySchema(tool.inputSchema)
155
155
  );
156
156
  if (inputSchema !== void 0) {
157
- inputSchemaForReturn = chunk2CO6GUN2_cjs.stringify(inputSchema);
157
+ inputSchemaForReturn = chunkWC4OPIB4_cjs.stringify(inputSchema);
158
158
  }
159
159
  const outputSchema = schemaToJsonSchema(
160
160
  resolveLazySchema(tool.outputSchema)
161
161
  );
162
162
  if (outputSchema !== void 0) {
163
- outputSchemaForReturn = chunk2CO6GUN2_cjs.stringify(outputSchema);
163
+ outputSchemaForReturn = chunkWC4OPIB4_cjs.stringify(outputSchema);
164
164
  }
165
165
  const requestContextSchema = schemaToJsonSchema(
166
166
  resolveLazySchema(tool.requestContextSchema)
167
167
  );
168
168
  if (requestContextSchema !== void 0) {
169
- requestContextSchemaForReturn = chunk2CO6GUN2_cjs.stringify(requestContextSchema);
169
+ requestContextSchemaForReturn = chunkWC4OPIB4_cjs.stringify(requestContextSchema);
170
170
  }
171
171
  } catch (error) {
172
172
  console.error(`Error getting serialized tool`, {
@@ -203,7 +203,8 @@ async function getSerializedSkillsFromAgent(agent, requestContext) {
203
203
  return skillsList.map((skill) => ({
204
204
  name: skill.name,
205
205
  description: skill.description,
206
- license: skill.license
206
+ license: skill.license,
207
+ path: skill.path
207
208
  }));
208
209
  } catch {
209
210
  return [];
@@ -358,7 +359,7 @@ async function formatAgentList({
358
359
  let serializedRequestContextSchema;
359
360
  if (agent.requestContextSchema) {
360
361
  try {
361
- serializedRequestContextSchema = chunk2CO6GUN2_cjs.stringify(zodToJson.zodToJsonSchema(agent.requestContextSchema));
362
+ serializedRequestContextSchema = chunkWC4OPIB4_cjs.stringify(zodToJson.zodToJsonSchema(agent.requestContextSchema));
362
363
  } catch (error) {
363
364
  logger.error("Error serializing requestContextSchema for agent", { agentName: agent.name, error });
364
365
  }
@@ -524,7 +525,7 @@ async function formatAgent({
524
525
  let serializedRequestContextSchema;
525
526
  if (agent.requestContextSchema) {
526
527
  try {
527
- serializedRequestContextSchema = chunk2CO6GUN2_cjs.stringify(zodToJson.zodToJsonSchema(agent.requestContextSchema));
528
+ serializedRequestContextSchema = chunkWC4OPIB4_cjs.stringify(zodToJson.zodToJsonSchema(agent.requestContextSchema));
528
529
  } catch (error) {
529
530
  mastra.getLogger().error("Error serializing requestContextSchema for agent", { agentName: agent.name, error });
530
531
  }
@@ -553,7 +554,7 @@ async function formatAgent({
553
554
  ...agent.toRawConfig()?.status ? { status: agent.toRawConfig().status } : {}
554
555
  };
555
556
  }
556
- var LIST_AGENTS_ROUTE = chunk2OGP3GTW_cjs.createRoute({
557
+ var LIST_AGENTS_ROUTE = chunkEGSCXVMR_cjs.createRoute({
557
558
  method: "GET",
558
559
  path: "/agents",
559
560
  responseType: "json",
@@ -630,7 +631,7 @@ var LIST_AGENTS_ROUTE = chunk2OGP3GTW_cjs.createRoute({
630
631
  }
631
632
  }
632
633
  });
633
- var GET_AGENT_BY_ID_ROUTE = chunk2OGP3GTW_cjs.createRoute({
634
+ var GET_AGENT_BY_ID_ROUTE = chunkEGSCXVMR_cjs.createRoute({
634
635
  method: "GET",
635
636
  path: "/agents/:agentId",
636
637
  responseType: "json",
@@ -659,7 +660,7 @@ var GET_AGENT_BY_ID_ROUTE = chunk2OGP3GTW_cjs.createRoute({
659
660
  }
660
661
  }
661
662
  });
662
- var CLONE_AGENT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
663
+ var CLONE_AGENT_ROUTE = chunkEGSCXVMR_cjs.createRoute({
663
664
  method: "POST",
664
665
  path: "/agents/:agentId/clone",
665
666
  responseType: "json",
@@ -682,7 +683,7 @@ var CLONE_AGENT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
682
683
  return chunkB34S64RC_cjs.handleError(new Error("Editor is not configured on the Mastra instance"), "Error cloning agent");
683
684
  }
684
685
  const agent = await getAgentFromSystem({ mastra, agentId });
685
- const cloneId = chunk2CO6GUN2_cjs.toSlug(newId || `${agentId}-clone`);
686
+ const cloneId = chunkWC4OPIB4_cjs.toSlug(newId || `${agentId}-clone`);
686
687
  const result = await editor.agent.clone(agent, {
687
688
  newId: cloneId,
688
689
  newName,
@@ -696,7 +697,7 @@ var CLONE_AGENT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
696
697
  }
697
698
  }
698
699
  });
699
- var GENERATE_AGENT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
700
+ var GENERATE_AGENT_ROUTE = chunkEGSCXVMR_cjs.createRoute({
700
701
  method: "POST",
701
702
  path: "/agents/:agentId/generate",
702
703
  responseType: "json",
@@ -753,7 +754,7 @@ var GENERATE_AGENT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
753
754
  }
754
755
  }
755
756
  });
756
- var GENERATE_LEGACY_ROUTE = chunk2OGP3GTW_cjs.createRoute({
757
+ var GENERATE_LEGACY_ROUTE = chunkEGSCXVMR_cjs.createRoute({
757
758
  method: "POST",
758
759
  path: "/agents/:agentId/generate-legacy",
759
760
  responseType: "json",
@@ -795,7 +796,7 @@ var GENERATE_LEGACY_ROUTE = chunk2OGP3GTW_cjs.createRoute({
795
796
  }
796
797
  }
797
798
  });
798
- var STREAM_GENERATE_LEGACY_ROUTE = chunk2OGP3GTW_cjs.createRoute({
799
+ var STREAM_GENERATE_LEGACY_ROUTE = chunkEGSCXVMR_cjs.createRoute({
799
800
  method: "POST",
800
801
  path: "/agents/:agentId/stream-legacy",
801
802
  responseType: "datastream-response",
@@ -844,7 +845,7 @@ var STREAM_GENERATE_LEGACY_ROUTE = chunk2OGP3GTW_cjs.createRoute({
844
845
  }
845
846
  }
846
847
  });
847
- var GET_PROVIDERS_ROUTE = chunk2OGP3GTW_cjs.createRoute({
848
+ var GET_PROVIDERS_ROUTE = chunkEGSCXVMR_cjs.createRoute({
848
849
  method: "GET",
849
850
  path: "/agents/providers",
850
851
  responseType: "json",
@@ -892,7 +893,7 @@ var GET_PROVIDERS_ROUTE = chunk2OGP3GTW_cjs.createRoute({
892
893
  }
893
894
  }
894
895
  });
895
- var GENERATE_AGENT_VNEXT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
896
+ var GENERATE_AGENT_VNEXT_ROUTE = chunkEGSCXVMR_cjs.createRoute({
896
897
  method: "POST",
897
898
  path: "/agents/:agentId/generate/vnext",
898
899
  responseType: "json",
@@ -905,7 +906,7 @@ var GENERATE_AGENT_VNEXT_ROUTE = chunk2OGP3GTW_cjs.createRoute({
905
906
  requiresAuth: true,
906
907
  handler: GENERATE_AGENT_ROUTE.handler
907
908
  });
908
- var STREAM_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
909
+ var STREAM_GENERATE_ROUTE = chunkEGSCXVMR_cjs.createRoute({
909
910
  method: "POST",
910
911
  path: "/agents/:agentId/stream",
911
912
  responseType: "stream",
@@ -963,7 +964,7 @@ var STREAM_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
963
964
  }
964
965
  }
965
966
  });
966
- var STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
967
+ var STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE = chunkEGSCXVMR_cjs.createRoute({
967
968
  method: "POST",
968
969
  path: "/agents/:agentId/stream/vnext",
969
970
  responseType: "stream",
@@ -977,7 +978,7 @@ var STREAM_GENERATE_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
977
978
  deprecated: true,
978
979
  handler: STREAM_GENERATE_ROUTE.handler
979
980
  });
980
- var APPROVE_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
981
+ var APPROVE_TOOL_CALL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
981
982
  method: "POST",
982
983
  path: "/agents/:agentId/approve-tool-call",
983
984
  responseType: "stream",
@@ -1009,7 +1010,7 @@ var APPROVE_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1009
1010
  }
1010
1011
  }
1011
1012
  });
1012
- var DECLINE_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1013
+ var DECLINE_TOOL_CALL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1013
1014
  method: "POST",
1014
1015
  path: "/agents/:agentId/decline-tool-call",
1015
1016
  responseType: "stream",
@@ -1041,7 +1042,7 @@ var DECLINE_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1041
1042
  }
1042
1043
  }
1043
1044
  });
1044
- var APPROVE_TOOL_CALL_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1045
+ var APPROVE_TOOL_CALL_GENERATE_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1045
1046
  method: "POST",
1046
1047
  path: "/agents/:agentId/approve-tool-call-generate",
1047
1048
  responseType: "json",
@@ -1072,7 +1073,7 @@ var APPROVE_TOOL_CALL_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1072
1073
  }
1073
1074
  }
1074
1075
  });
1075
- var DECLINE_TOOL_CALL_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1076
+ var DECLINE_TOOL_CALL_GENERATE_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1076
1077
  method: "POST",
1077
1078
  path: "/agents/:agentId/decline-tool-call-generate",
1078
1079
  responseType: "json",
@@ -1103,7 +1104,7 @@ var DECLINE_TOOL_CALL_GENERATE_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1103
1104
  }
1104
1105
  }
1105
1106
  });
1106
- var STREAM_NETWORK_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1107
+ var STREAM_NETWORK_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1107
1108
  method: "POST",
1108
1109
  path: "/agents/:agentId/network",
1109
1110
  responseType: "stream",
@@ -1129,7 +1130,7 @@ var STREAM_NETWORK_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1129
1130
  }
1130
1131
  }
1131
1132
  });
1132
- var APPROVE_NETWORK_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1133
+ var APPROVE_NETWORK_TOOL_CALL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1133
1134
  method: "POST",
1134
1135
  path: "/agents/:agentId/approve-network-tool-call",
1135
1136
  responseType: "stream",
@@ -1157,7 +1158,7 @@ var APPROVE_NETWORK_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1157
1158
  }
1158
1159
  }
1159
1160
  });
1160
- var DECLINE_NETWORK_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1161
+ var DECLINE_NETWORK_TOOL_CALL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1161
1162
  method: "POST",
1162
1163
  path: "/agents/:agentId/decline-network-tool-call",
1163
1164
  responseType: "stream",
@@ -1185,7 +1186,7 @@ var DECLINE_NETWORK_TOOL_CALL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1185
1186
  }
1186
1187
  }
1187
1188
  });
1188
- var UPDATE_AGENT_MODEL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1189
+ var UPDATE_AGENT_MODEL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1189
1190
  method: "POST",
1190
1191
  path: "/agents/:agentId/model",
1191
1192
  responseType: "json",
@@ -1207,7 +1208,7 @@ var UPDATE_AGENT_MODEL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1207
1208
  }
1208
1209
  }
1209
1210
  });
1210
- var RESET_AGENT_MODEL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1211
+ var RESET_AGENT_MODEL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1211
1212
  method: "POST",
1212
1213
  path: "/agents/:agentId/model/reset",
1213
1214
  responseType: "json",
@@ -1227,7 +1228,7 @@ var RESET_AGENT_MODEL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1227
1228
  }
1228
1229
  }
1229
1230
  });
1230
- var REORDER_AGENT_MODEL_LIST_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1231
+ var REORDER_AGENT_MODEL_LIST_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1231
1232
  method: "POST",
1232
1233
  path: "/agents/:agentId/models/reorder",
1233
1234
  responseType: "json",
@@ -1252,7 +1253,7 @@ var REORDER_AGENT_MODEL_LIST_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1252
1253
  }
1253
1254
  }
1254
1255
  });
1255
- var UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1256
+ var UPDATE_AGENT_MODEL_IN_MODEL_LIST_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1256
1257
  method: "POST",
1257
1258
  path: "/agents/:agentId/models/:modelConfigId",
1258
1259
  responseType: "json",
@@ -1355,7 +1356,7 @@ async function findConnectedModel(agent) {
1355
1356
  }
1356
1357
  return null;
1357
1358
  }
1358
- var ENHANCE_INSTRUCTIONS_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1359
+ var ENHANCE_INSTRUCTIONS_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1359
1360
  method: "POST",
1360
1361
  path: "/agents/:agentId/instructions/enhance",
1361
1362
  responseType: "json",
@@ -1397,7 +1398,7 @@ ${comment ? `User feedback: ${comment}` : ""}`,
1397
1398
  }
1398
1399
  }
1399
1400
  });
1400
- var STREAM_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1401
+ var STREAM_VNEXT_DEPRECATED_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1401
1402
  method: "POST",
1402
1403
  path: "/agents/:agentId/streamVNext",
1403
1404
  responseType: "stream",
@@ -1413,7 +1414,7 @@ var STREAM_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1413
1414
  throw new chunk64ITUOXI_cjs.HTTPException(410, { message: "This endpoint is deprecated. Please use /stream instead." });
1414
1415
  }
1415
1416
  });
1416
- var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1417
+ var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1417
1418
  method: "POST",
1418
1419
  path: "/agents/:agentId/stream/vnext/ui",
1419
1420
  responseType: "stream",
@@ -1438,7 +1439,7 @@ var STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1438
1439
  }
1439
1440
  }
1440
1441
  });
1441
- var STREAM_UI_MESSAGE_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1442
+ var STREAM_UI_MESSAGE_DEPRECATED_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1442
1443
  method: "POST",
1443
1444
  path: "/agents/:agentId/stream/ui",
1444
1445
  responseType: "stream",
@@ -1452,16 +1453,17 @@ var STREAM_UI_MESSAGE_DEPRECATED_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1452
1453
  deprecated: true,
1453
1454
  handler: STREAM_UI_MESSAGE_VNEXT_DEPRECATED_ROUTE.handler
1454
1455
  });
1455
- var GET_AGENT_SKILL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1456
+ var GET_AGENT_SKILL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
1456
1457
  method: "GET",
1457
1458
  path: "/agents/:agentId/skills/:skillName",
1458
1459
  responseType: "json",
1459
1460
  pathParamSchema: chunkVTPTMQFA_cjs.agentSkillPathParams,
1460
- responseSchema: chunkNASA6WQI_cjs.getAgentSkillResponseSchema,
1461
+ queryParamSchema: chunkHXICAUTW_cjs.skillDisambiguationQuerySchema,
1462
+ responseSchema: chunkHXICAUTW_cjs.getAgentSkillResponseSchema,
1461
1463
  summary: "Get agent skill",
1462
1464
  description: "Returns details for a specific skill available to the agent via its workspace",
1463
1465
  tags: ["Agents", "Skills"],
1464
- handler: async ({ mastra, agentId, skillName, requestContext }) => {
1466
+ handler: async ({ mastra, agentId, skillName, path, requestContext }) => {
1465
1467
  try {
1466
1468
  const agent = agentId ? mastra.getAgentById(agentId) : null;
1467
1469
  if (!agent) {
@@ -1471,9 +1473,10 @@ var GET_AGENT_SKILL_ROUTE = chunk2OGP3GTW_cjs.createRoute({
1471
1473
  if (!workspace?.skills) {
1472
1474
  throw new chunk64ITUOXI_cjs.HTTPException(404, { message: "Agent does not have skills configured" });
1473
1475
  }
1474
- const skill = await workspace.skills.get(skillName);
1476
+ const identifier = path ? decodeURIComponent(path) : skillName;
1477
+ const skill = await workspace.skills.get(identifier);
1475
1478
  if (!skill) {
1476
- throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Skill "${skillName}" not found` });
1479
+ throw new chunk64ITUOXI_cjs.HTTPException(404, { message: `Skill "${identifier}" not found` });
1477
1480
  }
1478
1481
  return {
1479
1482
  name: skill.name,
@@ -1527,5 +1530,5 @@ exports.getSerializedProcessors = getSerializedProcessors;
1527
1530
  exports.getSerializedSkillsFromAgent = getSerializedSkillsFromAgent;
1528
1531
  exports.getWorkspaceToolsFromAgent = getWorkspaceToolsFromAgent;
1529
1532
  exports.isProviderConnected = isProviderConnected;
1530
- //# sourceMappingURL=chunk-E3ZR4JAK.cjs.map
1531
- //# sourceMappingURL=chunk-E3ZR4JAK.cjs.map
1533
+ //# sourceMappingURL=chunk-FPEX6KOJ.cjs.map
1534
+ //# sourceMappingURL=chunk-FPEX6KOJ.cjs.map