@mastra/core 0.20.2 → 0.21.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 (314) hide show
  1. package/CHANGELOG.md +93 -0
  2. package/README.md +30 -121
  3. package/dist/agent/agent.d.ts +5 -10
  4. package/dist/agent/agent.d.ts.map +1 -1
  5. package/dist/agent/agent.types.d.ts +12 -14
  6. package/dist/agent/agent.types.d.ts.map +1 -1
  7. package/dist/agent/index.cjs +19 -11
  8. package/dist/agent/index.d.ts +2 -1
  9. package/dist/agent/index.d.ts.map +1 -1
  10. package/dist/agent/index.js +2 -2
  11. package/dist/agent/input-processor/index.cjs +6 -6
  12. package/dist/agent/input-processor/index.js +1 -1
  13. package/dist/agent/message-list/index.d.ts +4 -4
  14. package/dist/agent/message-list/index.d.ts.map +1 -1
  15. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts +1 -1
  16. package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -1
  17. package/dist/agent/message-list/prompt/convert-file.d.ts +2 -2
  18. package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -1
  19. package/dist/agent/message-list/types.d.ts +2 -2
  20. package/dist/agent/message-list/types.d.ts.map +1 -1
  21. package/dist/agent/message-list/utils/convert-messages.d.ts +2 -2
  22. package/dist/agent/types.d.ts +13 -5
  23. package/dist/agent/types.d.ts.map +1 -1
  24. package/dist/agent/utils.d.ts +110 -0
  25. package/dist/agent/utils.d.ts.map +1 -0
  26. package/dist/agent/workflows/prepare-stream/index.d.ts +2 -2
  27. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  28. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  29. package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +2 -2
  30. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +1 -2
  31. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  32. package/dist/agent/workflows/prepare-stream/schema.d.ts +2 -2
  33. package/dist/ai-tracing/index.cjs +32 -32
  34. package/dist/ai-tracing/index.js +1 -1
  35. package/dist/ai-tracing/spans/base.d.ts +2 -0
  36. package/dist/ai-tracing/spans/base.d.ts.map +1 -1
  37. package/dist/ai-tracing/types.d.ts +24 -0
  38. package/dist/ai-tracing/types.d.ts.map +1 -1
  39. package/dist/{chunk-BWC4WQTS.js → chunk-24L3LVID.js} +21 -14
  40. package/dist/chunk-24L3LVID.js.map +1 -0
  41. package/dist/{chunk-7ZXDZXGD.cjs → chunk-2BTTHMDJ.cjs} +14 -2
  42. package/dist/chunk-2BTTHMDJ.cjs.map +1 -0
  43. package/dist/{chunk-KK5LUATU.js → chunk-2VSJYKJF.js} +4 -4
  44. package/dist/{chunk-KK5LUATU.js.map → chunk-2VSJYKJF.js.map} +1 -1
  45. package/dist/chunk-33JJWAVI.js +2077 -0
  46. package/dist/chunk-33JJWAVI.js.map +1 -0
  47. package/dist/chunk-3ZEJSGTJ.cjs +9289 -0
  48. package/dist/chunk-3ZEJSGTJ.cjs.map +1 -0
  49. package/dist/{chunk-6ZSVXXMJ.js → chunk-624FF2ZG.js} +14 -2
  50. package/dist/chunk-624FF2ZG.js.map +1 -0
  51. package/dist/{chunk-2QV245Q5.cjs → chunk-6OJROHMC.cjs} +25 -18
  52. package/dist/chunk-6OJROHMC.cjs.map +1 -0
  53. package/dist/{chunk-T5SM2HLV.cjs → chunk-74P72XBM.cjs} +4 -4
  54. package/dist/chunk-74P72XBM.cjs.map +1 -0
  55. package/dist/chunk-75CDUY5G.js +158 -0
  56. package/dist/chunk-75CDUY5G.js.map +1 -0
  57. package/dist/chunk-BLPOOPRL.js +3164 -0
  58. package/dist/chunk-BLPOOPRL.js.map +1 -0
  59. package/dist/{chunk-JZ5MQXUL.cjs → chunk-DUMAWQ7I.cjs} +4 -4
  60. package/dist/{chunk-JZ5MQXUL.cjs.map → chunk-DUMAWQ7I.cjs.map} +1 -1
  61. package/dist/chunk-EQV7XSTY.cjs +2090 -0
  62. package/dist/chunk-EQV7XSTY.cjs.map +1 -0
  63. package/dist/chunk-ILZI4MEU.js +9263 -0
  64. package/dist/chunk-ILZI4MEU.js.map +1 -0
  65. package/dist/{chunk-4PRV2Y55.cjs → chunk-LOUJSR3F.cjs} +5 -5
  66. package/dist/{chunk-4PRV2Y55.cjs.map → chunk-LOUJSR3F.cjs.map} +1 -1
  67. package/dist/{chunk-M2MHQQGJ.js → chunk-ONHTH5RH.js} +4 -4
  68. package/dist/chunk-ONHTH5RH.js.map +1 -0
  69. package/dist/{chunk-YBC4V5GE.js → chunk-PPW3SAWO.js} +5 -9
  70. package/dist/{chunk-YBC4V5GE.js.map → chunk-PPW3SAWO.js.map} +1 -1
  71. package/dist/{chunk-DBYLVMIV.js → chunk-Q4YVANA4.js} +25 -7
  72. package/dist/chunk-Q4YVANA4.js.map +1 -0
  73. package/dist/chunk-QMKBXESK.cjs +3186 -0
  74. package/dist/chunk-QMKBXESK.cjs.map +1 -0
  75. package/dist/{chunk-EB2KTBHB.js → chunk-R3W5CNKP.js} +100 -82
  76. package/dist/chunk-R3W5CNKP.js.map +1 -0
  77. package/dist/{chunk-ECMIW6W2.cjs → chunk-RXGL66T6.cjs} +134 -111
  78. package/dist/chunk-RXGL66T6.cjs.map +1 -0
  79. package/dist/{chunk-PPCSJI73.cjs → chunk-SL534RIL.cjs} +33 -14
  80. package/dist/chunk-SL534RIL.cjs.map +1 -0
  81. package/dist/{chunk-YICS4NNU.cjs → chunk-SQXKJWFX.cjs} +12 -12
  82. package/dist/{chunk-YICS4NNU.cjs.map → chunk-SQXKJWFX.cjs.map} +1 -1
  83. package/dist/{chunk-X5SB7NR3.cjs → chunk-SSDFGDFJ.cjs} +9 -10
  84. package/dist/chunk-SSDFGDFJ.cjs.map +1 -0
  85. package/dist/{chunk-OC7MSESV.cjs → chunk-TTJM3STK.cjs} +7 -11
  86. package/dist/{chunk-OC7MSESV.cjs.map → chunk-TTJM3STK.cjs.map} +1 -1
  87. package/dist/{chunk-RE7SRMBE.cjs → chunk-UPRLKS2E.cjs} +16 -16
  88. package/dist/chunk-UPRLKS2E.cjs.map +1 -0
  89. package/dist/{chunk-7H72OAZ3.js → chunk-UQCUAYWV.js} +3 -3
  90. package/dist/{chunk-7H72OAZ3.js.map → chunk-UQCUAYWV.js.map} +1 -1
  91. package/dist/{chunk-SWNIMD7I.js → chunk-XL5MZTLP.js} +3 -3
  92. package/dist/chunk-XL5MZTLP.js.map +1 -0
  93. package/dist/{chunk-HTX7EHW5.js → chunk-XQ5A3ISB.js} +3 -3
  94. package/dist/{chunk-HTX7EHW5.js.map → chunk-XQ5A3ISB.js.map} +1 -1
  95. package/dist/chunk-Y2PKC5BX.cjs +160 -0
  96. package/dist/chunk-Y2PKC5BX.cjs.map +1 -0
  97. package/dist/{chunk-VSTMNPZJ.js → chunk-YUV3LZMY.js} +7 -8
  98. package/dist/chunk-YUV3LZMY.js.map +1 -0
  99. package/dist/index.cjs +53 -49
  100. package/dist/index.js +10 -10
  101. package/dist/llm/index.cjs +9 -5
  102. package/dist/llm/index.d.ts +4 -3
  103. package/dist/llm/index.d.ts.map +1 -1
  104. package/dist/llm/index.js +1 -1
  105. package/dist/llm/model/base.types.d.ts +2 -2
  106. package/dist/llm/model/base.types.d.ts.map +1 -1
  107. package/dist/llm/model/gateways/base.d.ts +1 -1
  108. package/dist/llm/model/gateways/base.d.ts.map +1 -1
  109. package/dist/llm/model/gateways/models-dev.d.ts +1 -1
  110. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  111. package/dist/llm/model/gateways/netlify.d.ts +1 -1
  112. package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
  113. package/dist/llm/model/index.d.ts +2 -1
  114. package/dist/llm/model/index.d.ts.map +1 -1
  115. package/dist/llm/model/model.d.ts +2 -2
  116. package/dist/llm/model/model.d.ts.map +1 -1
  117. package/dist/llm/model/model.loop.d.ts +3 -3
  118. package/dist/llm/model/model.loop.d.ts.map +1 -1
  119. package/dist/llm/model/model.loop.types.d.ts +2 -3
  120. package/dist/llm/model/model.loop.types.d.ts.map +1 -1
  121. package/dist/llm/model/provider-registry.d.ts +98 -0
  122. package/dist/llm/model/provider-registry.d.ts.map +1 -0
  123. package/dist/llm/model/provider-types.generated.d.ts +679 -0
  124. package/dist/llm/model/registry-generator.d.ts +29 -0
  125. package/dist/llm/model/registry-generator.d.ts.map +1 -0
  126. package/dist/llm/model/resolve-model.d.ts +46 -0
  127. package/dist/llm/model/resolve-model.d.ts.map +1 -0
  128. package/dist/llm/model/router.d.ts +2 -2
  129. package/dist/llm/model/router.d.ts.map +1 -1
  130. package/dist/llm/model/shared.types.d.ts +10 -4
  131. package/dist/llm/model/shared.types.d.ts.map +1 -1
  132. package/dist/loop/index.cjs +2 -2
  133. package/dist/loop/index.js +1 -1
  134. package/dist/loop/loop.d.ts +1 -1
  135. package/dist/loop/loop.d.ts.map +1 -1
  136. package/dist/loop/network/index.d.ts.map +1 -1
  137. package/dist/loop/telemetry/index.d.ts +1 -1
  138. package/dist/loop/telemetry/index.d.ts.map +1 -1
  139. package/dist/loop/test-utils/options.d.ts.map +1 -1
  140. package/dist/loop/test-utils/streamObject.d.ts +1 -1
  141. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  142. package/dist/loop/test-utils/utils.d.ts +2 -2
  143. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  144. package/dist/loop/types.d.ts +4 -3
  145. package/dist/loop/types.d.ts.map +1 -1
  146. package/dist/loop/workflows/agentic-execution/index.d.ts +73 -73
  147. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
  148. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +50 -50
  149. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  150. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +25 -25
  151. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  152. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +1 -1
  153. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  154. package/dist/loop/workflows/agentic-loop/index.d.ts +73 -73
  155. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
  156. package/dist/loop/workflows/run-state.d.ts +1 -1
  157. package/dist/loop/workflows/run-state.d.ts.map +1 -1
  158. package/dist/loop/workflows/schema.d.ts +33 -33
  159. package/dist/loop/workflows/schema.d.ts.map +1 -1
  160. package/dist/loop/workflows/stream.d.ts +1 -1
  161. package/dist/loop/workflows/stream.d.ts.map +1 -1
  162. package/dist/mastra/hooks.d.ts.map +1 -1
  163. package/dist/mastra/index.cjs +2 -2
  164. package/dist/mastra/index.js +1 -1
  165. package/dist/memory/index.cjs +4 -4
  166. package/dist/memory/index.js +1 -1
  167. package/dist/memory/memory.d.ts +3 -3
  168. package/dist/memory/memory.d.ts.map +1 -1
  169. package/dist/memory/types.d.ts +3 -3
  170. package/dist/memory/types.d.ts.map +1 -1
  171. package/dist/models-dev-A334FF64.js +3 -0
  172. package/dist/models-dev-A334FF64.js.map +1 -0
  173. package/dist/models-dev-ECOIQLLK.cjs +12 -0
  174. package/dist/models-dev-ECOIQLLK.cjs.map +1 -0
  175. package/dist/netlify-CEYZ5O54.js +3 -0
  176. package/dist/netlify-CEYZ5O54.js.map +1 -0
  177. package/dist/netlify-WFAL2AA4.cjs +12 -0
  178. package/dist/netlify-WFAL2AA4.cjs.map +1 -0
  179. package/dist/processors/index.cjs +11 -11
  180. package/dist/processors/index.js +1 -1
  181. package/dist/processors/processors/language-detector.d.ts +2 -0
  182. package/dist/processors/processors/language-detector.d.ts.map +1 -1
  183. package/dist/processors/processors/moderation.d.ts +6 -3
  184. package/dist/processors/processors/moderation.d.ts.map +1 -1
  185. package/dist/processors/processors/pii-detector.d.ts +8 -4
  186. package/dist/processors/processors/pii-detector.d.ts.map +1 -1
  187. package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
  188. package/dist/processors/processors/structured-output.d.ts +4 -2
  189. package/dist/processors/processors/structured-output.d.ts.map +1 -1
  190. package/dist/processors/processors/system-prompt-scrubber.d.ts +2 -1
  191. package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -1
  192. package/dist/processors/runner.d.ts +8 -2
  193. package/dist/processors/runner.d.ts.map +1 -1
  194. package/dist/provider-registry.json +1625 -0
  195. package/dist/registry-generator-7XDUEFUT.cjs +111 -0
  196. package/dist/registry-generator-7XDUEFUT.cjs.map +1 -0
  197. package/dist/registry-generator-ZKIT6I3E.js +103 -0
  198. package/dist/registry-generator-ZKIT6I3E.js.map +1 -0
  199. package/dist/relevance/index.cjs +4 -4
  200. package/dist/relevance/index.js +1 -1
  201. package/dist/relevance/mastra-agent/index.d.ts +2 -2
  202. package/dist/relevance/mastra-agent/index.d.ts.map +1 -1
  203. package/dist/scores/base.d.ts +6 -6
  204. package/dist/scores/base.d.ts.map +1 -1
  205. package/dist/scores/index.cjs +9 -9
  206. package/dist/scores/index.js +2 -2
  207. package/dist/scores/run-experiment/index.d.ts +1 -1
  208. package/dist/scores/run-experiment/index.d.ts.map +1 -1
  209. package/dist/scores/scoreTraces/index.cjs +10 -10
  210. package/dist/scores/scoreTraces/index.cjs.map +1 -1
  211. package/dist/scores/scoreTraces/index.js +5 -5
  212. package/dist/scores/scoreTraces/index.js.map +1 -1
  213. package/dist/scores/types.d.ts +1 -1
  214. package/dist/scores/types.d.ts.map +1 -1
  215. package/dist/storage/index.cjs +3 -3
  216. package/dist/storage/index.js +1 -1
  217. package/dist/stream/aisdk/v4/input.d.ts +1 -1
  218. package/dist/stream/aisdk/v4/input.d.ts.map +1 -1
  219. package/dist/stream/aisdk/v5/compat/content.d.ts +2 -2
  220. package/dist/stream/aisdk/v5/compat/content.d.ts.map +1 -1
  221. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts +2 -2
  222. package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -1
  223. package/dist/stream/aisdk/v5/compat/ui-message.d.ts +1 -1
  224. package/dist/stream/aisdk/v5/compat/ui-message.d.ts.map +1 -1
  225. package/dist/stream/aisdk/v5/compat/validation.d.ts +1 -1
  226. package/dist/stream/aisdk/v5/compat/validation.d.ts.map +1 -1
  227. package/dist/stream/aisdk/v5/execute.d.ts +5 -4
  228. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  229. package/dist/stream/aisdk/v5/input.d.ts +1 -1
  230. package/dist/stream/aisdk/v5/input.d.ts.map +1 -1
  231. package/dist/stream/aisdk/v5/output-helpers.d.ts +9 -9
  232. package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -1
  233. package/dist/stream/aisdk/v5/output.d.ts +40 -39
  234. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  235. package/dist/stream/aisdk/v5/test-utils.d.ts +1 -1
  236. package/dist/stream/aisdk/v5/test-utils.d.ts.map +1 -1
  237. package/dist/stream/aisdk/v5/transform.d.ts +2 -2
  238. package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
  239. package/dist/stream/base/input.d.ts +1 -1
  240. package/dist/stream/base/input.d.ts.map +1 -1
  241. package/dist/stream/base/output-format-handlers.d.ts +5 -2
  242. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  243. package/dist/stream/base/output.d.ts +31 -25
  244. package/dist/stream/base/output.d.ts.map +1 -1
  245. package/dist/stream/base/schema.d.ts +1 -1
  246. package/dist/stream/base/schema.d.ts.map +1 -1
  247. package/dist/stream/index.cjs +13 -9
  248. package/dist/stream/index.d.ts +1 -0
  249. package/dist/stream/index.d.ts.map +1 -1
  250. package/dist/stream/index.js +2 -2
  251. package/dist/stream/types.d.ts +19 -6
  252. package/dist/stream/types.d.ts.map +1 -1
  253. package/dist/test-utils/llm-mock.cjs +6 -6
  254. package/dist/test-utils/llm-mock.cjs.map +1 -1
  255. package/dist/test-utils/llm-mock.d.ts +1 -1
  256. package/dist/test-utils/llm-mock.d.ts.map +1 -1
  257. package/dist/test-utils/llm-mock.js +3 -3
  258. package/dist/test-utils/llm-mock.js.map +1 -1
  259. package/dist/tools/types.d.ts +2 -2
  260. package/dist/tools/types.d.ts.map +1 -1
  261. package/dist/utils.cjs +17 -17
  262. package/dist/utils.d.ts +3 -2
  263. package/dist/utils.d.ts.map +1 -1
  264. package/dist/utils.js +1 -1
  265. package/dist/vector/embed.d.ts +2 -2
  266. package/dist/vector/embed.d.ts.map +1 -1
  267. package/dist/vector/index.cjs +4 -4
  268. package/dist/vector/index.js +1 -1
  269. package/dist/vector/vector.d.ts +2 -2
  270. package/dist/vector/vector.d.ts.map +1 -1
  271. package/dist/workflows/default.d.ts +2 -2
  272. package/dist/workflows/default.d.ts.map +1 -1
  273. package/dist/workflows/evented/execution-engine.d.ts +1 -1
  274. package/dist/workflows/evented/execution-engine.d.ts.map +1 -1
  275. package/dist/workflows/evented/index.cjs +10 -10
  276. package/dist/workflows/evented/index.js +1 -1
  277. package/dist/workflows/execution-engine.d.ts +1 -1
  278. package/dist/workflows/execution-engine.d.ts.map +1 -1
  279. package/dist/workflows/index.cjs +12 -12
  280. package/dist/workflows/index.js +1 -1
  281. package/dist/workflows/legacy/index.cjs +22 -22
  282. package/dist/workflows/legacy/index.js +1 -1
  283. package/dist/workflows/legacy/machine.d.ts +1 -1
  284. package/dist/workflows/legacy/workflow.d.ts +1 -1
  285. package/dist/workflows/step.d.ts +1 -1
  286. package/dist/workflows/step.d.ts.map +1 -1
  287. package/dist/workflows/types.d.ts +1 -1
  288. package/dist/workflows/types.d.ts.map +1 -1
  289. package/dist/workflows/workflow.d.ts +25 -8
  290. package/dist/workflows/workflow.d.ts.map +1 -1
  291. package/package.json +24 -19
  292. package/src/llm/model/provider-types.generated.d.ts +679 -0
  293. package/dist/chunk-2QV245Q5.cjs.map +0 -1
  294. package/dist/chunk-6ZSVXXMJ.js.map +0 -1
  295. package/dist/chunk-7ZXDZXGD.cjs.map +0 -1
  296. package/dist/chunk-BWC4WQTS.js.map +0 -1
  297. package/dist/chunk-BZ6BIHLE.js +0 -1418
  298. package/dist/chunk-BZ6BIHLE.js.map +0 -1
  299. package/dist/chunk-DBYLVMIV.js.map +0 -1
  300. package/dist/chunk-EB2KTBHB.js.map +0 -1
  301. package/dist/chunk-ECMIW6W2.cjs.map +0 -1
  302. package/dist/chunk-M2MHQQGJ.js.map +0 -1
  303. package/dist/chunk-PPCSJI73.cjs.map +0 -1
  304. package/dist/chunk-RE7SRMBE.cjs.map +0 -1
  305. package/dist/chunk-REVAU76X.cjs +0 -1423
  306. package/dist/chunk-REVAU76X.cjs.map +0 -1
  307. package/dist/chunk-SWNIMD7I.js.map +0 -1
  308. package/dist/chunk-T5SM2HLV.cjs.map +0 -1
  309. package/dist/chunk-VSTMNPZJ.js.map +0 -1
  310. package/dist/chunk-X5SB7NR3.cjs.map +0 -1
  311. package/dist/llm/model/provider-registry.generated.d.ts +0 -99
  312. package/dist/llm/model/provider-registry.generated.d.ts.map +0 -1
  313. package/dist/stream/aisdk/v5/model-supports.d.ts +0 -25
  314. package/dist/stream/aisdk/v5/model-supports.d.ts.map +0 -1
@@ -19,6 +19,8 @@ export declare enum AISpanType {
19
19
  LLM_CHUNK = "llm_chunk",
20
20
  /** MCP (Model Context Protocol) tool execution */
21
21
  MCP_TOOL_CALL = "mcp_tool_call",
22
+ /** Input or Output Processor execution */
23
+ PROCESSOR_RUN = "processor_run",
22
24
  /** Function/tool execution with inputs, outputs, errors */
23
25
  TOOL_CALL = "tool_call",
24
26
  /** Workflow run - root span for workflow processes */
@@ -130,6 +132,17 @@ export interface MCPToolCallAttributes extends AIBaseAttributes {
130
132
  /** Whether tool execution was successful */
131
133
  success?: boolean;
132
134
  }
135
+ /**
136
+ * Processor attributes
137
+ */
138
+ export interface ProcessorRunAttributes extends AIBaseAttributes {
139
+ /** Name of the Processor */
140
+ processorName: string;
141
+ /** Processor type (input or output) */
142
+ processorType: 'input' | 'output';
143
+ /** Processor index in the agent */
144
+ processorIndex?: number;
145
+ }
133
146
  /**
134
147
  * Workflow Run attributes
135
148
  */
@@ -224,6 +237,7 @@ export interface AISpanTypeMap {
224
237
  [AISpanType.LLM_CHUNK]: LLMChunkAttributes;
225
238
  [AISpanType.TOOL_CALL]: ToolCallAttributes;
226
239
  [AISpanType.MCP_TOOL_CALL]: MCPToolCallAttributes;
240
+ [AISpanType.PROCESSOR_RUN]: ProcessorRunAttributes;
227
241
  [AISpanType.WORKFLOW_STEP]: WorkflowStepAttributes;
228
242
  [AISpanType.WORKFLOW_CONDITIONAL]: WorkflowConditionalAttributes;
229
243
  [AISpanType.WORKFLOW_CONDITIONAL_EVAL]: WorkflowConditionalEvalAttributes;
@@ -298,6 +312,8 @@ export interface AISpan<TType extends AISpanType> extends BaseSpan<TType> {
298
312
  get isValid(): boolean;
299
313
  /** Get the closest parent spanId that isn't an internal span */
300
314
  getParentSpanId(includeInternalSpans?: boolean): string | undefined;
315
+ /** Find the closest parent span of a specific type by walking up the parent chain */
316
+ findParent<T extends AISpanType>(spanType: T): AISpan<T> | undefined;
301
317
  /** Returns a lightweight span ready for export */
302
318
  exportSpan(includeInternalSpans?: boolean): ExportedAISpan<TType> | undefined;
303
319
  }
@@ -567,6 +583,14 @@ export interface AITracingExporter {
567
583
  init?(config: TracingConfig): void;
568
584
  /** Export tracing events */
569
585
  exportEvent(event: AITracingEvent): Promise<void>;
586
+ addScoreToTrace?({ traceId, spanId, score, reason, scorerName, metadata, }: {
587
+ traceId: string;
588
+ spanId?: string;
589
+ score: number;
590
+ reason?: string;
591
+ scorerName: string;
592
+ metadata?: Record<string, any>;
593
+ }): Promise<void>;
570
594
  /** Shutdown exporter */
571
595
  shutdown(): Promise<void>;
572
596
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai-tracing/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/ai-tracing/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { createStep, createWorkflow, Agent, Workflow } from './chunk-EB2KTBHB.js';
1
+ import { createStep, createWorkflow, Agent, tryGenerateWithJsonFallback, Workflow } from './chunk-R3W5CNKP.js';
2
+ import { resolveModelConfig } from './chunk-33JJWAVI.js';
2
3
  import { MastraError } from './chunk-T3JFFQH2.js';
3
4
  import { randomUUID } from 'crypto';
4
5
  import { z } from 'zod';
@@ -237,9 +238,9 @@ var MastraScorer = class _MastraScorer {
237
238
  throw new Error(`Step "${scorerStep.name}" is not a prompt object`);
238
239
  }
239
240
  const prompt = await originalStep.createPrompt(context);
240
- const model = originalStep.judge?.model ?? this.config.judge?.model;
241
+ const modelConfig = originalStep.judge?.model ?? this.config.judge?.model;
241
242
  const instructions = originalStep.judge?.instructions ?? this.config.judge?.instructions;
242
- if (!model || !instructions) {
243
+ if (!modelConfig || !instructions) {
243
244
  throw new MastraError({
244
245
  id: "MASTR_SCORER_FAILED_TO_RUN_MISSING_MODEL_OR_INSTRUCTIONS",
245
246
  domain: "SCORER" /* SCORER */,
@@ -251,29 +252,33 @@ var MastraScorer = class _MastraScorer {
251
252
  }
252
253
  });
253
254
  }
255
+ const resolvedModel = await resolveModelConfig(modelConfig);
254
256
  const judge = new Agent({
255
257
  name: "judge",
256
- model,
258
+ model: resolvedModel,
257
259
  instructions,
258
260
  options: { tracingPolicy: { internal: 15 /* ALL */ } }
259
261
  });
260
262
  if (scorerStep.name === "generateScore") {
263
+ const schema = z.object({ score: z.number() });
261
264
  let result;
262
- if (model.specificationVersion === "v2") {
263
- result = await judge.generate(prompt, {
264
- output: z.object({ score: z.number() }),
265
+ if (resolvedModel.specificationVersion === "v2") {
266
+ result = await tryGenerateWithJsonFallback(judge, prompt, {
267
+ structuredOutput: {
268
+ schema
269
+ },
265
270
  tracingContext
266
271
  });
267
272
  } else {
268
273
  result = await judge.generateLegacy(prompt, {
269
- output: z.object({ score: z.number() }),
274
+ output: schema,
270
275
  tracingContext
271
276
  });
272
277
  }
273
278
  return { result: result.object.score, prompt };
274
279
  } else if (scorerStep.name === "generateReason") {
275
280
  let result;
276
- if (model.specificationVersion === "v2") {
281
+ if (resolvedModel.specificationVersion === "v2") {
277
282
  result = await judge.generate(prompt, { tracingContext });
278
283
  } else {
279
284
  result = await judge.generateLegacy(prompt, { tracingContext });
@@ -282,9 +287,11 @@ var MastraScorer = class _MastraScorer {
282
287
  } else {
283
288
  const promptStep = originalStep;
284
289
  let result;
285
- if (model.specificationVersion === "v2") {
286
- result = await judge.generate(prompt, {
287
- output: promptStep.outputSchema,
290
+ if (resolvedModel.specificationVersion === "v2") {
291
+ result = await tryGenerateWithJsonFallback(judge, prompt, {
292
+ structuredOutput: {
293
+ schema: promptStep.outputSchema
294
+ },
288
295
  tracingContext
289
296
  });
290
297
  } else {
@@ -642,5 +649,5 @@ async function runScorers(scorers, targetResult, item) {
642
649
  }
643
650
 
644
651
  export { MastraScorer, createScorer, runExperiment };
645
- //# sourceMappingURL=chunk-BWC4WQTS.js.map
646
- //# sourceMappingURL=chunk-BWC4WQTS.js.map
652
+ //# sourceMappingURL=chunk-24L3LVID.js.map
653
+ //# sourceMappingURL=chunk-24L3LVID.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/scores/base.ts","../src/scores/run-experiment/scorerAccumulator.ts","../src/scores/run-experiment/index.ts"],"names":[],"mappings":"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","file":"chunk-24L3LVID.js","sourcesContent":["import { randomUUID } from 'crypto';\nimport { z } from 'zod';\nimport { Agent } from '../agent';\nimport { tryGenerateWithJsonFallback } from '../agent/utils';\nimport { InternalSpans } from '../ai-tracing';\nimport type { TracingContext } from '../ai-tracing';\nimport { ErrorCategory, ErrorDomain, MastraError } from '../error';\nimport { resolveModelConfig } from '../llm/model/resolve-model';\nimport type { MastraModelConfig } from '../llm/model/shared.types';\nimport { createWorkflow, createStep } from '../workflows';\nimport type { ScoringSamplingConfig, ScorerRunInputForAgent, ScorerRunOutputForAgent } from './types';\n\ninterface ScorerStepDefinition {\n name: string;\n definition: any;\n isPromptObject: boolean;\n}\n\n// Predefined type shortcuts for common scorer patterns\ntype ScorerTypeShortcuts = {\n agent: {\n input: ScorerRunInputForAgent;\n output: ScorerRunOutputForAgent;\n };\n};\n\n// Pipeline scorer\n// TInput and TRunOutput establish the type contract for the entire scorer pipeline,\n// ensuring type safety flows through all steps and contexts\ninterface ScorerConfig<TName extends string = string, TInput = any, TRunOutput = any> {\n name: TName;\n description: string;\n judge?: {\n model: MastraModelConfig;\n instructions: string;\n };\n // Optional type specification - can be enum shortcut or explicit schemas\n type?:\n | keyof ScorerTypeShortcuts\n | {\n input: z.ZodSchema<TInput>;\n output: z.ZodSchema<TRunOutput>;\n };\n}\n\n// Standardized input type for all pipelines\ninterface ScorerRun<TInput = any, TOutput = any> {\n runId?: string;\n input?: TInput;\n output: TOutput;\n groundTruth?: any;\n runtimeContext?: Record<string, any>;\n tracingContext?: TracingContext;\n}\n\n// Prompt object definition with conditional typing\ninterface PromptObject<\n TOutput,\n TAccumulated extends Record<string, any>,\n TStepName extends string = string,\n TInput = any,\n TRunOutput = any,\n> {\n description: string;\n outputSchema: z.ZodSchema<TOutput>;\n judge?: {\n model: MastraModelConfig;\n instructions: string;\n };\n\n // Support both sync and async createPrompt\n createPrompt: (context: PromptObjectContext<TAccumulated, TStepName, TInput, TRunOutput>) => string | Promise<string>;\n}\n\n// Helper types\ntype StepResultKey<T extends string> = `${T}StepResult`;\n\n// Simple utility type to extract resolved types from potentially async functions\ntype Awaited<T> = T extends Promise<infer U> ? U : T;\n\n// Simplified context type\ntype StepContext<TAccumulated extends Record<string, any>, TInput, TRunOutput> = {\n run: ScorerRun<TInput, TRunOutput>;\n results: TAccumulated;\n};\n\n// Simplified AccumulatedResults - don't try to resolve Promise types here\ntype AccumulatedResults<T extends Record<string, any>, K extends string, V> = T & Record<StepResultKey<K>, V>;\n\n// Special context type for generateReason that includes the score\ntype GenerateReasonContext<TAccumulated extends Record<string, any>, TInput, TRunOutput> = StepContext<\n TAccumulated,\n TInput,\n TRunOutput\n> & {\n score: TAccumulated extends Record<'generateScoreStepResult', infer TScore> ? TScore : never;\n};\n\ntype ScorerRunResult<TAccumulatedResults extends Record<string, any>, TInput, TRunOutput> = Promise<\n ScorerRun<TInput, TRunOutput> & {\n score: TAccumulatedResults extends Record<'generateScoreStepResult', infer TScore> ? TScore : never;\n reason?: TAccumulatedResults extends Record<'generateReasonStepResult', infer TReason> ? TReason : undefined;\n\n // Prompts\n preprocessPrompt?: string;\n analyzePrompt?: string;\n generateScorePrompt?: string;\n generateReasonPrompt?: string;\n\n // Results\n preprocessStepResult?: TAccumulatedResults extends Record<'preprocessStepResult', infer TPreprocess>\n ? TPreprocess\n : undefined;\n analyzeStepResult?: TAccumulatedResults extends Record<'analyzeStepResult', infer TAnalyze> ? TAnalyze : undefined;\n } & { runId: string }\n>;\n\n// Conditional type for PromptObject context\ntype PromptObjectContext<\n TAccumulated extends Record<string, any>,\n TStepName extends string,\n TInput,\n TRunOutput,\n> = TStepName extends 'generateReason'\n ? GenerateReasonContext<TAccumulated, TInput, TRunOutput>\n : StepContext<TAccumulated, TInput, TRunOutput>;\n\n// Function step types that support both sync and async\ntype FunctionStep<TAccumulated extends Record<string, any>, TInput, TRunOutput, TOutput> =\n | ((context: StepContext<TAccumulated, TInput, TRunOutput>) => TOutput)\n | ((context: StepContext<TAccumulated, TInput, TRunOutput>) => Promise<TOutput>);\n\ntype GenerateReasonFunctionStep<TAccumulated extends Record<string, any>, TInput, TRunOutput> =\n | ((context: GenerateReasonContext<TAccumulated, TInput, TRunOutput>) => any)\n | ((context: GenerateReasonContext<TAccumulated, TInput, TRunOutput>) => Promise<any>);\n\ntype GenerateScoreFunctionStep<TAccumulated extends Record<string, any>, TInput, TRunOutput> =\n | ((context: StepContext<TAccumulated, TInput, TRunOutput>) => number)\n | ((context: StepContext<TAccumulated, TInput, TRunOutput>) => Promise<number>);\n\n// Special prompt object type for generateScore that always returns a number\ninterface GenerateScorePromptObject<TAccumulated extends Record<string, any>, TInput, TRunOutput> {\n description: string;\n judge?: {\n model: MastraModelConfig;\n instructions: string;\n };\n // Support both sync and async createPrompt\n createPrompt: (context: StepContext<TAccumulated, TInput, TRunOutput>) => string | Promise<string>;\n}\n\n// Special prompt object type for generateReason that always returns a string\ninterface GenerateReasonPromptObject<TAccumulated extends Record<string, any>, TInput, TRunOutput> {\n description: string;\n judge?: {\n model: MastraModelConfig;\n instructions: string;\n };\n // Support both sync and async createPrompt\n createPrompt: (context: GenerateReasonContext<TAccumulated, TInput, TRunOutput>) => string | Promise<string>;\n}\n\n// Step definition types that support both function and prompt object steps\ntype PreprocessStepDef<TAccumulated extends Record<string, any>, TStepOutput, TInput, TRunOutput> =\n | FunctionStep<TAccumulated, TInput, TRunOutput, TStepOutput>\n | PromptObject<TStepOutput, TAccumulated, 'preprocess', TInput, TRunOutput>;\n\ntype AnalyzeStepDef<TAccumulated extends Record<string, any>, TStepOutput, TInput, TRunOutput> =\n | FunctionStep<TAccumulated, TInput, TRunOutput, TStepOutput>\n | PromptObject<TStepOutput, TAccumulated, 'analyze', TInput, TRunOutput>;\n\n// Conditional type for generateScore step definition\ntype GenerateScoreStepDef<TAccumulated extends Record<string, any>, TInput, TRunOutput> =\n | GenerateScoreFunctionStep<TAccumulated, TInput, TRunOutput>\n | GenerateScorePromptObject<TAccumulated, TInput, TRunOutput>;\n\n// Conditional type for generateReason step definition\ntype GenerateReasonStepDef<TAccumulated extends Record<string, any>, TInput, TRunOutput> =\n | GenerateReasonFunctionStep<TAccumulated, TInput, TRunOutput>\n | GenerateReasonPromptObject<TAccumulated, TInput, TRunOutput>;\n\nclass MastraScorer<\n TName extends string = string,\n TInput = any,\n TRunOutput = any,\n TAccumulatedResults extends Record<string, any> = {},\n> {\n constructor(\n public config: ScorerConfig<TName, TInput, TRunOutput>,\n private steps: Array<ScorerStepDefinition> = [],\n private originalPromptObjects: Map<\n string,\n | PromptObject<any, any, any, TInput, TRunOutput>\n | GenerateReasonPromptObject<any, TInput, TRunOutput>\n | GenerateScorePromptObject<any, TInput, TRunOutput>\n > = new Map(),\n ) {}\n\n get type() {\n return this.config.type;\n }\n\n get name(): TName {\n return this.config.name;\n }\n\n get description(): string {\n return this.config.description;\n }\n\n get judge() {\n return this.config.judge;\n }\n\n preprocess<TPreprocessOutput>(\n stepDef: PreprocessStepDef<TAccumulatedResults, TPreprocessOutput, TInput, TRunOutput>,\n ): MastraScorer<\n TName,\n TInput,\n TRunOutput,\n AccumulatedResults<TAccumulatedResults, 'preprocess', Awaited<TPreprocessOutput>>\n > {\n const isPromptObj = this.isPromptObject(stepDef);\n\n if (isPromptObj) {\n const promptObj = stepDef as PromptObject<\n TPreprocessOutput,\n TAccumulatedResults,\n 'preprocess',\n TInput,\n TRunOutput\n >;\n this.originalPromptObjects.set('preprocess', promptObj);\n }\n\n return new MastraScorer(\n this.config,\n [\n ...this.steps,\n {\n name: 'preprocess',\n definition: stepDef as FunctionStep<any, TInput, TRunOutput, TPreprocessOutput>,\n isPromptObject: isPromptObj,\n },\n ],\n new Map(this.originalPromptObjects),\n );\n }\n\n analyze<TAnalyzeOutput>(\n stepDef: AnalyzeStepDef<TAccumulatedResults, TAnalyzeOutput, TInput, TRunOutput>,\n ): MastraScorer<\n TName,\n TInput,\n TRunOutput,\n AccumulatedResults<TAccumulatedResults, 'analyze', Awaited<TAnalyzeOutput>>\n > {\n const isPromptObj = this.isPromptObject(stepDef);\n\n if (isPromptObj) {\n const promptObj = stepDef as PromptObject<TAnalyzeOutput, TAccumulatedResults, 'analyze', TInput, TRunOutput>;\n this.originalPromptObjects.set('analyze', promptObj);\n }\n\n return new MastraScorer(\n this.config,\n [\n ...this.steps,\n {\n name: 'analyze',\n definition: isPromptObj ? undefined : (stepDef as FunctionStep<any, TInput, TRunOutput, TAnalyzeOutput>),\n isPromptObject: isPromptObj,\n },\n ],\n new Map(this.originalPromptObjects),\n );\n }\n\n generateScore<TScoreOutput extends number = number>(\n stepDef: GenerateScoreStepDef<TAccumulatedResults, TInput, TRunOutput>,\n ): MastraScorer<\n TName,\n TInput,\n TRunOutput,\n AccumulatedResults<TAccumulatedResults, 'generateScore', Awaited<TScoreOutput>>\n > {\n const isPromptObj = this.isPromptObject(stepDef);\n\n if (isPromptObj) {\n const promptObj = stepDef as GenerateScorePromptObject<TAccumulatedResults, TInput, TRunOutput>;\n this.originalPromptObjects.set('generateScore', promptObj);\n }\n\n return new MastraScorer(\n this.config,\n [\n ...this.steps,\n {\n name: 'generateScore',\n definition: isPromptObj ? undefined : (stepDef as GenerateScoreFunctionStep<any, TInput, TRunOutput>),\n isPromptObject: isPromptObj,\n },\n ],\n new Map(this.originalPromptObjects),\n );\n }\n\n generateReason<TReasonOutput = string>(\n stepDef: GenerateReasonStepDef<TAccumulatedResults, TInput, TRunOutput>,\n ): MastraScorer<\n TName,\n TInput,\n TRunOutput,\n AccumulatedResults<TAccumulatedResults, 'generateReason', Awaited<TReasonOutput>>\n > {\n const isPromptObj = this.isPromptObject(stepDef);\n\n if (isPromptObj) {\n const promptObj = stepDef as GenerateReasonPromptObject<TAccumulatedResults, TInput, TRunOutput>;\n this.originalPromptObjects.set('generateReason', promptObj);\n }\n\n return new MastraScorer(\n this.config,\n [\n ...this.steps,\n {\n name: 'generateReason',\n definition: isPromptObj ? undefined : (stepDef as GenerateReasonFunctionStep<any, TInput, TRunOutput>),\n isPromptObject: isPromptObj,\n },\n ],\n new Map(this.originalPromptObjects),\n );\n }\n\n private get hasGenerateScore(): boolean {\n return this.steps.some(step => step.name === 'generateScore');\n }\n\n async run(input: ScorerRun<TInput, TRunOutput>): ScorerRunResult<TAccumulatedResults, TInput, TRunOutput> {\n // Runtime check: execute only allowed after generateScore\n if (!this.hasGenerateScore) {\n throw new MastraError({\n id: 'MASTR_SCORER_FAILED_TO_RUN_MISSING_GENERATE_SCORE',\n domain: ErrorDomain.SCORER,\n category: ErrorCategory.USER,\n text: `Cannot execute pipeline without generateScore() step`,\n details: {\n scorerId: this.config.name,\n steps: this.steps.map(s => s.name).join(', '),\n },\n });\n }\n\n const { tracingContext } = input;\n\n let runId = input.runId;\n if (!runId) {\n runId = randomUUID();\n }\n\n const run = { ...input, runId };\n\n const workflow = this.toMastraWorkflow();\n const workflowRun = await workflow.createRunAsync();\n const workflowResult = await workflowRun.start({\n inputData: {\n run,\n },\n tracingContext,\n });\n\n if (workflowResult.status === 'failed') {\n throw new MastraError({\n id: 'MASTR_SCORER_FAILED_TO_RUN_WORKFLOW_FAILED',\n domain: ErrorDomain.SCORER,\n category: ErrorCategory.USER,\n text: `Scorer Run Failed: ${workflowResult.error}`,\n details: {\n scorerId: this.config.name,\n steps: this.steps.map(s => s.name).join(', '),\n },\n });\n }\n\n return this.transformToScorerResult({ workflowResult, originalInput: run });\n }\n\n private isPromptObject(stepDef: any): boolean {\n // Check if it's a generateScore prompt object (has description and createPrompt, but no outputSchema)\n if (\n typeof stepDef === 'object' &&\n 'description' in stepDef &&\n 'createPrompt' in stepDef &&\n !('outputSchema' in stepDef)\n ) {\n return true;\n }\n\n // For other steps, check for description, outputSchema, and createPrompt\n const isOtherPromptObject =\n typeof stepDef === 'object' && 'description' in stepDef && 'outputSchema' in stepDef && 'createPrompt' in stepDef;\n\n return isOtherPromptObject;\n }\n\n getSteps(): Array<{ name: string; type: 'function' | 'prompt'; description?: string }> {\n return this.steps.map(step => ({\n name: step.name,\n type: step.isPromptObject ? 'prompt' : 'function',\n description: step.definition.description,\n }));\n }\n\n private toMastraWorkflow() {\n // Convert each scorer step to a workflow step\n const workflowSteps = this.steps.map(scorerStep => {\n return createStep({\n id: scorerStep.name,\n description: `Scorer step: ${scorerStep.name}`,\n inputSchema: z.any(),\n outputSchema: z.any(),\n execute: async ({ inputData, getInitData, tracingContext }) => {\n const { accumulatedResults = {}, generatedPrompts = {} } = inputData;\n const { run } = getInitData();\n\n const context = this.createScorerContext(scorerStep.name, run, accumulatedResults);\n\n let stepResult;\n let newGeneratedPrompts = generatedPrompts;\n if (scorerStep.isPromptObject) {\n const { result, prompt } = await this.executePromptStep(scorerStep, tracingContext, context);\n stepResult = result;\n newGeneratedPrompts = {\n ...generatedPrompts,\n [`${scorerStep.name}Prompt`]: prompt,\n };\n } else {\n stepResult = await this.executeFunctionStep(scorerStep, context);\n }\n\n const newAccumulatedResults = {\n ...accumulatedResults,\n [`${scorerStep.name}StepResult`]: stepResult,\n };\n\n return {\n stepResult,\n accumulatedResults: newAccumulatedResults,\n generatedPrompts: newGeneratedPrompts,\n };\n },\n });\n });\n\n const workflow = createWorkflow({\n id: `scorer-${this.config.name}`,\n description: this.config.description,\n inputSchema: z.object({\n run: z.any(), // ScorerRun\n }),\n outputSchema: z.object({\n run: z.any(),\n score: z.number(),\n reason: z.string().optional(),\n preprocessResult: z.any().optional(),\n analyzeResult: z.any().optional(),\n preprocessPrompt: z.string().optional(),\n analyzePrompt: z.string().optional(),\n generateScorePrompt: z.string().optional(),\n generateReasonPrompt: z.string().optional(),\n }),\n options: {\n // mark all spans generated as part of the scorer workflow internal\n tracingPolicy: {\n internal: InternalSpans.ALL,\n },\n },\n });\n\n let chainedWorkflow = workflow;\n for (const step of workflowSteps) {\n // @ts-ignore - Complain about the type mismatch when we chain the steps\n chainedWorkflow = chainedWorkflow.then(step);\n }\n\n return chainedWorkflow.commit();\n }\n\n private createScorerContext(\n stepName: string,\n run: ScorerRun<TInput, TRunOutput>,\n accumulatedResults: Record<string, any>,\n ) {\n if (stepName === 'generateReason') {\n const score = accumulatedResults.generateScoreStepResult;\n return { run, results: accumulatedResults, score };\n }\n\n return { run, results: accumulatedResults };\n }\n\n private async executeFunctionStep(scorerStep: ScorerStepDefinition, context: any) {\n return await scorerStep.definition(context);\n }\n\n private async executePromptStep(scorerStep: ScorerStepDefinition, tracingContext: TracingContext, context: any) {\n const originalStep = this.originalPromptObjects.get(scorerStep.name);\n if (!originalStep) {\n throw new Error(`Step \"${scorerStep.name}\" is not a prompt object`);\n }\n\n const prompt = await originalStep.createPrompt(context);\n const modelConfig = originalStep.judge?.model ?? this.config.judge?.model;\n const instructions = originalStep.judge?.instructions ?? this.config.judge?.instructions;\n\n if (!modelConfig || !instructions) {\n throw new MastraError({\n id: 'MASTR_SCORER_FAILED_TO_RUN_MISSING_MODEL_OR_INSTRUCTIONS',\n domain: ErrorDomain.SCORER,\n category: ErrorCategory.USER,\n text: `Step \"${scorerStep.name}\" requires a model and instructions`,\n details: {\n scorerId: this.config.name,\n step: scorerStep.name,\n },\n });\n }\n\n // Resolve the model configuration to a LanguageModel instance\n const resolvedModel = await resolveModelConfig(modelConfig);\n\n const judge = new Agent({\n name: 'judge',\n model: resolvedModel,\n instructions,\n options: { tracingPolicy: { internal: InternalSpans.ALL } },\n });\n\n // GenerateScore output must be a number\n if (scorerStep.name === 'generateScore') {\n const schema = z.object({ score: z.number() });\n let result;\n if (resolvedModel.specificationVersion === 'v2') {\n result = await tryGenerateWithJsonFallback(judge, prompt, {\n structuredOutput: {\n schema,\n },\n tracingContext,\n });\n } else {\n result = await judge.generateLegacy(prompt, {\n output: schema,\n tracingContext,\n });\n }\n return { result: result.object.score, prompt };\n\n // GenerateReason output must be a string\n } else if (scorerStep.name === 'generateReason') {\n let result;\n if (resolvedModel.specificationVersion === 'v2') {\n result = await judge.generate(prompt, { tracingContext });\n } else {\n result = await judge.generateLegacy(prompt, { tracingContext });\n }\n return { result: result.text, prompt };\n } else {\n const promptStep = originalStep as PromptObject<any, any, any, TInput, TRunOutput>;\n let result;\n if (resolvedModel.specificationVersion === 'v2') {\n result = await tryGenerateWithJsonFallback(judge, prompt, {\n structuredOutput: {\n schema: promptStep.outputSchema,\n },\n tracingContext,\n });\n } else {\n result = await judge.generateLegacy(prompt, {\n output: promptStep.outputSchema,\n tracingContext,\n });\n }\n return { result: result.object, prompt };\n }\n }\n\n private transformToScorerResult({\n workflowResult,\n originalInput,\n }: {\n workflowResult: any;\n originalInput: ScorerRun<TInput, TRunOutput> & { runId: string };\n }) {\n const finalStepResult = workflowResult.result;\n const accumulatedResults = finalStepResult?.accumulatedResults || {};\n const generatedPrompts = finalStepResult?.generatedPrompts || {};\n\n return {\n ...originalInput,\n score: accumulatedResults.generateScoreStepResult,\n generateScorePrompt: generatedPrompts.generateScorePrompt,\n reason: accumulatedResults.generateReasonStepResult,\n generateReasonPrompt: generatedPrompts.generateReasonPrompt,\n preprocessStepResult: accumulatedResults.preprocessStepResult,\n preprocessPrompt: generatedPrompts.preprocessPrompt,\n analyzeStepResult: accumulatedResults.analyzeStepResult,\n analyzePrompt: generatedPrompts.analyzePrompt,\n };\n }\n}\n\n// Overload: enum type shortcuts (e.g., type: 'agent')\nexport function createScorer<TName extends string, TType extends keyof ScorerTypeShortcuts>(\n config: Omit<ScorerConfig<TName, any, any>, 'type'> & {\n type: TType;\n },\n): MastraScorer<TName, ScorerTypeShortcuts[TType]['input'], ScorerTypeShortcuts[TType]['output'], {}>;\n\n// Overload: infer TInput/TRunOutput from provided Zod schemas in config.type\nexport function createScorer<\n TName extends string,\n TInputSchema extends z.ZodTypeAny,\n TOutputSchema extends z.ZodTypeAny,\n>(\n config: Omit<ScorerConfig<TName, z.infer<TInputSchema>, z.infer<TOutputSchema>>, 'type'> & {\n type: { input: TInputSchema; output: TOutputSchema };\n },\n): MastraScorer<TName, z.infer<TInputSchema>, z.infer<TOutputSchema>, {}>;\n\n// Overload: explicit generics (backwards compatible)\nexport function createScorer<TInput = any, TRunOutput = any, TName extends string = string>(\n config: ScorerConfig<TName, TInput, TRunOutput>,\n): MastraScorer<TName, TInput, TRunOutput, {}>;\n\n// Implementation\nexport function createScorer(config: any): any {\n return new MastraScorer({\n name: config.name,\n description: config.description,\n judge: config.judge,\n type: config.type,\n });\n}\n\nexport type MastraScorerEntry = {\n scorer: MastraScorer<any, any, any>;\n sampling?: ScoringSamplingConfig;\n};\n\nexport type MastraScorers = Record<string, MastraScorerEntry>;\n\n// Export types and interfaces for use in test files\nexport type { ScorerConfig, ScorerRun, PromptObject };\n\nexport { MastraScorer };\n","export class ScoreAccumulator {\n private flatScores: Record<string, number[]> = {};\n private workflowScores: Record<string, number[]> = {};\n private stepScores: Record<string, Record<string, number[]>> = {};\n\n addScores(scorerResults: Record<string, any>) {\n const isTargetWorkflowAndHasStepScores = 'steps' in scorerResults;\n if (isTargetWorkflowAndHasStepScores) {\n this.addNestedScores(scorerResults);\n } else {\n this.addFlatScores(scorerResults);\n }\n }\n\n private addFlatScores(scorerResults: Record<string, any>) {\n for (const [scorerName, result] of Object.entries(scorerResults)) {\n if (!this.flatScores[scorerName]) {\n this.flatScores[scorerName] = [];\n }\n this.flatScores[scorerName].push((result as { score: number }).score);\n }\n }\n\n private addNestedScores(scorerResults: Record<string, any>) {\n if ('workflow' in scorerResults && scorerResults.workflow) {\n for (const [scorerName, result] of Object.entries(scorerResults.workflow)) {\n if (!this.workflowScores[scorerName]) {\n this.workflowScores[scorerName] = [];\n }\n this.workflowScores[scorerName].push((result as { score: number }).score);\n }\n }\n\n if ('steps' in scorerResults && scorerResults.steps) {\n for (const [stepId, stepResults] of Object.entries(scorerResults.steps)) {\n if (!this.stepScores[stepId]) {\n this.stepScores[stepId] = {};\n }\n for (const [scorerName, result] of Object.entries(stepResults as Record<string, any>)) {\n if (!this.stepScores[stepId][scorerName]) {\n this.stepScores[stepId][scorerName] = [];\n }\n this.stepScores[stepId][scorerName].push((result as { score: number }).score);\n }\n }\n }\n }\n\n addStepScores(stepScorerResults: Record<string, Record<string, any>>) {\n for (const [stepId, stepResults] of Object.entries(stepScorerResults)) {\n if (!this.stepScores[stepId]) {\n this.stepScores[stepId] = {};\n }\n for (const [scorerName, result] of Object.entries(stepResults)) {\n if (!this.stepScores[stepId][scorerName]) {\n this.stepScores[stepId][scorerName] = [];\n }\n this.stepScores[stepId][scorerName].push((result as { score: number }).score);\n }\n }\n }\n\n getAverageScores(): Record<string, any> {\n const result: Record<string, any> = {};\n\n for (const [scorerName, scoreArray] of Object.entries(this.flatScores)) {\n result[scorerName] = this.getAverageScore(scoreArray);\n }\n\n // Add workflow scores\n if (Object.keys(this.workflowScores).length > 0) {\n result.workflow = {};\n for (const [scorerName, scoreArray] of Object.entries(this.workflowScores)) {\n result.workflow[scorerName] = this.getAverageScore(scoreArray);\n }\n }\n\n if (Object.keys(this.stepScores).length > 0) {\n result.steps = {};\n for (const [stepId, stepScorers] of Object.entries(this.stepScores)) {\n result.steps[stepId] = {};\n for (const [scorerName, scoreArray] of Object.entries(stepScorers)) {\n result.steps[stepId][scorerName] = this.getAverageScore(scoreArray);\n }\n }\n }\n\n return result;\n }\n\n private getAverageScore(scoreArray: number[]): number {\n if (scoreArray.length > 0) {\n return scoreArray.reduce((a, b) => a + b, 0) / scoreArray.length;\n } else {\n return 0;\n }\n }\n}\n","import type { CoreMessage } from 'ai-v4';\nimport type { Agent, AiMessageType, UIMessageWithMetadata } from '../../agent';\nimport type { TracingContext } from '../../ai-tracing';\nimport { MastraError } from '../../error';\nimport type { RuntimeContext } from '../../runtime-context';\nimport { Workflow } from '../../workflows';\nimport type { WorkflowResult, StepResult } from '../../workflows';\nimport type { MastraScorer } from '../base';\nimport { ScoreAccumulator } from './scorerAccumulator';\n\ntype RunExperimentDataItem<TTarget = unknown> = {\n input: TTarget extends Workflow<any, any>\n ? any\n : TTarget extends Agent\n ? string | string[] | CoreMessage[] | AiMessageType[] | UIMessageWithMetadata[]\n : unknown;\n groundTruth?: any;\n runtimeContext?: RuntimeContext;\n tracingContext?: TracingContext;\n};\n\ntype WorkflowScorerConfig = {\n workflow?: MastraScorer<any, any, any, any>[];\n steps?: Record<string, MastraScorer<any, any, any, any>[]>;\n};\n\ntype RunExperimentResult = {\n scores: Record<string, any>;\n summary: {\n totalItems: number;\n };\n};\n\n// Agent with scorers array\nexport function runExperiment<TAgent extends Agent>(config: {\n data: RunExperimentDataItem<TAgent>[];\n scorers: MastraScorer<any, any, any, any>[];\n target: TAgent;\n onItemComplete?: (params: {\n item: RunExperimentDataItem<TAgent>;\n targetResult: ReturnType<Agent['generate']>;\n scorerResults: Record<string, any>; // Flat structure: { scorerName: result }\n }) => void | Promise<void>;\n concurrency?: number;\n}): Promise<RunExperimentResult>;\n\n// Workflow with scorers array\nexport function runExperiment<TWorkflow extends Workflow>(config: {\n data: RunExperimentDataItem<TWorkflow>[];\n scorers: MastraScorer<any, any, any, any>[];\n target: TWorkflow;\n onItemComplete?: (params: {\n item: RunExperimentDataItem<TWorkflow>;\n targetResult: WorkflowResult<any, any, any, any>;\n scorerResults: Record<string, any>; // Flat structure: { scorerName: result }\n }) => void | Promise<void>;\n concurrency?: number;\n}): Promise<RunExperimentResult>;\n\n// Workflow with workflow configuration\nexport function runExperiment<TWorkflow extends Workflow>(config: {\n data: RunExperimentDataItem<TWorkflow>[];\n scorers: WorkflowScorerConfig;\n target: TWorkflow;\n onItemComplete?: (params: {\n item: RunExperimentDataItem<TWorkflow>;\n targetResult: WorkflowResult<any, any, any, any>;\n scorerResults: {\n workflow?: Record<string, any>;\n steps?: Record<string, Record<string, any>>;\n };\n }) => void | Promise<void>;\n concurrency?: number;\n}): Promise<RunExperimentResult>;\nexport async function runExperiment(config: {\n data: RunExperimentDataItem<any>[];\n scorers: MastraScorer<any, any, any, any>[] | WorkflowScorerConfig;\n target: Agent | Workflow;\n onItemComplete?: (params: {\n item: RunExperimentDataItem<any>;\n targetResult: any;\n scorerResults: any;\n }) => void | Promise<void>;\n concurrency?: number;\n}): Promise<RunExperimentResult> {\n const { data, scorers, target, onItemComplete, concurrency = 1 } = config;\n\n validateExperimentInputs(data, scorers, target);\n\n let totalItems = 0;\n const scoreAccumulator = new ScoreAccumulator();\n\n const pMap = (await import('p-map')).default;\n await pMap(\n data,\n async (item: RunExperimentDataItem<any>) => {\n const targetResult = await executeTarget(target, item);\n const scorerResults = await runScorers(scorers, targetResult, item);\n scoreAccumulator.addScores(scorerResults);\n\n if (onItemComplete) {\n await onItemComplete({\n item,\n targetResult: targetResult as any,\n scorerResults: scorerResults as any,\n });\n }\n\n totalItems++;\n },\n { concurrency },\n );\n\n return {\n scores: scoreAccumulator.getAverageScores(),\n summary: {\n totalItems,\n },\n };\n}\n\nfunction isWorkflow(target: Agent | Workflow): target is Workflow {\n return target instanceof Workflow;\n}\n\nfunction isWorkflowScorerConfig(scorers: any): scorers is WorkflowScorerConfig {\n return typeof scorers === 'object' && !Array.isArray(scorers) && ('workflow' in scorers || 'steps' in scorers);\n}\n\nfunction validateExperimentInputs(\n data: RunExperimentDataItem<any>[],\n scorers: MastraScorer<any, any, any, any>[] | WorkflowScorerConfig,\n target: Agent | Workflow,\n): void {\n if (data.length === 0) {\n throw new MastraError({\n domain: 'SCORER',\n id: 'RUN_EXPERIMENT_FAILED_NO_DATA_PROVIDED',\n category: 'USER',\n text: 'Failed to run experiment: Data array is empty',\n });\n }\n\n for (let i = 0; i < data.length; i++) {\n const item = data[i];\n if (!item || typeof item !== 'object' || !('input' in item)) {\n throw new MastraError({\n domain: 'SCORER',\n id: 'INVALID_DATA_ITEM',\n category: 'USER',\n text: `Invalid data item at index ${i}: must have 'input' properties`,\n });\n }\n }\n\n // Validate scorers\n if (Array.isArray(scorers)) {\n if (scorers.length === 0) {\n throw new MastraError({\n domain: 'SCORER',\n id: 'NO_SCORERS_PROVIDED',\n category: 'USER',\n text: 'At least one scorer must be provided',\n });\n }\n } else if (isWorkflow(target) && isWorkflowScorerConfig(scorers)) {\n const hasScorers =\n (scorers.workflow && scorers.workflow.length > 0) || (scorers.steps && Object.keys(scorers.steps).length > 0);\n\n if (!hasScorers) {\n throw new MastraError({\n domain: 'SCORER',\n id: 'NO_SCORERS_PROVIDED',\n category: 'USER',\n text: 'At least one workflow or step scorer must be provided',\n });\n }\n } else if (!isWorkflow(target) && !Array.isArray(scorers)) {\n throw new MastraError({\n domain: 'SCORER',\n id: 'INVALID_AGENT_SCORERS',\n category: 'USER',\n text: 'Agent scorers must be an array of scorers',\n });\n }\n}\n\nasync function executeTarget(target: Agent | Workflow, item: RunExperimentDataItem<any>) {\n try {\n if (isWorkflow(target)) {\n return await executeWorkflow(target, item);\n } else {\n return await executeAgent(target, item);\n }\n } catch (error) {\n throw new MastraError(\n {\n domain: 'SCORER',\n id: 'RUN_EXPERIMENT_TARGET_FAILED_TO_GENERATE_RESULT',\n category: 'USER',\n text: 'Failed to run experiment: Error generating result from target',\n details: {\n item: JSON.stringify(item),\n },\n },\n error,\n );\n }\n}\n\nasync function executeWorkflow(target: Workflow, item: RunExperimentDataItem<any>) {\n const run = await target.createRunAsync({ disableScorers: true });\n const workflowResult = await run.start({\n inputData: item.input,\n runtimeContext: item.runtimeContext,\n });\n\n return {\n scoringData: {\n input: item.input,\n output: workflowResult.status === 'success' ? workflowResult.result : undefined,\n stepResults: workflowResult.steps as Record<string, StepResult<any, any, any, any>>,\n },\n };\n}\n\nasync function executeAgent(agent: Agent, item: RunExperimentDataItem<any>) {\n const model = await agent.getModel();\n if (model.specificationVersion === 'v2') {\n return await agent.generate(item.input as any, {\n scorers: {},\n returnScorerData: true,\n runtimeContext: item.runtimeContext,\n });\n } else {\n return await agent.generateLegacy(item.input as any, {\n scorers: {},\n returnScorerData: true,\n runtimeContext: item.runtimeContext,\n });\n }\n}\n\nasync function runScorers(\n scorers: MastraScorer<any, any, any, any>[] | WorkflowScorerConfig,\n targetResult: any,\n item: RunExperimentDataItem<any>,\n): Promise<Record<string, any>> {\n const scorerResults: Record<string, any> = {};\n\n if (Array.isArray(scorers)) {\n for (const scorer of scorers) {\n try {\n const score = await scorer.run({\n input: targetResult.scoringData?.input,\n output: targetResult.scoringData?.output,\n groundTruth: item.groundTruth,\n runtimeContext: item.runtimeContext,\n tracingContext: item.tracingContext,\n });\n\n scorerResults[scorer.name] = score;\n } catch (error) {\n throw new MastraError(\n {\n domain: 'SCORER',\n id: 'RUN_EXPERIMENT_SCORER_FAILED_TO_SCORE_RESULT',\n category: 'USER',\n text: `Failed to run experiment: Error running scorer ${scorer.name}`,\n details: {\n scorerName: scorer.name,\n item: JSON.stringify(item),\n },\n },\n error,\n );\n }\n }\n } else {\n // Handle workflow scorer config\n if (scorers.workflow) {\n const workflowScorerResults: Record<string, any> = {};\n for (const scorer of scorers.workflow) {\n const score = await scorer.run({\n input: targetResult.scoringData.input,\n output: targetResult.scoringData.output,\n groundTruth: item.groundTruth,\n runtimeContext: item.runtimeContext,\n tracingContext: item.tracingContext,\n });\n workflowScorerResults[scorer.name] = score;\n }\n if (Object.keys(workflowScorerResults).length > 0) {\n scorerResults.workflow = workflowScorerResults;\n }\n }\n\n if (scorers.steps) {\n const stepScorerResults: Record<string, any> = {};\n for (const [stepId, stepScorers] of Object.entries(scorers.steps)) {\n const stepResult = targetResult.scoringData.stepResults?.[stepId];\n if (stepResult?.status === 'success' && stepResult.payload && stepResult.output) {\n const stepResults: Record<string, any> = {};\n for (const scorer of stepScorers) {\n try {\n const score = await scorer.run({\n input: stepResult.payload,\n output: stepResult.output,\n groundTruth: item.groundTruth,\n runtimeContext: item.runtimeContext,\n tracingContext: item.tracingContext,\n });\n stepResults[scorer.name] = score;\n } catch (error) {\n throw new MastraError(\n {\n domain: 'SCORER',\n id: 'RUN_EXPERIMENT_SCORER_FAILED_TO_SCORE_STEP_RESULT',\n category: 'USER',\n text: `Failed to run experiment: Error running scorer ${scorer.name} on step ${stepId}`,\n details: {\n scorerName: scorer.name,\n stepId,\n },\n },\n error,\n );\n }\n }\n if (Object.keys(stepResults).length > 0) {\n stepScorerResults[stepId] = stepResults;\n }\n }\n }\n if (Object.keys(stepScorerResults).length > 0) {\n scorerResults.steps = stepScorerResults;\n }\n }\n }\n\n return scorerResults;\n}\n"]}
@@ -22,6 +22,7 @@ var AISpanType = /* @__PURE__ */ ((AISpanType2) => {
22
22
  AISpanType2["LLM_GENERATION"] = "llm_generation";
23
23
  AISpanType2["LLM_CHUNK"] = "llm_chunk";
24
24
  AISpanType2["MCP_TOOL_CALL"] = "mcp_tool_call";
25
+ AISpanType2["PROCESSOR_RUN"] = "processor_run";
25
26
  AISpanType2["TOOL_CALL"] = "tool_call";
26
27
  AISpanType2["WORKFLOW_RUN"] = "workflow_run";
27
28
  AISpanType2["WORKFLOW_STEP"] = "workflow_step";
@@ -135,6 +136,17 @@ var BaseAISpan = class {
135
136
  if (this.parent.isInternal) return this.parent.getParentSpanId(includeInternalSpans);
136
137
  return this.parent.id;
137
138
  }
139
+ /** Find the closest parent span of a specific type by walking up the parent chain */
140
+ findParent(spanType) {
141
+ let current = this.parent;
142
+ while (current) {
143
+ if (current.type === spanType) {
144
+ return current;
145
+ }
146
+ current = current.parent;
147
+ }
148
+ return void 0;
149
+ }
138
150
  /** Returns a lightweight span ready for export */
139
151
  exportSpan(includeInternalSpans) {
140
152
  return {
@@ -2402,5 +2414,5 @@ exports.setupAITracing = setupAITracing;
2402
2414
  exports.shutdownAITracingRegistry = shutdownAITracingRegistry;
2403
2415
  exports.unregisterAITracing = unregisterAITracing;
2404
2416
  exports.wrapMastra = wrapMastra;
2405
- //# sourceMappingURL=chunk-7ZXDZXGD.cjs.map
2406
- //# sourceMappingURL=chunk-7ZXDZXGD.cjs.map
2417
+ //# sourceMappingURL=chunk-2BTTHMDJ.cjs.map
2418
+ //# sourceMappingURL=chunk-2BTTHMDJ.cjs.map