@scoutqa/mastra-core 0.24.6-fork.1 → 0.24.6-fork.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/agent/agent.d.ts.map +1 -1
  2. package/dist/agent/index.cjs +13 -13
  3. package/dist/agent/index.js +2 -2
  4. package/dist/agent/input-processor/index.cjs +6 -6
  5. package/dist/agent/input-processor/index.js +1 -1
  6. package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts.map +1 -1
  7. package/dist/agent/save-queue/index.d.ts +1 -1
  8. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  9. package/dist/ai-tracing/index.cjs +36 -36
  10. package/dist/ai-tracing/index.js +1 -1
  11. package/dist/{chunk-WNV57BEW.cjs → chunk-2DXW53LD.cjs} +14 -14
  12. package/dist/{chunk-WNV57BEW.cjs.map → chunk-2DXW53LD.cjs.map} +1 -1
  13. package/dist/{chunk-Q6LWNLAJ.js → chunk-4KFLI6P3.js} +6 -4
  14. package/dist/chunk-4KFLI6P3.js.map +1 -0
  15. package/dist/{chunk-WMTXUQC4.cjs → chunk-6FZN2LUN.cjs} +9 -9
  16. package/dist/{chunk-WMTXUQC4.cjs.map → chunk-6FZN2LUN.cjs.map} +1 -1
  17. package/dist/{chunk-LZPOIBOR.js → chunk-ATHHKW7H.js} +3 -3
  18. package/dist/{chunk-LZPOIBOR.js.map → chunk-ATHHKW7H.js.map} +1 -1
  19. package/dist/{chunk-4L63C6E5.cjs → chunk-AZNEZR7L.cjs} +13 -13
  20. package/dist/{chunk-4L63C6E5.cjs.map → chunk-AZNEZR7L.cjs.map} +1 -1
  21. package/dist/{chunk-46XGIEXM.cjs → chunk-BKE436B3.cjs} +4 -4
  22. package/dist/{chunk-46XGIEXM.cjs.map → chunk-BKE436B3.cjs.map} +1 -1
  23. package/dist/{chunk-6D2K2CAA.js → chunk-CMRO5LJP.js} +3 -3
  24. package/dist/{chunk-6D2K2CAA.js.map → chunk-CMRO5LJP.js.map} +1 -1
  25. package/dist/{chunk-CT2DMHGC.cjs → chunk-CU4HTLWA.cjs} +6 -6
  26. package/dist/{chunk-CT2DMHGC.cjs.map → chunk-CU4HTLWA.cjs.map} +1 -1
  27. package/dist/{chunk-CYEQK4PM.cjs → chunk-D76TBUQZ.cjs} +6 -6
  28. package/dist/{chunk-CYEQK4PM.cjs.map → chunk-D76TBUQZ.cjs.map} +1 -1
  29. package/dist/{chunk-UWTYVVVZ.js → chunk-DRQRLD5G.js} +3 -3
  30. package/dist/{chunk-UWTYVVVZ.js.map → chunk-DRQRLD5G.js.map} +1 -1
  31. package/dist/{chunk-N2ILP2YD.js → chunk-DZDMMWMA.js} +4 -4
  32. package/dist/{chunk-N2ILP2YD.js.map → chunk-DZDMMWMA.js.map} +1 -1
  33. package/dist/{chunk-TEORHM5O.js → chunk-EGNFOKJB.js} +10 -10
  34. package/dist/{chunk-TEORHM5O.js.map → chunk-EGNFOKJB.js.map} +1 -1
  35. package/dist/{chunk-ZIWN73GQ.js → chunk-JVJRWHA2.js} +4 -4
  36. package/dist/{chunk-ZIWN73GQ.js.map → chunk-JVJRWHA2.js.map} +1 -1
  37. package/dist/{chunk-NSIYMRY7.cjs → chunk-MGEBT2TA.cjs} +4 -4
  38. package/dist/{chunk-NSIYMRY7.cjs.map → chunk-MGEBT2TA.cjs.map} +1 -1
  39. package/dist/{chunk-WIMFJ2BA.js → chunk-PE5PJBH7.js} +4 -4
  40. package/dist/{chunk-WIMFJ2BA.js.map → chunk-PE5PJBH7.js.map} +1 -1
  41. package/dist/{chunk-YFKTLS32.js → chunk-Q6XG7GDC.js} +7 -7
  42. package/dist/{chunk-YFKTLS32.js.map → chunk-Q6XG7GDC.js.map} +1 -1
  43. package/dist/{chunk-QLMWFSDC.js → chunk-ROWKALJ6.js} +3 -3
  44. package/dist/{chunk-QLMWFSDC.js.map → chunk-ROWKALJ6.js.map} +1 -1
  45. package/dist/{chunk-42RUESSD.cjs → chunk-U3JPTEAU.cjs} +7 -5
  46. package/dist/chunk-U3JPTEAU.cjs.map +1 -0
  47. package/dist/{chunk-IAJHRFO4.cjs → chunk-U574Z73I.cjs} +4 -4
  48. package/dist/{chunk-IAJHRFO4.cjs.map → chunk-U574Z73I.cjs.map} +1 -1
  49. package/dist/{chunk-G3KSVDML.cjs → chunk-WU5GJU3T.cjs} +48 -48
  50. package/dist/{chunk-G3KSVDML.cjs.map → chunk-WU5GJU3T.cjs.map} +1 -1
  51. package/dist/index.cjs +48 -48
  52. package/dist/index.js +8 -8
  53. package/dist/loop/index.cjs +2 -2
  54. package/dist/loop/index.js +1 -1
  55. package/dist/mastra/index.cjs +2 -2
  56. package/dist/mastra/index.js +1 -1
  57. package/dist/memory/index.cjs +4 -4
  58. package/dist/memory/index.js +1 -1
  59. package/dist/processors/index.cjs +11 -11
  60. package/dist/processors/index.js +1 -1
  61. package/dist/relevance/index.cjs +4 -4
  62. package/dist/relevance/index.js +1 -1
  63. package/dist/scores/index.cjs +9 -9
  64. package/dist/scores/index.js +2 -2
  65. package/dist/scores/scoreTraces/index.cjs +8 -8
  66. package/dist/scores/scoreTraces/index.js +3 -3
  67. package/dist/storage/index.cjs +3 -3
  68. package/dist/storage/index.js +1 -1
  69. package/dist/stream/index.cjs +11 -11
  70. package/dist/stream/index.js +2 -2
  71. package/dist/test-utils/llm-mock.cjs +2 -2
  72. package/dist/test-utils/llm-mock.js +1 -1
  73. package/dist/utils.cjs +17 -17
  74. package/dist/utils.js +1 -1
  75. package/dist/workflows/evented/index.cjs +10 -10
  76. package/dist/workflows/evented/index.js +1 -1
  77. package/dist/workflows/index.cjs +14 -14
  78. package/dist/workflows/index.js +1 -1
  79. package/dist/workflows/legacy/index.cjs +22 -22
  80. package/dist/workflows/legacy/index.js +1 -1
  81. package/package.json +3 -3
  82. package/dist/chunk-42RUESSD.cjs.map +0 -1
  83. package/dist/chunk-Q6LWNLAJ.js.map +0 -1
@@ -1,16 +1,16 @@
1
- import { DefaultVoice } from './chunk-HCCXJ5YJ.js';
2
1
  import { STREAM_FORMAT_SYMBOL, EMITTER_SYMBOL } from './chunk-NLNKQD2T.js';
2
+ import { DefaultVoice } from './chunk-HCCXJ5YJ.js';
3
+ import { MessageList, DefaultGeneratedFile, DefaultGeneratedFileWithType } from './chunk-4KFLI6P3.js';
3
4
  import { InstrumentClass, Telemetry } from './chunk-BLUDYAPI.js';
4
- import { MessageList, DefaultGeneratedFile, DefaultGeneratedFileWithType } from './chunk-Q6LWNLAJ.js';
5
5
  import { executeHook } from './chunk-TTELJD4F.js';
6
6
  import { resolveModelConfig } from './chunk-VXHOOZSK.js';
7
- import { MastraLLMV1 } from './chunk-6D2K2CAA.js';
7
+ import { MastraLLMV1 } from './chunk-CMRO5LJP.js';
8
8
  import { zodToJsonSchema } from './chunk-PJKCPRYF.js';
9
- import { wrapMastra, selectFields, getOrCreateSpan, getValidTraceId, ensureToolProperties, makeCoreTool, createMastraProxy, isZodType, ModelSpanTracker, delay } from './chunk-WIMFJ2BA.js';
10
- import { RuntimeContext } from './chunk-HLRWYUFN.js';
11
- import { MastraError, safeParseErrorObject, getErrorFromUnknown } from './chunk-PZUZNPFM.js';
9
+ import { wrapMastra, selectFields, getOrCreateSpan, getValidTraceId, ensureToolProperties, makeCoreTool, createMastraProxy, isZodType, ModelSpanTracker, delay } from './chunk-PE5PJBH7.js';
12
10
  import { ToolStream } from './chunk-5O52O25J.js';
13
11
  import { Tool, createTool } from './chunk-WM4RO23J.js';
12
+ import { RuntimeContext } from './chunk-HLRWYUFN.js';
13
+ import { MastraError, safeParseErrorObject, getErrorFromUnknown } from './chunk-PZUZNPFM.js';
14
14
  import { MastraBase } from './chunk-VQASQG5D.js';
15
15
  import { RegisteredLogger, ConsoleLogger } from './chunk-UXG7PYML.js';
16
16
  import { __commonJS, __toESM, __decoratorStart, __decorateElement, __runInitializers } from './chunk-3HXBPDKN.js';
@@ -420,7 +420,7 @@ chunk.type!=="response-metadata"&&runState.state.isStreaming){if(runState.state.
420
420
  ...(toolCall.providerMetadata?{providerMetadata:toolCall.providerMetadata}:{})};})},createdAt:/* @__PURE__ */new Date()};messageList.add(message,"response");}const finishReason=runState?.state?.stepResult?.reason??outputStream._getImmediateFinishReason();const hasErrored=runState.state.hasErrored;const usage=outputStream._getImmediateUsage();const responseMetadata=runState.state.responseMetadata;const text=outputStream._getImmediateText();const object=outputStream._getImmediateObject();const tripwireTriggered=outputStream.tripwire;const steps=inputData.output?.steps||[];const existingResponseCount=inputData.messages?.nonUser?.length||0;const allResponseContent=messageList.get.response.aiV5.modelContent(steps.length);const currentIterationContent=allResponseContent.slice(existingResponseCount);steps.push(new DefaultStepResult({warnings:outputStream._getImmediateWarnings(),providerMetadata:runState.state.providerOptions,finishReason:runState.state.stepResult?.reason,content:currentIterationContent,response:{...responseMetadata,...rawResponse,messages:messageList.get.response.aiV5.model()},request,usage:outputStream._getImmediateUsage()}));const messages={all:messageList.get.all.aiV5.model(),user:messageList.get.input.aiV5.model(),nonUser:messageList.get.response.aiV5.model()};return {messageId,stepResult:{reason:tripwireTriggered?"abort":hasErrored?"error":finishReason,warnings,isContinued:tripwireTriggered?false:!["stop","error"].includes(finishReason)},metadata:{providerMetadata:runState.state.providerOptions,...responseMetadata,...rawResponse,modelMetadata:runState.state.modelMetadata,headers:rawResponse?.headers,request},output:{text,toolCalls,usage:usage??inputData.output?.usage,steps,...(object?{object}:{})},messages};}});}// src/loop/workflows/agentic-execution/llm-mapping-step.ts
421
421
  function createLLMMappingStep({models,telemetry_settings,_internal,modelStreamSpan,...rest},llmExecutionStep){return createStep({id:"llmExecutionMappingStep",inputSchema:z9.array(toolCallOutputSchema),outputSchema:llmIterationOutputSchema,execute:async({inputData,getStepResult:getStepResult3,bail})=>{const initialResult=getStepResult3(llmExecutionStep);if(inputData?.every(toolCall=>toolCall?.result===void 0)){const errorResults=inputData.filter(toolCall=>toolCall?.error);const toolResultMessageId=rest.experimental_generateMessageId?.()||_internal?.generateId?.();if(errorResults?.length){errorResults.forEach(toolCall=>{const chunk={type:"tool-error",runId:rest.runId,from:"AGENT"/* AGENT */,payload:{error:toolCall.error,args:toolCall.args,toolCallId:toolCall.toolCallId,toolName:toolCall.toolName,providerMetadata:toolCall.providerMetadata}};rest.controller.enqueue(chunk);});const msg={id:toolResultMessageId,role:"assistant",content:{format:2,parts:errorResults.map(toolCallErrorResult=>{return {type:"tool-invocation",toolInvocation:{state:"result",toolCallId:toolCallErrorResult.toolCallId,toolName:toolCallErrorResult.toolName,args:toolCallErrorResult.args,result:toolCallErrorResult.error?.message??toolCallErrorResult.error},...(toolCallErrorResult.providerMetadata?{providerMetadata:toolCallErrorResult.providerMetadata}:{})};})},createdAt:/* @__PURE__ */new Date()};rest.messageList.add(msg,"response");}initialResult.stepResult.isContinued=false;return bail(initialResult);}if(inputData?.length){for(const toolCall of inputData){const chunk={type:"tool-result",runId:rest.runId,from:"AGENT"/* AGENT */,payload:{args:toolCall.args,toolCallId:toolCall.toolCallId,toolName:toolCall.toolName,result:toolCall.result,providerMetadata:toolCall.providerMetadata,providerExecuted:toolCall.providerExecuted}};rest.controller.enqueue(chunk);if(initialResult?.metadata?.modelVersion==="v2"){await rest.options?.onChunk?.({chunk:convertMastraChunkToAISDKv5({chunk})});}const toolResultMessageId=rest.experimental_generateMessageId?.()||_internal?.generateId?.();const toolResultMessage={id:toolResultMessageId,role:"assistant",content:{format:2,parts:inputData.map(toolCall2=>{return {type:"tool-invocation",toolInvocation:{state:"result",toolCallId:toolCall2.toolCallId,toolName:toolCall2.toolName,args:toolCall2.args,result:toolCall2.result},...(toolCall2.providerMetadata?{providerMetadata:toolCall2.providerMetadata}:{})};})},createdAt:/* @__PURE__ */new Date()};rest.messageList.add(toolResultMessage,"response");}return {...initialResult,messages:{all:rest.messageList.get.all.aiV5.model(),user:rest.messageList.get.input.aiV5.model(),nonUser:rest.messageList.get.response.aiV5.model()}};}}});}// src/loop/workflows/agentic-execution/tool-call-step.ts
422
422
  function createToolCallStep({tools,messageList,options,telemetry_settings,writer,controller,runId,streamState,modelSpanTracker,_internal}){return createStep({id:"toolCallStep",inputSchema:toolCallInputSchema,outputSchema:toolCallOutputSchema,execute:async({inputData,suspend,resumeData,runtimeContext})=>{const addToolApprovalMetadata=(toolCallId,toolName,args)=>{const responseMessages=messageList.get.response.v2();const lastAssistantMessage=[...responseMessages].reverse().find(msg=>msg.role==="assistant");if(lastAssistantMessage){const content=lastAssistantMessage.content;if(!content)return;const metadata=typeof lastAssistantMessage.content.metadata==="object"&&lastAssistantMessage.content.metadata!==null?lastAssistantMessage.content.metadata:{};metadata.pendingToolApprovals=metadata.pendingToolApprovals||{};metadata.pendingToolApprovals[toolCallId]={toolName,args,type:"approval",runId// Store the runId so we can resume after page refresh
423
- };lastAssistantMessage.content.metadata=metadata;}};const removeToolApprovalMetadata=async toolCallId=>{const{saveQueueManager,memoryConfig,threadId}=_internal||{};if(!saveQueueManager||!threadId){return;}const getMetadata=message=>{const content=message.content;if(!content)return void 0;const metadata=typeof content.metadata==="object"&&content.metadata!==null?content.metadata:void 0;return metadata;};const allMessages=messageList.get.all.v2();const lastAssistantMessage=[...allMessages].reverse().find(msg=>{const metadata=getMetadata(msg);const pendingToolApprovals=metadata?.pendingToolApprovals;return !!pendingToolApprovals?.[toolCallId];});if(lastAssistantMessage){const metadata=getMetadata(lastAssistantMessage);const pendingToolApprovals=metadata?.pendingToolApprovals;if(pendingToolApprovals&&typeof pendingToolApprovals==="object"){delete pendingToolApprovals[toolCallId];if(metadata&&Object.keys(pendingToolApprovals).length===0){delete metadata.pendingToolApprovals;}try{await saveQueueManager.flushMessages(messageList,threadId,memoryConfig);}catch(error){console.error("Error removing tool approval metadata:",error);}}}};const flushMessagesBeforeSuspension=async()=>{const{saveQueueManager,memoryConfig,threadId,resourceId,memory}=_internal||{};if(!saveQueueManager||!threadId){return;}try{if(memory&&!_internal.threadExists&&resourceId){const thread=await memory.getThreadById?.({threadId});if(!thread){await memory.createThread?.({threadId,resourceId,memoryConfig});}_internal.threadExists=true;}await saveQueueManager.flushMessages(messageList,threadId,memoryConfig);}catch(error){console.error("Error flushing messages before suspension:",error);}};if(inputData.providerExecuted){const tracer2=getTracer({isEnabled:telemetry_settings?.isEnabled,tracer:telemetry_settings?.tracer});const span2=tracer2.startSpan("mastra.stream.toolCall").setAttributes({...assembleOperationName({operationId:"mastra.stream.toolCall",telemetry:telemetry_settings}),"stream.toolCall.toolName":inputData.toolName,"stream.toolCall.toolCallId":inputData.toolCallId,"stream.toolCall.args":JSON.stringify(inputData.args),"stream.toolCall.providerExecuted":true});if(inputData.output){span2.setAttributes({"stream.toolCall.result":JSON.stringify(inputData.output)});}span2.end();return {...inputData,result:inputData.output};}const tool=tools?.[inputData.toolName]||Object.values(tools||{})?.find(tool2=>`id`in tool2&&tool2.id===inputData.toolName);if(!tool){return {error:new Error(`Tool ${inputData.toolName} not found`),...inputData};}if(tool&&"onInputAvailable"in tool){try{await tool?.onInputAvailable?.({toolCallId:inputData.toolCallId,input:inputData.args,messages:messageList.get.input.aiV5.model(),abortSignal:options?.abortSignal});}catch(error){console.error("Error calling onInputAvailable",error);}}if(!tool.execute){return inputData;}const tracer=getTracer({isEnabled:telemetry_settings?.isEnabled,tracer:telemetry_settings?.tracer});const span=tracer.startSpan("mastra.stream.toolCall").setAttributes({...assembleOperationName({operationId:"mastra.stream.toolCall",telemetry:telemetry_settings}),"stream.toolCall.toolName":inputData.toolName,"stream.toolCall.toolCallId":inputData.toolCallId,"stream.toolCall.args":JSON.stringify(inputData.args)});try{const requireToolApproval=runtimeContext.get("__mastra_requireToolApproval");if(requireToolApproval||tool.requireApproval){if(!resumeData){controller.enqueue({type:"tool-call-approval",runId,from:"AGENT"/* AGENT */,payload:{toolCallId:inputData.toolCallId,toolName:inputData.toolName,args:inputData.args}});addToolApprovalMetadata(inputData.toolCallId,inputData.toolName,inputData.args);await flushMessagesBeforeSuspension();return suspend({requireToolApproval:{toolCallId:inputData.toolCallId,toolName:inputData.toolName,args:inputData.args},__streamState:streamState.serialize()},{resumeLabel:inputData.toolCallId});}else {await removeToolApprovalMetadata(inputData.toolCallId);if(!resumeData.approved){span.end();span.setAttributes({"stream.toolCall.result":"Tool call was not approved by the user"});return {result:"Tool call was not approved by the user",...inputData};}}}const toolOptions={abortSignal:options?.abortSignal,toolCallId:inputData.toolCallId,messages:messageList.get.input.aiV5.model(),writableStream:writer,// Pass current step span as parent for tool call spans
423
+ };lastAssistantMessage.content.metadata=metadata;}};const removeToolApprovalMetadata=async toolCallId=>{const{saveQueueManager,memoryConfig,threadId}=_internal||{};if(!saveQueueManager||!threadId){return;}const getMetadata=message=>{const content=message.content;if(!content)return void 0;const metadata=typeof content.metadata==="object"&&content.metadata!==null?content.metadata:void 0;return metadata;};const allMessages=messageList.get.all.v2();const lastAssistantMessage=[...allMessages].reverse().find(msg=>{const metadata=getMetadata(msg);const pendingToolApprovals=metadata?.pendingToolApprovals;return !!pendingToolApprovals?.[toolCallId];});if(lastAssistantMessage){const metadata=getMetadata(lastAssistantMessage);const pendingToolApprovals=metadata?.pendingToolApprovals;if(pendingToolApprovals&&typeof pendingToolApprovals==="object"){delete pendingToolApprovals[toolCallId];if(metadata&&Object.keys(pendingToolApprovals).length===0){delete metadata.pendingToolApprovals;}try{await saveQueueManager.flushMessages(messageList,threadId,memoryConfig);}catch(error){console.error("Error removing tool approval metadata:",error);}}}};const flushMessagesBeforeSuspension=async()=>{const{saveQueueManager,memoryConfig,threadId,resourceId,memory}=_internal||{};if(!saveQueueManager||!threadId){return;}try{if(memory&&!_internal.threadExists&&resourceId){const thread=await memory.getThreadById?.({threadId});if(!thread){await memory.createThread?.({threadId,resourceId,memoryConfig});}_internal.threadExists=true;}await saveQueueManager.flushMessages(messageList,threadId,memoryConfig);}catch(error){console.error("Error flushing messages before suspension:",error);}};if(inputData.providerExecuted){const tracer2=getTracer({isEnabled:telemetry_settings?.isEnabled,tracer:telemetry_settings?.tracer});const span2=tracer2.startSpan("mastra.stream.toolCall").setAttributes({...assembleOperationName({operationId:"mastra.stream.toolCall",telemetry:telemetry_settings}),"stream.toolCall.toolName":inputData.toolName,"stream.toolCall.toolCallId":inputData.toolCallId,"stream.toolCall.args":JSON.stringify(inputData.args),"stream.toolCall.providerExecuted":true});if(inputData.output){span2.setAttributes({"stream.toolCall.result":JSON.stringify(inputData.output)});}span2.end();return {...inputData,result:inputData.output};}const tool=tools?.[inputData.toolName]||Object.values(tools||{})?.find(tool2=>`id`in tool2&&tool2.id===inputData.toolName);if(!tool){return {result:`Tool ${inputData.toolName} not found`,...inputData};}if(tool&&"onInputAvailable"in tool){try{await tool?.onInputAvailable?.({toolCallId:inputData.toolCallId,input:inputData.args,messages:messageList.get.input.aiV5.model(),abortSignal:options?.abortSignal});}catch(error){console.error("Error calling onInputAvailable",error);}}if(!tool.execute){return inputData;}const tracer=getTracer({isEnabled:telemetry_settings?.isEnabled,tracer:telemetry_settings?.tracer});const span=tracer.startSpan("mastra.stream.toolCall").setAttributes({...assembleOperationName({operationId:"mastra.stream.toolCall",telemetry:telemetry_settings}),"stream.toolCall.toolName":inputData.toolName,"stream.toolCall.toolCallId":inputData.toolCallId,"stream.toolCall.args":JSON.stringify(inputData.args)});try{const requireToolApproval=runtimeContext.get("__mastra_requireToolApproval");if(requireToolApproval||tool.requireApproval){if(!resumeData){controller.enqueue({type:"tool-call-approval",runId,from:"AGENT"/* AGENT */,payload:{toolCallId:inputData.toolCallId,toolName:inputData.toolName,args:inputData.args}});addToolApprovalMetadata(inputData.toolCallId,inputData.toolName,inputData.args);await flushMessagesBeforeSuspension();return suspend({requireToolApproval:{toolCallId:inputData.toolCallId,toolName:inputData.toolName,args:inputData.args},__streamState:streamState.serialize()},{resumeLabel:inputData.toolCallId});}else {await removeToolApprovalMetadata(inputData.toolCallId);if(!resumeData.approved){span.end();span.setAttributes({"stream.toolCall.result":"Tool call was not approved by the user"});return {result:"Tool call was not approved by the user",...inputData};}}}const toolOptions={abortSignal:options?.abortSignal,toolCallId:inputData.toolCallId,messages:messageList.get.input.aiV5.model(),writableStream:writer,// Pass current step span as parent for tool call spans
424
424
  tracingContext:modelSpanTracker?.getTracingContext(),suspend:async suspendPayload=>{controller.enqueue({type:"tool-call-suspended",runId,from:"AGENT"/* AGENT */,payload:{toolCallId:inputData.toolCallId,toolName:inputData.toolName,suspendPayload}});await flushMessagesBeforeSuspension();return await suspend({toolCallSuspended:suspendPayload,__streamState:streamState.serialize()},{resumeLabel:inputData.toolCallId});},resumeData};const result=await tool.execute(inputData.args,toolOptions);span.setAttributes({"stream.toolCall.result":JSON.stringify(result)});span.end();return {result,...inputData};}catch(error){span.setStatus({code:2,message:error?.message??error});span.recordException(error);return {error,...inputData};}}});}// src/loop/workflows/agentic-execution/index.ts
425
425
  function createAgenticExecutionWorkflow({models,telemetry_settings,_internal,modelStreamSpan,...rest}){const llmExecutionStep=createLLMExecutionStep({models,_internal,modelStreamSpan,telemetry_settings,...rest});const toolCallStep=createToolCallStep({telemetry_settings,_internal,...rest});const llmMappingStep=createLLMMappingStep({models,telemetry_settings,_internal,modelStreamSpan,...rest},llmExecutionStep);return createWorkflow({id:"executionWorkflow",inputSchema:llmIterationOutputSchema,outputSchema:llmIterationOutputSchema,options:{tracingPolicy:{// mark all workflow spans related to the
426
426
  // VNext execution as internal
@@ -593,7 +593,7 @@ var SaveQueueManager=class _SaveQueueManager{logger;debounceMs;memory;static MAX
593
593
  *
594
594
  * @param messageList - The MessageList instance containing unsaved messages.
595
595
  * @param threadId - The ID of the thread whose messages are being saved.
596
- * @param memoryConfig - Optiomnal memory configuration for saving.
596
+ * @param memoryConfig - Optional memory configuration for saving.
597
597
  */async batchMessages(messageList,threadId,memoryConfig){if(!threadId)return;const earliest=messageList.getEarliestUnsavedMessageTimestamp();const now=Date.now();if(earliest&&now-earliest>_SaveQueueManager.MAX_STALENESS_MS){return this.flushMessages(messageList,threadId,memoryConfig);}else {return this.debounceSave(threadId,messageList,memoryConfig);}}/**
598
598
  * Forces an immediate save of unsaved messages for a thread, bypassing any debounce delay.
599
599
  * This is used when a flush to persistent storage is required (e.g., on shutdown or critical transitions).
@@ -1218,5 +1218,5 @@ providerMetadata:baseFinishStep.providerMetadata,text:baseFinishStep.text,warnin
1218
1218
  /** @internal */_getImmediateToolCalls(){return this.#toolCalls;}/** @internal */_getImmediateToolResults(){return this.#toolResults;}/** @internal */_getImmediateText(){return this.#bufferedText.join("");}/** @internal */_getImmediateObject(){return this.#bufferedObject;}/** @internal */_getImmediateUsage(){return this.#usageCount;}/** @internal */_getImmediateWarnings(){return this.#warnings;}/** @internal */_getImmediateFinishReason(){return this.#finishReason;}/** @internal */_getBaseStream(){return this.#baseStream;}#getTotalUsage(){let total=this.#usageCount.totalTokens;if(total===void 0){const input=this.#usageCount.inputTokens??0;const output=this.#usageCount.outputTokens??0;const reasoning=this.#usageCount.reasoningTokens??0;total=input+output+reasoning;}return {inputTokens:this.#usageCount.inputTokens,outputTokens:this.#usageCount.outputTokens,totalTokens:total,reasoningTokens:this.#usageCount.reasoningTokens,cachedInputTokens:this.#usageCount.cachedInputTokens};}#emitChunk(chunk){this.#bufferedChunks.push(chunk);this.#emitter.emit("chunk",chunk);}#createEventedStream(){const self=this;return new ReadableStream$1({start(controller){self.#bufferedChunks.forEach(chunk=>{controller.enqueue(chunk);});if(self.#streamFinished){controller.close();return;}const chunkHandler=chunk=>{controller.enqueue(chunk);};const finishHandler=()=>{self.#emitter.off("chunk",chunkHandler);self.#emitter.off("finish",finishHandler);controller.close();};self.#emitter.on("chunk",chunkHandler);self.#emitter.on("finish",finishHandler);},pull(_controller){if(!self.#consumptionStarted){void self.consumeStream();}},cancel(){self.#emitter.removeAllListeners();}});}get status(){return this.#status;}serializeState(){return {status:this.#status,bufferedSteps:this.#bufferedSteps,bufferedReasoningDetails:this.#bufferedReasoningDetails,bufferedByStep:this.#bufferedByStep,bufferedText:this.#bufferedText,bufferedTextChunks:this.#bufferedTextChunks,bufferedSources:this.#bufferedSources,bufferedReasoning:this.#bufferedReasoning,bufferedFiles:this.#bufferedFiles,toolCallArgsDeltas:this.#toolCallArgsDeltas,toolCallDeltaIdNameMap:this.#toolCallDeltaIdNameMap,toolCalls:this.#toolCalls,toolResults:this.#toolResults,warnings:this.#warnings,finishReason:this.#finishReason,request:this.#request,usageCount:this.#usageCount,tripwire:this.#tripwire,tripwireReason:this.#tripwireReason,messageList:this.messageList.serialize()};}deserializeState(state){this.#status=state.status;this.#bufferedSteps=state.bufferedSteps;this.#bufferedReasoningDetails=state.bufferedReasoningDetails;this.#bufferedByStep=state.bufferedByStep;this.#bufferedText=state.bufferedText;this.#bufferedTextChunks=state.bufferedTextChunks;this.#bufferedSources=state.bufferedSources;this.#bufferedReasoning=state.bufferedReasoning;this.#bufferedFiles=state.bufferedFiles;this.#toolCallArgsDeltas=state.toolCallArgsDeltas;this.#toolCallDeltaIdNameMap=state.toolCallDeltaIdNameMap;this.#toolCalls=state.toolCalls;this.#toolResults=state.toolResults;this.#warnings=state.warnings;this.#finishReason=state.finishReason;this.#request=state.request;this.#usageCount=state.usageCount;this.#tripwire=state.tripwire;this.#tripwireReason=state.tripwireReason;this.messageList=this.messageList.deserialize(state.messageList);}};
1219
1219
 
1220
1220
  export { AISDKV5OutputStream, Agent, BatchPartsProcessor, ChunkFrom, DefaultExecutionEngine, ExecutionEngine, LanguageDetector, LanguageDetectorInputProcessor, LegacyStep, LegacyWorkflow, MastraAgentNetworkStream, MastraModelOutput, ModerationInputProcessor, ModerationProcessor, PIIDetector, PIIDetectorInputProcessor, ProcessorState, PromptInjectionDetector, PromptInjectionDetectorInputProcessor, Run, StructuredOutputProcessor, SystemPromptScrubber, TokenLimiterProcessor, TripWire, UnicodeNormalizer, UnicodeNormalizerInputProcessor, WhenConditionReturnValue, Workflow, WorkflowRunOutput, agentToStep, cloneStep, cloneWorkflow, convertFullStreamChunkToUIMessageStream, convertMastraChunkToAISDKv5, createStep, createWorkflow, getActivePathsAndStatus, getResultActivePaths, getResumeLabelsByStepId, getStepResult, getStepResult2, getSuspendedPaths, getZodErrors, isAgent, isConditionalKey, isErrorEvent, isFinalState, isLimboState, isTransitionEvent, isVariableReference, isWorkflow, loop, mapVariable, mergeChildValue, recursivelyCheckForFinalState, resolveVariables, tryGenerateWithJsonFallback, tryStreamWithJsonFallback, updateStepInHierarchy, validateStepInput, workflowToStep };
1221
- //# sourceMappingURL=chunk-TEORHM5O.js.map
1222
- //# sourceMappingURL=chunk-TEORHM5O.js.map
1221
+ //# sourceMappingURL=chunk-EGNFOKJB.js.map
1222
+ //# sourceMappingURL=chunk-EGNFOKJB.js.map