@mastra/core 0.21.1 → 0.22.0-alpha.1

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 (277) hide show
  1. package/CHANGELOG.md +121 -0
  2. package/dist/agent/__tests__/mock-model.d.ts +6 -0
  3. package/dist/agent/__tests__/mock-model.d.ts.map +1 -0
  4. package/dist/agent/agent.d.ts +10 -4
  5. package/dist/agent/agent.d.ts.map +1 -1
  6. package/dist/agent/agent.types.d.ts +4 -3
  7. package/dist/agent/agent.types.d.ts.map +1 -1
  8. package/dist/agent/index.cjs +13 -13
  9. package/dist/agent/index.js +2 -2
  10. package/dist/agent/input-processor/index.cjs +6 -6
  11. package/dist/agent/input-processor/index.js +1 -1
  12. package/dist/agent/message-list/index.d.ts +14 -1
  13. package/dist/agent/message-list/index.d.ts.map +1 -1
  14. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts +22 -0
  15. package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts.map +1 -0
  16. package/dist/agent/test-utils.d.ts +1 -0
  17. package/dist/agent/test-utils.d.ts.map +1 -1
  18. package/dist/agent/types.d.ts +11 -1
  19. package/dist/agent/types.d.ts.map +1 -1
  20. package/dist/agent/utils.d.ts +1 -1
  21. package/dist/agent/utils.d.ts.map +1 -1
  22. package/dist/agent/workflows/prepare-stream/index.d.ts +7 -4
  23. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  24. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +7 -4
  25. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
  26. package/dist/agent/workflows/prepare-stream/schema.d.ts +4 -4
  27. package/dist/agent/workflows/prepare-stream/stream-step.d.ts +3 -0
  28. package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
  29. package/dist/ai-tracing/chunk-tracing.d.ts +76 -0
  30. package/dist/ai-tracing/chunk-tracing.d.ts.map +1 -0
  31. package/dist/ai-tracing/exporters/base.d.ts +111 -0
  32. package/dist/ai-tracing/exporters/base.d.ts.map +1 -0
  33. package/dist/ai-tracing/exporters/cloud.d.ts +6 -8
  34. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -1
  35. package/dist/ai-tracing/exporters/console.d.ts +6 -6
  36. package/dist/ai-tracing/exporters/console.d.ts.map +1 -1
  37. package/dist/ai-tracing/exporters/index.d.ts +1 -0
  38. package/dist/ai-tracing/exporters/index.d.ts.map +1 -1
  39. package/dist/ai-tracing/index.cjs +48 -32
  40. package/dist/ai-tracing/index.d.ts +1 -0
  41. package/dist/ai-tracing/index.d.ts.map +1 -1
  42. package/dist/ai-tracing/index.js +1 -1
  43. package/dist/ai-tracing/spans/base.d.ts +4 -1
  44. package/dist/ai-tracing/spans/base.d.ts.map +1 -1
  45. package/dist/ai-tracing/spans/default.d.ts.map +1 -1
  46. package/dist/ai-tracing/tracers/base.d.ts +15 -1
  47. package/dist/ai-tracing/tracers/base.d.ts.map +1 -1
  48. package/dist/ai-tracing/types.d.ts +85 -11
  49. package/dist/ai-tracing/types.d.ts.map +1 -1
  50. package/dist/ai-tracing/utils.d.ts +14 -0
  51. package/dist/ai-tracing/utils.d.ts.map +1 -1
  52. package/dist/{chunk-FESSBG5D.cjs → chunk-34L2Z6PH.cjs} +12 -12
  53. package/dist/{chunk-FESSBG5D.cjs.map → chunk-34L2Z6PH.cjs.map} +1 -1
  54. package/dist/{chunk-3V4O35FO.js → chunk-3CVE7NQC.js} +729 -268
  55. package/dist/chunk-3CVE7NQC.js.map +1 -0
  56. package/dist/{chunk-44ODA6L3.cjs → chunk-5GIAZ3CH.cjs} +736 -271
  57. package/dist/chunk-5GIAZ3CH.cjs.map +1 -0
  58. package/dist/{chunk-5DZ4RYWL.js → chunk-5NYWRAJN.js} +3 -3
  59. package/dist/{chunk-5DZ4RYWL.js.map → chunk-5NYWRAJN.js.map} +1 -1
  60. package/dist/{chunk-APY2BE4K.cjs → chunk-634YFL42.cjs} +75 -49
  61. package/dist/chunk-634YFL42.cjs.map +1 -0
  62. package/dist/{chunk-HP7B2TQQ.js → chunk-A3TQYIIR.js} +198 -37
  63. package/dist/chunk-A3TQYIIR.js.map +1 -0
  64. package/dist/{chunk-KAV4EP3T.cjs → chunk-A4B6IAKN.cjs} +4 -4
  65. package/dist/{chunk-KAV4EP3T.cjs.map → chunk-A4B6IAKN.cjs.map} +1 -1
  66. package/dist/{chunk-T3PBU7JK.js → chunk-AGD5B3FB.js} +74 -48
  67. package/dist/chunk-AGD5B3FB.js.map +1 -0
  68. package/dist/{chunk-AJK7QPSD.cjs → chunk-CAZTWPDK.cjs} +11 -11
  69. package/dist/{chunk-AJK7QPSD.cjs.map → chunk-CAZTWPDK.cjs.map} +1 -1
  70. package/dist/{chunk-HBJVAMCS.js → chunk-F7OMDF5K.js} +93 -58
  71. package/dist/chunk-F7OMDF5K.js.map +1 -0
  72. package/dist/{chunk-DGQW5VRR.cjs → chunk-FMNZ3BPT.cjs} +202 -40
  73. package/dist/chunk-FMNZ3BPT.cjs.map +1 -0
  74. package/dist/{chunk-5NR2GY4U.js → chunk-GB5BIA4V.js} +5 -3
  75. package/dist/chunk-GB5BIA4V.js.map +1 -0
  76. package/dist/{chunk-A3QHQYMC.js → chunk-HGNRQ3OG.js} +12 -2
  77. package/dist/chunk-HGNRQ3OG.js.map +1 -0
  78. package/dist/{chunk-NHKXTGR6.js → chunk-HZIF7HQC.js} +3 -3
  79. package/dist/{chunk-NHKXTGR6.js.map → chunk-HZIF7HQC.js.map} +1 -1
  80. package/dist/{chunk-MUAFIPD7.js → chunk-ITFEGBP2.js} +4 -4
  81. package/dist/{chunk-MUAFIPD7.js.map → chunk-ITFEGBP2.js.map} +1 -1
  82. package/dist/{chunk-J2OKI2L3.js → chunk-KQBF5ZEN.js} +10 -5
  83. package/dist/chunk-KQBF5ZEN.js.map +1 -0
  84. package/dist/chunk-LJFJTTZQ.cjs +4 -0
  85. package/dist/chunk-LJFJTTZQ.cjs.map +1 -0
  86. package/dist/{chunk-OXAN5SM7.cjs → chunk-LRSB62Z6.cjs} +12 -2
  87. package/dist/chunk-LRSB62Z6.cjs.map +1 -0
  88. package/dist/{chunk-3ORA5EFD.cjs → chunk-LZUSZT7R.cjs} +5 -3
  89. package/dist/chunk-LZUSZT7R.cjs.map +1 -0
  90. package/dist/{chunk-U6CUPKV2.js → chunk-MHICZASQ.js} +5 -5
  91. package/dist/{chunk-U6CUPKV2.js.map → chunk-MHICZASQ.js.map} +1 -1
  92. package/dist/{chunk-H4KO46HZ.js → chunk-MKCC5K77.js} +3 -3
  93. package/dist/{chunk-H4KO46HZ.js.map → chunk-MKCC5K77.js.map} +1 -1
  94. package/dist/{chunk-W3DS6F6G.cjs → chunk-O4KVF3MI.cjs} +4 -4
  95. package/dist/{chunk-W3DS6F6G.cjs.map → chunk-O4KVF3MI.cjs.map} +1 -1
  96. package/dist/{chunk-462DRETM.cjs → chunk-QBPTDMR7.cjs} +121 -85
  97. package/dist/chunk-QBPTDMR7.cjs.map +1 -0
  98. package/dist/{chunk-XVREJCOW.cjs → chunk-RWWOJXMF.cjs} +6 -6
  99. package/dist/{chunk-XVREJCOW.cjs.map → chunk-RWWOJXMF.cjs.map} +1 -1
  100. package/dist/{chunk-NUURZ3AY.js → chunk-RXBG6UV2.js} +7 -4
  101. package/dist/chunk-RXBG6UV2.js.map +1 -0
  102. package/dist/{chunk-F6BMIPYW.js → chunk-SF75RENF.js} +3 -3
  103. package/dist/{chunk-F6BMIPYW.js.map → chunk-SF75RENF.js.map} +1 -1
  104. package/dist/{chunk-SE4PA467.cjs → chunk-VF676YCO.cjs} +2 -2
  105. package/dist/chunk-VF676YCO.cjs.map +1 -0
  106. package/dist/{chunk-FLXB6WXO.js → chunk-VQLW7LPO.js} +5 -3
  107. package/dist/chunk-VQLW7LPO.js.map +1 -0
  108. package/dist/{chunk-6OLRLZJ3.js → chunk-WM4RO23J.js} +2 -2
  109. package/dist/chunk-WM4RO23J.js.map +1 -0
  110. package/dist/{chunk-OY6UJ3QL.cjs → chunk-YGL6E6PD.cjs} +5 -3
  111. package/dist/chunk-YGL6E6PD.cjs.map +1 -0
  112. package/dist/{chunk-XHPBKALR.cjs → chunk-YOVX3R5U.cjs} +17 -14
  113. package/dist/chunk-YOVX3R5U.cjs.map +1 -0
  114. package/dist/{chunk-L5A4MRCK.cjs → chunk-ZABG3SZ2.cjs} +4 -4
  115. package/dist/{chunk-L5A4MRCK.cjs.map → chunk-ZABG3SZ2.cjs.map} +1 -1
  116. package/dist/{chunk-BV6CD4IZ.cjs → chunk-ZDW322JC.cjs} +12 -7
  117. package/dist/chunk-ZDW322JC.cjs.map +1 -0
  118. package/dist/chunk-ZV5CC35D.js +3 -0
  119. package/dist/chunk-ZV5CC35D.js.map +1 -0
  120. package/dist/index.cjs +56 -52
  121. package/dist/index.js +11 -11
  122. package/dist/integration/index.cjs +3 -3
  123. package/dist/integration/index.js +1 -1
  124. package/dist/llm/index.cjs +10 -6
  125. package/dist/llm/index.d.ts +1 -0
  126. package/dist/llm/index.d.ts.map +1 -1
  127. package/dist/llm/index.js +1 -1
  128. package/dist/llm/model/embedding-router.d.ts +50 -0
  129. package/dist/llm/model/embedding-router.d.ts.map +1 -0
  130. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  131. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  132. package/dist/llm/model/index.d.ts +1 -0
  133. package/dist/llm/model/index.d.ts.map +1 -1
  134. package/dist/llm/model/model.loop.d.ts +1 -1
  135. package/dist/llm/model/model.loop.d.ts.map +1 -1
  136. package/dist/llm/model/provider-options.d.ts +42 -0
  137. package/dist/llm/model/provider-options.d.ts.map +1 -0
  138. package/dist/llm/model/provider-types.generated.d.ts +30 -3
  139. package/dist/llm/model/router.d.ts.map +1 -1
  140. package/dist/loop/index.cjs +2 -2
  141. package/dist/loop/index.js +1 -1
  142. package/dist/loop/loop.d.ts.map +1 -1
  143. package/dist/loop/network/index.d.ts +4 -1
  144. package/dist/loop/network/index.d.ts.map +1 -1
  145. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  146. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  147. package/dist/loop/test-utils/mock-server-response.d.ts +7 -2
  148. package/dist/loop/test-utils/mock-server-response.d.ts.map +1 -1
  149. package/dist/loop/test-utils/options.d.ts.map +1 -1
  150. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  151. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  152. package/dist/loop/test-utils/telemetry.d.ts.map +1 -1
  153. package/dist/loop/test-utils/textStream.d.ts.map +1 -1
  154. package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -1
  155. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  156. package/dist/loop/test-utils/utils.d.ts +2 -0
  157. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  158. package/dist/loop/types.d.ts +2 -1
  159. package/dist/loop/types.d.ts.map +1 -1
  160. package/dist/loop/workflows/agentic-execution/index.d.ts +42 -42
  161. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +28 -28
  162. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  163. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +14 -14
  164. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  165. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  166. package/dist/loop/workflows/agentic-loop/index.d.ts +42 -42
  167. package/dist/loop/workflows/schema.d.ts +14 -14
  168. package/dist/mastra/index.cjs +2 -2
  169. package/dist/mastra/index.js +1 -1
  170. package/dist/memory/index.cjs +4 -4
  171. package/dist/memory/index.js +1 -1
  172. package/dist/memory/memory.d.ts +3 -2
  173. package/dist/memory/memory.d.ts.map +1 -1
  174. package/dist/memory/types.d.ts +10 -1
  175. package/dist/memory/types.d.ts.map +1 -1
  176. package/dist/models-dev-4VGIWYS3.js +3 -0
  177. package/dist/{models-dev-3VEABUH4.js.map → models-dev-4VGIWYS3.js.map} +1 -1
  178. package/dist/models-dev-AXZASLL2.cjs +12 -0
  179. package/dist/{models-dev-L42ORGVT.cjs.map → models-dev-AXZASLL2.cjs.map} +1 -1
  180. package/dist/netlify-26MMY5X4.js +3 -0
  181. package/dist/{netlify-NYFKA6UB.js.map → netlify-26MMY5X4.js.map} +1 -1
  182. package/dist/netlify-F3MVGV4Y.cjs +12 -0
  183. package/dist/{netlify-3B6HDHRP.cjs.map → netlify-F3MVGV4Y.cjs.map} +1 -1
  184. package/dist/processors/index.cjs +11 -11
  185. package/dist/processors/index.js +1 -1
  186. package/dist/provider-registry.json +62 -8
  187. package/dist/relevance/index.cjs +4 -4
  188. package/dist/relevance/index.js +1 -1
  189. package/dist/scores/index.cjs +9 -9
  190. package/dist/scores/index.js +2 -2
  191. package/dist/scores/scoreTraces/index.cjs +8 -8
  192. package/dist/scores/scoreTraces/index.js +3 -3
  193. package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -1
  194. package/dist/storage/index.cjs +5 -3
  195. package/dist/storage/index.cjs.map +1 -1
  196. package/dist/storage/index.js +3 -1
  197. package/dist/storage/index.js.map +1 -1
  198. package/dist/stream/RunOutput.d.ts +72 -0
  199. package/dist/stream/RunOutput.d.ts.map +1 -0
  200. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  201. package/dist/stream/aisdk/v5/output.d.ts +11 -12
  202. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  203. package/dist/stream/base/base.d.ts +7 -0
  204. package/dist/stream/base/base.d.ts.map +1 -0
  205. package/dist/stream/base/consume-stream.d.ts +5 -0
  206. package/dist/stream/base/consume-stream.d.ts.map +1 -0
  207. package/dist/stream/base/output-format-handlers.d.ts +1 -2
  208. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  209. package/dist/stream/base/output.d.ts.map +1 -1
  210. package/dist/stream/index.cjs +14 -10
  211. package/dist/stream/index.d.ts +2 -1
  212. package/dist/stream/index.d.ts.map +1 -1
  213. package/dist/stream/index.js +2 -2
  214. package/dist/stream/types.d.ts +18 -2
  215. package/dist/stream/types.d.ts.map +1 -1
  216. package/dist/test-utils/llm-mock.cjs +2 -2
  217. package/dist/test-utils/llm-mock.js +1 -1
  218. package/dist/tools/index.cjs +6 -6
  219. package/dist/tools/index.js +2 -2
  220. package/dist/tools/is-vercel-tool.cjs +2 -2
  221. package/dist/tools/is-vercel-tool.js +1 -1
  222. package/dist/tools/stream.d.ts +7 -0
  223. package/dist/tools/stream.d.ts.map +1 -1
  224. package/dist/tools/tool-builder/builder.d.ts +75 -2
  225. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  226. package/dist/tools/tool.d.ts +2 -2
  227. package/dist/tools/tool.d.ts.map +1 -1
  228. package/dist/tools/types.d.ts +17 -12
  229. package/dist/tools/types.d.ts.map +1 -1
  230. package/dist/utils.cjs +17 -17
  231. package/dist/utils.d.ts +1 -0
  232. package/dist/utils.d.ts.map +1 -1
  233. package/dist/utils.js +1 -1
  234. package/dist/workflows/default.d.ts +1 -0
  235. package/dist/workflows/default.d.ts.map +1 -1
  236. package/dist/workflows/evented/index.cjs +10 -10
  237. package/dist/workflows/evented/index.js +1 -1
  238. package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -1
  239. package/dist/workflows/evented/workflow.d.ts +5 -3
  240. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  241. package/dist/workflows/index.cjs +12 -12
  242. package/dist/workflows/index.js +1 -1
  243. package/dist/workflows/legacy/index.cjs +22 -22
  244. package/dist/workflows/legacy/index.js +1 -1
  245. package/dist/workflows/legacy/machine.d.ts +1 -1
  246. package/dist/workflows/step.d.ts +4 -1
  247. package/dist/workflows/step.d.ts.map +1 -1
  248. package/dist/workflows/types.d.ts +1 -0
  249. package/dist/workflows/types.d.ts.map +1 -1
  250. package/dist/workflows/workflow.d.ts +33 -24
  251. package/dist/workflows/workflow.d.ts.map +1 -1
  252. package/package.json +15 -12
  253. package/src/llm/model/provider-types.generated.d.ts +30 -3
  254. package/dist/chunk-3ORA5EFD.cjs.map +0 -1
  255. package/dist/chunk-3V4O35FO.js.map +0 -1
  256. package/dist/chunk-44ODA6L3.cjs.map +0 -1
  257. package/dist/chunk-462DRETM.cjs.map +0 -1
  258. package/dist/chunk-5NR2GY4U.js.map +0 -1
  259. package/dist/chunk-6OLRLZJ3.js.map +0 -1
  260. package/dist/chunk-A3QHQYMC.js.map +0 -1
  261. package/dist/chunk-APY2BE4K.cjs.map +0 -1
  262. package/dist/chunk-BV6CD4IZ.cjs.map +0 -1
  263. package/dist/chunk-DGQW5VRR.cjs.map +0 -1
  264. package/dist/chunk-FLXB6WXO.js.map +0 -1
  265. package/dist/chunk-HBJVAMCS.js.map +0 -1
  266. package/dist/chunk-HP7B2TQQ.js.map +0 -1
  267. package/dist/chunk-J2OKI2L3.js.map +0 -1
  268. package/dist/chunk-NUURZ3AY.js.map +0 -1
  269. package/dist/chunk-OXAN5SM7.cjs.map +0 -1
  270. package/dist/chunk-OY6UJ3QL.cjs.map +0 -1
  271. package/dist/chunk-SE4PA467.cjs.map +0 -1
  272. package/dist/chunk-T3PBU7JK.js.map +0 -1
  273. package/dist/chunk-XHPBKALR.cjs.map +0 -1
  274. package/dist/models-dev-3VEABUH4.js +0 -3
  275. package/dist/models-dev-L42ORGVT.cjs +0 -12
  276. package/dist/netlify-3B6HDHRP.cjs +0 -12
  277. package/dist/netlify-NYFKA6UB.js +0 -3
@@ -1,4 +1,4 @@
1
- import { AISpanType } from './chunk-3V4O35FO.js';
1
+ import { AISpanType } from './chunk-3CVE7NQC.js';
2
2
  import { z } from 'zod';
3
3
 
4
4
  var scoringExtractStepResultSchema = z.record(z.string(), z.any()).optional();
@@ -38,5 +38,5 @@ var saveScorePayloadSchema = z.object({
38
38
  });
39
39
 
40
40
  export { saveScorePayloadSchema, scoreResultSchema, scoringExtractStepResultSchema, scoringValueSchema };
41
- //# sourceMappingURL=chunk-5DZ4RYWL.js.map
42
- //# sourceMappingURL=chunk-5DZ4RYWL.js.map
41
+ //# sourceMappingURL=chunk-5NYWRAJN.js.map
42
+ //# sourceMappingURL=chunk-5NYWRAJN.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scores/types.ts"],"names":[],"mappings":"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","file":"chunk-5DZ4RYWL.js","sourcesContent":["import type { CoreMessage, CoreSystemMessage } from 'ai';\nimport { z } from 'zod';\nimport type { UIMessageWithMetadata } from '../agent';\nimport { AISpanType } from '../ai-tracing';\nimport type { TracingContext } from '../ai-tracing';\n\nexport type ScoringSamplingConfig = { type: 'none' } | { type: 'ratio'; rate: number };\n\nexport type ScoringSource = 'LIVE' | 'TEST';\n\nexport type ScoringEntityType = 'AGENT' | 'WORKFLOW' | AISpanType;\n\nexport type ScoringPrompts = {\n description: string;\n prompt: string;\n};\n\nexport type ScoringInput = {\n runId?: string;\n input?: any;\n output: any;\n additionalContext?: Record<string, any>;\n runtimeContext?: Record<string, any>;\n tracingContext?: TracingContext;\n};\n\nexport type ScoringHookInput = {\n runId?: string;\n scorer: Record<string, any>;\n input: any;\n output: any;\n metadata?: Record<string, any>;\n additionalContext?: Record<string, any>;\n source: ScoringSource;\n entity: Record<string, any>;\n entityType: ScoringEntityType;\n runtimeContext?: Record<string, any>;\n tracingContext?: TracingContext;\n structuredOutput?: boolean;\n traceId?: string;\n spanId?: string;\n resourceId?: string;\n threadId?: string;\n};\n\nexport const scoringExtractStepResultSchema = z.record(z.string(), z.any()).optional();\n\nexport type ScoringExtractStepResult = z.infer<typeof scoringExtractStepResultSchema>;\n\nexport const scoringValueSchema = z.number();\n\nexport const scoreResultSchema = z.object({\n result: z.record(z.string(), z.any()).optional(),\n score: scoringValueSchema,\n prompt: z.string().optional(),\n});\n\nexport type ScoringAnalyzeStepResult = z.infer<typeof scoreResultSchema>;\n\nexport type ScoringInputWithExtractStepResult<TExtract = any> = ScoringInput & {\n runId: string;\n extractStepResult?: TExtract;\n extractPrompt?: string;\n};\n\nexport type ScoringInputWithExtractStepResultAndAnalyzeStepResult<\n TExtract = any,\n TScore = any,\n> = ScoringInputWithExtractStepResult<TExtract> & {\n score: number;\n analyzeStepResult?: TScore;\n analyzePrompt?: string;\n};\n\nexport type ScoringInputWithExtractStepResultAndScoreAndReason =\n ScoringInputWithExtractStepResultAndAnalyzeStepResult & {\n reason?: string;\n reasonPrompt?: string;\n };\n\nexport type ScoreRowData = ScoringInputWithExtractStepResultAndScoreAndReason &\n ScoringHookInput & {\n id: string;\n entityId: string;\n scorerId: string;\n createdAt: Date;\n updatedAt: Date;\n preprocessStepResult?: Record<string, any>;\n preprocessPrompt?: string;\n generateScorePrompt?: string;\n generateReasonPrompt?: string;\n };\n\nexport type ExtractionStepFn = (input: ScoringInput) => Promise<Record<string, any>>;\n\nexport type AnalyzeStepFn = (input: ScoringInputWithExtractStepResult) => Promise<ScoringAnalyzeStepResult>;\n\nexport type ReasonStepFn = (\n input: ScoringInputWithExtractStepResultAndAnalyzeStepResult,\n) => Promise<{ reason: string; reasonPrompt?: string } | null>;\n\nexport type ScorerOptions = {\n name: string;\n description: string;\n extract?: ExtractionStepFn;\n analyze: AnalyzeStepFn;\n reason?: ReasonStepFn;\n metadata?: Record<string, any>;\n isLLMScorer?: boolean;\n};\n\nexport type ScorerRunInputForAgent = {\n inputMessages: UIMessageWithMetadata[];\n rememberedMessages: UIMessageWithMetadata[];\n systemMessages: CoreMessage[];\n taggedSystemMessages: Record<string, CoreSystemMessage[]>;\n};\n\nexport type ScorerRunOutputForAgent = UIMessageWithMetadata[];\n\nexport const saveScorePayloadSchema = z.object({\n runId: z.string(),\n scorerId: z.string(),\n entityId: z.string(),\n score: z.number(),\n input: z.any().optional(),\n output: z.any(),\n source: z.enum(['LIVE', 'TEST']),\n entityType: z.enum(['AGENT', 'WORKFLOW', ...Object.values(AISpanType)]).optional(),\n scorer: z.record(z.string(), z.any()),\n\n traceId: z.string().optional(),\n spanId: z.string().optional(),\n preprocessStepResult: z.record(z.string(), z.any()).optional(),\n extractStepResult: z.record(z.string(), z.any()).optional(),\n analyzeStepResult: z.record(z.string(), z.any()).optional(),\n reason: z.string().optional(),\n metadata: z.record(z.string(), z.any()).optional(),\n preprocessPrompt: z.string().optional(),\n extractPrompt: z.string().optional(),\n generateScorePrompt: z.string().optional(),\n generateReasonPrompt: z.string().optional(),\n analyzePrompt: z.string().optional(),\n additionalContext: z.record(z.string(), z.any()).optional(),\n runtimeContext: z.record(z.string(), z.any()).optional(),\n entity: z.record(z.string(), z.any()).optional(),\n resourceId: z.string().optional(),\n threadId: z.string().optional(),\n});\n\nexport type ValidatedSaveScorePayload = z.infer<typeof saveScorePayloadSchema>;\n"]}
1
+ {"version":3,"sources":["../src/scores/types.ts"],"names":[],"mappings":";;;AA6CO,IAAM,8BAAA,GAAiC,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA;AAIrE,IAAM,kBAAA,GAAqB,EAAE,MAAA;AAE7B,IAAM,iBAAA,GAAoB,EAAE,MAAA,CAAO;AAAA,EACxC,MAAA,EAAQ,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC/C,KAAA,EAAO,kBAAA;AAAA,EACP,MAAA,EAAQ,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AACrB,CAAC;AAiEM,IAAM,sBAAA,GAAyB,EAAE,MAAA,CAAO;AAAA,EAC7C,KAAA,EAAO,EAAE,MAAA,EAAO;AAAA,EAChB,QAAA,EAAU,EAAE,MAAA,EAAO;AAAA,EACnB,QAAA,EAAU,EAAE,MAAA,EAAO;AAAA,EACnB,KAAA,EAAO,EAAE,MAAA,EAAO;AAAA,EAChB,KAAA,EAAO,CAAA,CAAE,GAAA,EAAI,CAAE,QAAA,EAAS;AAAA,EACxB,MAAA,EAAQ,EAAE,GAAA,EAAI;AAAA,EACd,QAAQ,CAAA,CAAE,IAAA,CAAK,CAAC,MAAA,EAAQ,MAAM,CAAC,CAAA;AAAA,EAC/B,UAAA,EAAY,CAAA,CAAE,IAAA,CAAK,CAAC,OAAA,EAAS,UAAA,EAAY,GAAG,MAAA,CAAO,MAAA,CAAO,UAAU,CAAC,CAAC,EAAE,QAAA,EAAS;AAAA,EACjF,MAAA,EAAQ,EAAE,MAAA,CAAO,CAAA,CAAE,QAAO,EAAG,CAAA,CAAE,KAAK,CAAA;AAAA,EAEpC,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,MAAA,EAAQ,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC5B,oBAAA,EAAsB,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC7D,iBAAA,EAAmB,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC1D,iBAAA,EAAmB,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC1D,MAAA,EAAQ,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC5B,QAAA,EAAU,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EACjD,gBAAA,EAAkB,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACtC,aAAA,EAAe,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACnC,mBAAA,EAAqB,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACzC,oBAAA,EAAsB,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC1C,aAAA,EAAe,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EACnC,iBAAA,EAAmB,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC1D,cAAA,EAAgB,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EACvD,MAAA,EAAQ,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,GAAA,EAAK,CAAA,CAAE,QAAA,EAAS;AAAA,EAC/C,UAAA,EAAY,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAChC,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA;AACvB,CAAC","file":"chunk-5NYWRAJN.js","sourcesContent":["import type { CoreMessage, CoreSystemMessage } from 'ai';\nimport { z } from 'zod';\nimport type { UIMessageWithMetadata } from '../agent';\nimport { AISpanType } from '../ai-tracing';\nimport type { TracingContext } from '../ai-tracing';\n\nexport type ScoringSamplingConfig = { type: 'none' } | { type: 'ratio'; rate: number };\n\nexport type ScoringSource = 'LIVE' | 'TEST';\n\nexport type ScoringEntityType = 'AGENT' | 'WORKFLOW' | AISpanType;\n\nexport type ScoringPrompts = {\n description: string;\n prompt: string;\n};\n\nexport type ScoringInput = {\n runId?: string;\n input?: any;\n output: any;\n additionalContext?: Record<string, any>;\n runtimeContext?: Record<string, any>;\n tracingContext?: TracingContext;\n};\n\nexport type ScoringHookInput = {\n runId?: string;\n scorer: Record<string, any>;\n input: any;\n output: any;\n metadata?: Record<string, any>;\n additionalContext?: Record<string, any>;\n source: ScoringSource;\n entity: Record<string, any>;\n entityType: ScoringEntityType;\n runtimeContext?: Record<string, any>;\n tracingContext?: TracingContext;\n structuredOutput?: boolean;\n traceId?: string;\n spanId?: string;\n resourceId?: string;\n threadId?: string;\n};\n\nexport const scoringExtractStepResultSchema = z.record(z.string(), z.any()).optional();\n\nexport type ScoringExtractStepResult = z.infer<typeof scoringExtractStepResultSchema>;\n\nexport const scoringValueSchema = z.number();\n\nexport const scoreResultSchema = z.object({\n result: z.record(z.string(), z.any()).optional(),\n score: scoringValueSchema,\n prompt: z.string().optional(),\n});\n\nexport type ScoringAnalyzeStepResult = z.infer<typeof scoreResultSchema>;\n\nexport type ScoringInputWithExtractStepResult<TExtract = any> = ScoringInput & {\n runId: string;\n extractStepResult?: TExtract;\n extractPrompt?: string;\n};\n\nexport type ScoringInputWithExtractStepResultAndAnalyzeStepResult<\n TExtract = any,\n TScore = any,\n> = ScoringInputWithExtractStepResult<TExtract> & {\n score: number;\n analyzeStepResult?: TScore;\n analyzePrompt?: string;\n};\n\nexport type ScoringInputWithExtractStepResultAndScoreAndReason =\n ScoringInputWithExtractStepResultAndAnalyzeStepResult & {\n reason?: string;\n reasonPrompt?: string;\n };\n\nexport type ScoreRowData = ScoringInputWithExtractStepResultAndScoreAndReason &\n ScoringHookInput & {\n id: string;\n entityId: string;\n scorerId: string;\n createdAt: Date;\n updatedAt: Date;\n preprocessStepResult?: Record<string, any>;\n preprocessPrompt?: string;\n generateScorePrompt?: string;\n generateReasonPrompt?: string;\n };\n\nexport type ExtractionStepFn = (input: ScoringInput) => Promise<Record<string, any>>;\n\nexport type AnalyzeStepFn = (input: ScoringInputWithExtractStepResult) => Promise<ScoringAnalyzeStepResult>;\n\nexport type ReasonStepFn = (\n input: ScoringInputWithExtractStepResultAndAnalyzeStepResult,\n) => Promise<{ reason: string; reasonPrompt?: string } | null>;\n\nexport type ScorerOptions = {\n name: string;\n description: string;\n extract?: ExtractionStepFn;\n analyze: AnalyzeStepFn;\n reason?: ReasonStepFn;\n metadata?: Record<string, any>;\n isLLMScorer?: boolean;\n};\n\nexport type ScorerRunInputForAgent = {\n inputMessages: UIMessageWithMetadata[];\n rememberedMessages: UIMessageWithMetadata[];\n systemMessages: CoreMessage[];\n taggedSystemMessages: Record<string, CoreSystemMessage[]>;\n};\n\nexport type ScorerRunOutputForAgent = UIMessageWithMetadata[];\n\nexport const saveScorePayloadSchema = z.object({\n runId: z.string(),\n scorerId: z.string(),\n entityId: z.string(),\n score: z.number(),\n input: z.any().optional(),\n output: z.any(),\n source: z.enum(['LIVE', 'TEST']),\n entityType: z.enum(['AGENT', 'WORKFLOW', ...Object.values(AISpanType)]).optional(),\n scorer: z.record(z.string(), z.any()),\n\n traceId: z.string().optional(),\n spanId: z.string().optional(),\n preprocessStepResult: z.record(z.string(), z.any()).optional(),\n extractStepResult: z.record(z.string(), z.any()).optional(),\n analyzeStepResult: z.record(z.string(), z.any()).optional(),\n reason: z.string().optional(),\n metadata: z.record(z.string(), z.any()).optional(),\n preprocessPrompt: z.string().optional(),\n extractPrompt: z.string().optional(),\n generateScorePrompt: z.string().optional(),\n generateReasonPrompt: z.string().optional(),\n analyzePrompt: z.string().optional(),\n additionalContext: z.record(z.string(), z.any()).optional(),\n runtimeContext: z.record(z.string(), z.any()).optional(),\n entity: z.record(z.string(), z.any()).optional(),\n resourceId: z.string().optional(),\n threadId: z.string().optional(),\n});\n\nexport type ValidatedSaveScorePayload = z.infer<typeof saveScorePayloadSchema>;\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunk44ODA6L3_cjs = require('./chunk-44ODA6L3.cjs');
3
+ var chunk5GIAZ3CH_cjs = require('./chunk-5GIAZ3CH.cjs');
4
4
  var chunkWM4VQWOZ_cjs = require('./chunk-WM4VQWOZ.cjs');
5
5
  var providerUtilsV5 = require('@ai-sdk/provider-utils-v5');
6
6
  var crypto = require('crypto');
@@ -613,7 +613,7 @@ function convertDataContentToBase64String(content) {
613
613
  var downloadFromUrl = async ({ url, downloadRetries }) => {
614
614
  const urlText = url.toString();
615
615
  try {
616
- const response = await chunk44ODA6L3_cjs.fetchWithRetry(
616
+ const response = await chunk5GIAZ3CH_cjs.fetchWithRetry(
617
617
  urlText,
618
618
  {
619
619
  method: "GET"
@@ -796,6 +796,26 @@ function categorizeFileData(data, fallbackMimeType) {
796
796
  };
797
797
  }
798
798
 
799
+ // src/agent/message-list/utils/ai-v5/gemini-compatibility.ts
800
+ function ensureGeminiCompatibleMessages(messages) {
801
+ const result = [...messages];
802
+ const firstNonSystemIndex = result.findIndex((m) => m.role !== "system");
803
+ if (firstNonSystemIndex === -1) {
804
+ throw new chunkWM4VQWOZ_cjs.MastraError({
805
+ id: "NO_USER_OR_ASSISTANT_MESSAGES",
806
+ domain: "AGENT" /* AGENT */,
807
+ category: "USER" /* USER */,
808
+ text: "This request does not contain any user or assistant messages. At least one user or assistant message is required to generate a response."
809
+ });
810
+ } else if (result[firstNonSystemIndex]?.role === "assistant") {
811
+ result.splice(firstNonSystemIndex, 0, {
812
+ role: "user",
813
+ content: "."
814
+ });
815
+ }
816
+ return result;
817
+ }
818
+
799
819
  // src/agent/message-list/utils/ai-v5/tool.ts
800
820
  function getToolName(type) {
801
821
  if (typeof type === "object" && type && "type" in type) {
@@ -910,22 +930,13 @@ var MessageList = class _MessageList {
910
930
  ui: () => this.all.v3().map(_MessageList.mastraMessageV3ToAIV5UIMessage),
911
931
  // Used when calling AI SDK streamText/generateText
912
932
  prompt: () => {
913
- const messages = [
914
- ...this.aiV4CoreMessagesToAIV5ModelMessages(
915
- [...this.systemMessages, ...Object.values(this.taggedSystemMessages).flat()],
916
- `system`
917
- ),
918
- ...this.all.aiV5.model()
919
- ];
920
- const needsDefaultUserMessage = !messages.length || messages[0]?.role === "assistant";
921
- if (needsDefaultUserMessage) {
922
- const defaultMessage = {
923
- role: "user",
924
- content: "."
925
- };
926
- messages.unshift(defaultMessage);
927
- }
928
- return messages;
933
+ const systemMessages = this.aiV4CoreMessagesToAIV5ModelMessages(
934
+ [...this.systemMessages, ...Object.values(this.taggedSystemMessages).flat()],
935
+ `system`
936
+ );
937
+ const modelMessages = this.all.aiV5.model();
938
+ const messages = [...systemMessages, ...modelMessages];
939
+ return ensureGeminiCompatibleMessages(messages);
929
940
  },
930
941
  // Used for creating LLM prompt messages without AI SDK streamText/generateText
931
942
  llmPrompt: async (options = {
@@ -969,14 +980,7 @@ var MessageList = class _MessageList {
969
980
  return message;
970
981
  });
971
982
  }
972
- const needsDefaultUserMessage = !messages.length || messages[0]?.role === "assistant";
973
- if (needsDefaultUserMessage) {
974
- const defaultMessage = {
975
- role: "user",
976
- content: "."
977
- };
978
- messages.unshift(defaultMessage);
979
- }
983
+ messages = ensureGeminiCompatibleMessages(messages);
980
984
  return messages.map(_MessageList.aiV5ModelMessageToV2PromptMessage);
981
985
  }
982
986
  },
@@ -993,29 +997,14 @@ var MessageList = class _MessageList {
993
997
  prompt: () => {
994
998
  const coreMessages = this.all.aiV4.core();
995
999
  const messages = [...this.systemMessages, ...Object.values(this.taggedSystemMessages).flat(), ...coreMessages];
996
- const needsDefaultUserMessage = !messages.length || messages[0]?.role === "assistant";
997
- if (needsDefaultUserMessage) {
998
- const defaultMessage = {
999
- role: "user",
1000
- content: "."
1001
- };
1002
- messages.unshift(defaultMessage);
1003
- }
1004
- return messages;
1000
+ return ensureGeminiCompatibleMessages(messages);
1005
1001
  },
1006
1002
  // Used for creating LLM prompt messages without AI SDK streamText/generateText
1007
1003
  llmPrompt: () => {
1008
1004
  const coreMessages = this.all.aiV4.core();
1009
1005
  const systemMessages = [...this.systemMessages, ...Object.values(this.taggedSystemMessages).flat()];
1010
- const messages = [...systemMessages, ...coreMessages];
1011
- const needsDefaultUserMessage = !messages.length || messages[0]?.role === "assistant";
1012
- if (needsDefaultUserMessage) {
1013
- const defaultMessage = {
1014
- role: "user",
1015
- content: "."
1016
- };
1017
- messages.unshift(defaultMessage);
1018
- }
1006
+ let messages = [...systemMessages, ...coreMessages];
1007
+ messages = ensureGeminiCompatibleMessages(messages);
1019
1008
  return messages.map(_MessageList.aiV4CoreMessageToV1PromptMessage);
1020
1009
  }
1021
1010
  }
@@ -1280,9 +1269,25 @@ var MessageList = class _MessageList {
1280
1269
  }).filter((m) => Boolean(m));
1281
1270
  return msgs;
1282
1271
  }
1272
+ /**
1273
+ * Converts various message formats to AIV4 CoreMessage format for system messages
1274
+ * @param message - The message to convert (can be string, MastraMessageV2, or AI SDK message types)
1275
+ * @returns AIV4 CoreMessage in the proper format
1276
+ */
1277
+ systemMessageToAICore(message) {
1278
+ if (typeof message === `string`) {
1279
+ return { role: "system", content: message };
1280
+ }
1281
+ if (_MessageList.isAIV5CoreMessage(message)) {
1282
+ return this.aiV5ModelMessagesToAIV4CoreMessages([message], `system`)[0];
1283
+ }
1284
+ if (_MessageList.isMastraMessageV2(message)) {
1285
+ return _MessageList.mastraMessageV2SystemToV4Core(message);
1286
+ }
1287
+ return message;
1288
+ }
1283
1289
  addOneSystem(message, tag) {
1284
- if (typeof message === `string`) message = { role: "system", content: message };
1285
- const coreMessage = _MessageList.isAIV4CoreMessage(message) ? message : this.aiV5ModelMessagesToAIV4CoreMessages([message], `system`)[0];
1290
+ const coreMessage = this.systemMessageToAICore(message);
1286
1291
  if (coreMessage.role !== `system`) {
1287
1292
  throw new Error(
1288
1293
  `Expected role "system" but saw ${coreMessage.role} for message ${JSON.stringify(coreMessage, null, 2)}`
@@ -1400,6 +1405,25 @@ var MessageList = class _MessageList {
1400
1405
  }
1401
1406
  return uiMessage;
1402
1407
  }
1408
+ /**
1409
+ * Converts a MastraMessageV2 system message directly to AIV4 CoreMessage format
1410
+ * This is more efficient than converting to UI message first and then to core
1411
+ * @param message - The MastraMessageV2 message to convert
1412
+ * @returns AIV4 CoreMessage with system role
1413
+ */
1414
+ static mastraMessageV2SystemToV4Core(message) {
1415
+ if (message.role !== `system` || !message.content.content)
1416
+ throw new chunkWM4VQWOZ_cjs.MastraError({
1417
+ id: "INVALID_SYSTEM_MESSAGE_FORMAT",
1418
+ domain: "AGENT" /* AGENT */,
1419
+ category: "USER" /* USER */,
1420
+ text: `Invalid system message format. System messages must include 'role' and 'content' properties. The content should be a string.`,
1421
+ details: {
1422
+ receivedMessage: JSON.stringify(message, null, 2)
1423
+ }
1424
+ });
1425
+ return { role: "system", content: message.content.content };
1426
+ }
1403
1427
  getMessageById(id) {
1404
1428
  return this.messages.find((m) => m.id === id);
1405
1429
  }
@@ -1434,8 +1458,10 @@ var MessageList = class _MessageList {
1434
1458
  }
1435
1459
  if (message.role === `system`) {
1436
1460
  if (messageSource === `memory`) return null;
1437
- if (_MessageList.isAIV4CoreMessage(message) || _MessageList.isAIV5CoreMessage(message))
1461
+ const isSupportedSystemFormat = _MessageList.isAIV4CoreMessage(message) || _MessageList.isAIV5CoreMessage(message) || _MessageList.isMastraMessageV2(message);
1462
+ if (isSupportedSystemFormat) {
1438
1463
  return this.addSystem(message);
1464
+ }
1439
1465
  throw new chunkWM4VQWOZ_cjs.MastraError({
1440
1466
  id: "INVALID_SYSTEM_MESSAGE_FORMAT",
1441
1467
  domain: "AGENT" /* AGENT */,
@@ -2995,5 +3021,5 @@ exports.DefaultGeneratedFile = DefaultGeneratedFile;
2995
3021
  exports.DefaultGeneratedFileWithType = DefaultGeneratedFileWithType;
2996
3022
  exports.MessageList = MessageList;
2997
3023
  exports.convertMessages = convertMessages;
2998
- //# sourceMappingURL=chunk-APY2BE4K.cjs.map
2999
- //# sourceMappingURL=chunk-APY2BE4K.cjs.map
3024
+ //# sourceMappingURL=chunk-634YFL42.cjs.map
3025
+ //# sourceMappingURL=chunk-634YFL42.cjs.map