@mastra/core 1.0.0-beta.2 → 1.0.0-beta.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.
- package/CHANGELOG.md +162 -0
- package/dist/agent/agent-legacy.d.ts +2 -2
- package/dist/agent/agent-legacy.d.ts.map +1 -1
- package/dist/agent/agent.d.ts +1 -1
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.types.d.ts +3 -2
- package/dist/agent/agent.types.d.ts.map +1 -1
- package/dist/agent/index.cjs +9 -9
- package/dist/agent/index.js +2 -2
- package/dist/agent/message-list/index.cjs +3 -3
- package/dist/agent/message-list/index.d.ts.map +1 -1
- package/dist/agent/message-list/index.js +1 -1
- package/dist/agent/message-list/prompt/convert-file.d.ts +1 -1
- package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -1
- package/dist/agent/message-list/prompt/download-assets.d.ts.map +1 -1
- package/dist/agent/types.d.ts +1 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/utils.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/index.d.ts +2 -1
- package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +3 -1
- package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +2 -1
- package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +2 -1
- package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
- package/dist/agent/workflows/prepare-stream/stream-step.d.ts +3 -1
- package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -1
- package/dist/chunk-3PSWNGBF.js +3 -0
- package/dist/{chunk-ZV5CC35D.js.map → chunk-3PSWNGBF.js.map} +1 -1
- package/dist/{chunk-IQO7ANVS.cjs → chunk-3VOUB4ZU.cjs} +10 -9
- package/dist/chunk-3VOUB4ZU.cjs.map +1 -0
- package/dist/{chunk-ZGHTOYHW.js → chunk-4DWZ4Z6H.js} +155 -23
- package/dist/chunk-4DWZ4Z6H.js.map +1 -0
- package/dist/{chunk-ET6UOTTU.cjs → chunk-4IKJAKCD.cjs} +40 -4
- package/dist/chunk-4IKJAKCD.cjs.map +1 -0
- package/dist/{chunk-JYYQQEBH.cjs → chunk-4RSHBKDJ.cjs} +241 -4
- package/dist/chunk-4RSHBKDJ.cjs.map +1 -0
- package/dist/{chunk-MV7KHWUT.js → chunk-5CWWU22H.js} +25 -4
- package/dist/chunk-5CWWU22H.js.map +1 -0
- package/dist/{chunk-JV2KH24V.js → chunk-BAMR7HKO.js} +18 -13
- package/dist/chunk-BAMR7HKO.js.map +1 -0
- package/dist/{chunk-7CBEP2ZQ.js → chunk-CKGIPST2.js} +809 -89
- package/dist/chunk-CKGIPST2.js.map +1 -0
- package/dist/{chunk-4CDL2QJT.js → chunk-D6EDHNGV.js} +53 -16
- package/dist/chunk-D6EDHNGV.js.map +1 -0
- package/dist/{chunk-ZWNI5IWX.cjs → chunk-EZVRSZMK.cjs} +13 -12
- package/dist/chunk-EZVRSZMK.cjs.map +1 -0
- package/dist/{chunk-ECFXGXWO.cjs → chunk-G36A2JRR.cjs} +18 -13
- package/dist/chunk-G36A2JRR.cjs.map +1 -0
- package/dist/{chunk-7PO6SEJF.js → chunk-G3OOCXAI.js} +240 -3
- package/dist/chunk-G3OOCXAI.js.map +1 -0
- package/dist/{chunk-I4CXL4SR.js → chunk-GRGPQ32U.js} +5 -4
- package/dist/chunk-GRGPQ32U.js.map +1 -0
- package/dist/{chunk-WM6CK2F3.cjs → chunk-HBJPYQRN.cjs} +57 -19
- package/dist/chunk-HBJPYQRN.cjs.map +1 -0
- package/dist/{chunk-GGYKYORQ.cjs → chunk-JTXVR2RA.cjs} +27 -6
- package/dist/chunk-JTXVR2RA.cjs.map +1 -0
- package/dist/{chunk-XEVG546F.js → chunk-JXESKY4A.js} +3 -3
- package/dist/{chunk-XEVG546F.js.map → chunk-JXESKY4A.js.map} +1 -1
- package/dist/{chunk-7AHYOMHJ.js → chunk-KEURQGCQ.js} +40 -5
- package/dist/chunk-KEURQGCQ.js.map +1 -0
- package/dist/{chunk-JPGVRWWL.js → chunk-KOSW5PP5.js} +8 -2
- package/dist/chunk-KOSW5PP5.js.map +1 -0
- package/dist/chunk-MCUX2D5Q.js +420 -0
- package/dist/chunk-MCUX2D5Q.js.map +1 -0
- package/dist/chunk-N4SJ4YX7.cjs +424 -0
- package/dist/chunk-N4SJ4YX7.cjs.map +1 -0
- package/dist/{chunk-VOY2RXOC.cjs → chunk-O6NA3Z43.cjs} +6 -6
- package/dist/{chunk-VOY2RXOC.cjs.map → chunk-O6NA3Z43.cjs.map} +1 -1
- package/dist/{chunk-SNPVZPLB.js → chunk-OQF4H5Y2.js} +6 -5
- package/dist/chunk-OQF4H5Y2.js.map +1 -0
- package/dist/{chunk-YCVEJ3UN.cjs → chunk-OWX2PUFH.cjs} +846 -123
- package/dist/chunk-OWX2PUFH.cjs.map +1 -0
- package/dist/chunk-PE3V7GUL.cjs +4 -0
- package/dist/{chunk-LJFJTTZQ.cjs.map → chunk-PE3V7GUL.cjs.map} +1 -1
- package/dist/{chunk-HDJFSJCK.js → chunk-T3WZCEC4.js} +4 -3
- package/dist/chunk-T3WZCEC4.js.map +1 -0
- package/dist/{chunk-W7UH2PWL.js → chunk-VU6DVS7J.js} +179 -282
- package/dist/chunk-VU6DVS7J.js.map +1 -0
- package/dist/{chunk-22443P6A.cjs → chunk-VZGBVYXA.cjs} +173 -41
- package/dist/chunk-VZGBVYXA.cjs.map +1 -0
- package/dist/{chunk-2ZVKF4HP.cjs → chunk-XRIVPHXV.cjs} +184 -285
- package/dist/chunk-XRIVPHXV.cjs.map +1 -0
- package/dist/{chunk-LWBQ4P4N.cjs → chunk-YQ7NLZZ3.cjs} +54 -53
- package/dist/chunk-YQ7NLZZ3.cjs.map +1 -0
- package/dist/{chunk-CB575O6L.cjs → chunk-ZPMFINU2.cjs} +8 -2
- package/dist/chunk-ZPMFINU2.cjs.map +1 -0
- package/dist/evals/base.d.ts.map +1 -1
- package/dist/evals/index.cjs +4 -4
- package/dist/evals/index.js +1 -1
- package/dist/evals/scoreTraces/index.cjs +5 -4
- package/dist/evals/scoreTraces/index.cjs.map +1 -1
- package/dist/evals/scoreTraces/index.js +3 -2
- package/dist/evals/scoreTraces/index.js.map +1 -1
- package/dist/evals/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/dist/integration/index.cjs +2 -2
- package/dist/integration/index.js +1 -1
- package/dist/llm/index.cjs +26 -10
- package/dist/llm/index.d.ts +1 -0
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/index.js +5 -1
- package/dist/llm/model/aisdk/v5/model.d.ts +47 -0
- package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -0
- package/dist/llm/model/gateways/base.d.ts +8 -0
- package/dist/llm/model/gateways/base.d.ts.map +1 -1
- package/dist/llm/model/gateways/models-dev.d.ts +1 -0
- package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
- package/dist/llm/model/gateways/netlify.d.ts +2 -1
- package/dist/llm/model/gateways/netlify.d.ts.map +1 -1
- package/dist/llm/model/is-v2-model.d.ts +3 -0
- package/dist/llm/model/is-v2-model.d.ts.map +1 -0
- package/dist/llm/model/model-method-from-agent.d.ts +4 -0
- package/dist/llm/model/model-method-from-agent.d.ts.map +1 -0
- package/dist/llm/model/model.loop.d.ts +2 -2
- package/dist/llm/model/model.loop.d.ts.map +1 -1
- package/dist/llm/model/model.loop.types.d.ts +2 -0
- package/dist/llm/model/model.loop.types.d.ts.map +1 -1
- package/dist/llm/model/provider-registry.d.ts +11 -1
- package/dist/llm/model/provider-registry.d.ts.map +1 -1
- package/dist/llm/model/provider-types.generated.d.ts +56 -7
- package/dist/llm/model/registry-generator.d.ts.map +1 -1
- package/dist/llm/model/resolve-model.d.ts +1 -1
- package/dist/llm/model/resolve-model.d.ts.map +1 -1
- package/dist/llm/model/router.d.ts +12 -5
- package/dist/llm/model/router.d.ts.map +1 -1
- package/dist/llm/model/shared.types.d.ts +10 -4
- package/dist/llm/model/shared.types.d.ts.map +1 -1
- package/dist/loop/index.cjs +2 -2
- package/dist/loop/index.js +1 -1
- package/dist/loop/network/index.d.ts.map +1 -1
- package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts +37 -0
- package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts.map +1 -0
- package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
- package/dist/loop/test-utils/generateText.d.ts.map +1 -1
- package/dist/loop/test-utils/options.d.ts.map +1 -1
- package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
- package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
- package/dist/loop/test-utils/textStream.d.ts.map +1 -1
- package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -1
- package/dist/loop/test-utils/tools.d.ts.map +1 -1
- package/dist/loop/test-utils/utils.d.ts +1 -1
- package/dist/loop/test-utils/utils.d.ts.map +1 -1
- package/dist/loop/types.d.ts +8 -3
- package/dist/loop/types.d.ts.map +1 -1
- package/dist/loop/workflows/agentic-execution/index.d.ts +12 -12
- package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -1
- package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +9 -9
- package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
- package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +4 -4
- package/dist/loop/workflows/agentic-loop/index.d.ts +13 -12
- package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
- package/dist/loop/workflows/run-state.d.ts +2 -2
- package/dist/loop/workflows/run-state.d.ts.map +1 -1
- package/dist/loop/workflows/schema.d.ts +4 -4
- package/dist/loop/workflows/stream.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.d.ts +127 -3
- package/dist/mastra/index.d.ts.map +1 -1
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +8 -8
- package/dist/memory/index.js +4 -4
- package/dist/models-dev-GCVENVWA.js +3 -0
- package/dist/{models-dev-DNBKXHT4.js.map → models-dev-GCVENVWA.js.map} +1 -1
- package/dist/models-dev-TIBJR6IG.cjs +12 -0
- package/dist/{models-dev-YBEEQIX6.cjs.map → models-dev-TIBJR6IG.cjs.map} +1 -1
- package/dist/netlify-NTSNNT6F.cjs +12 -0
- package/dist/{netlify-GWNGSIRZ.cjs.map → netlify-NTSNNT6F.cjs.map} +1 -1
- package/dist/netlify-O5NJW7CF.js +3 -0
- package/dist/{netlify-7G2L5VSH.js.map → netlify-O5NJW7CF.js.map} +1 -1
- package/dist/processors/index.cjs +11 -11
- package/dist/processors/index.js +1 -1
- package/dist/provider-registry-74GMFZKT.js +3 -0
- package/dist/provider-registry-74GMFZKT.js.map +1 -0
- package/dist/provider-registry-BZP3DIIV.cjs +40 -0
- package/dist/provider-registry-BZP3DIIV.cjs.map +1 -0
- package/dist/provider-registry.json +140 -18
- package/dist/{registry-generator-MK63POJO.cjs → registry-generator-JPCV47SC.cjs} +6 -4
- package/dist/registry-generator-JPCV47SC.cjs.map +1 -0
- package/dist/{registry-generator-H4YNODDH.js → registry-generator-XD4FPZTU.js} +6 -4
- package/dist/registry-generator-XD4FPZTU.js.map +1 -0
- package/dist/relevance/index.cjs +2 -2
- package/dist/relevance/index.js +1 -1
- package/dist/server/index.cjs +2 -1
- package/dist/server/index.cjs.map +1 -1
- package/dist/server/index.d.ts +4 -0
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -1
- package/dist/server/index.js.map +1 -1
- package/dist/storage/domains/workflows/inmemory.d.ts +1 -1
- package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -1
- package/dist/storage/index.cjs +29 -29
- package/dist/storage/index.js +1 -1
- package/dist/storage/types.d.ts +2 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/stream/RunOutput.d.ts +1 -1
- package/dist/stream/RunOutput.d.ts.map +1 -1
- package/dist/stream/aisdk/v5/execute.d.ts +6 -3
- package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
- package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
- package/dist/stream/base/input.d.ts +1 -1
- package/dist/stream/base/output.d.ts.map +1 -1
- package/dist/stream/index.cjs +11 -11
- package/dist/stream/index.js +2 -2
- package/dist/stream/types.d.ts +4 -3
- package/dist/stream/types.d.ts.map +1 -1
- package/dist/test-utils/llm-mock.cjs +2 -2
- package/dist/test-utils/llm-mock.js +1 -1
- package/dist/tools/index.cjs +4 -4
- package/dist/tools/index.js +1 -1
- package/dist/tools/is-vercel-tool.cjs +2 -2
- package/dist/tools/is-vercel-tool.js +1 -1
- package/dist/tools/tool-builder/builder.d.ts.map +1 -1
- package/dist/tools/tool.d.ts.map +1 -1
- package/dist/tools/types.d.ts +1 -0
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/validation.d.ts +12 -0
- package/dist/tools/validation.d.ts.map +1 -1
- package/dist/utils.cjs +25 -21
- package/dist/utils.d.ts +4 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/workflows/default.d.ts +24 -8
- package/dist/workflows/default.d.ts.map +1 -1
- package/dist/workflows/evented/execution-engine.d.ts +3 -1
- package/dist/workflows/evented/execution-engine.d.ts.map +1 -1
- package/dist/workflows/evented/index.cjs +10 -10
- package/dist/workflows/evented/index.js +1 -1
- package/dist/workflows/evented/workflow-event-processor/index.d.ts +5 -4
- package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -1
- package/dist/workflows/evented/workflow-event-processor/loop.d.ts +1 -1
- package/dist/workflows/evented/workflow-event-processor/loop.d.ts.map +1 -1
- package/dist/workflows/evented/workflow-event-processor/parallel.d.ts +2 -2
- package/dist/workflows/evented/workflow-event-processor/parallel.d.ts.map +1 -1
- package/dist/workflows/evented/workflow-event-processor/sleep.d.ts +2 -2
- package/dist/workflows/evented/workflow-event-processor/sleep.d.ts.map +1 -1
- package/dist/workflows/evented/workflow.d.ts +2 -1
- package/dist/workflows/evented/workflow.d.ts.map +1 -1
- package/dist/workflows/execution-engine.d.ts +4 -2
- package/dist/workflows/execution-engine.d.ts.map +1 -1
- package/dist/workflows/index.cjs +28 -16
- package/dist/workflows/index.js +1 -1
- package/dist/workflows/step.d.ts +1 -0
- package/dist/workflows/step.d.ts.map +1 -1
- package/dist/workflows/types.d.ts +54 -2
- package/dist/workflows/types.d.ts.map +1 -1
- package/dist/workflows/utils.d.ts +20 -0
- package/dist/workflows/utils.d.ts.map +1 -1
- package/dist/workflows/workflow.d.ts +108 -40
- package/dist/workflows/workflow.d.ts.map +1 -1
- package/package.json +12 -20
- package/src/llm/model/provider-types.generated.d.ts +56 -7
- package/dist/chunk-22443P6A.cjs.map +0 -1
- package/dist/chunk-2ZVKF4HP.cjs.map +0 -1
- package/dist/chunk-4CDL2QJT.js.map +0 -1
- package/dist/chunk-7AHYOMHJ.js.map +0 -1
- package/dist/chunk-7CBEP2ZQ.js.map +0 -1
- package/dist/chunk-7PO6SEJF.js.map +0 -1
- package/dist/chunk-CB575O6L.cjs.map +0 -1
- package/dist/chunk-ECFXGXWO.cjs.map +0 -1
- package/dist/chunk-ET6UOTTU.cjs.map +0 -1
- package/dist/chunk-GGYKYORQ.cjs.map +0 -1
- package/dist/chunk-HDJFSJCK.js.map +0 -1
- package/dist/chunk-I4CXL4SR.js.map +0 -1
- package/dist/chunk-IQO7ANVS.cjs.map +0 -1
- package/dist/chunk-JPGVRWWL.js.map +0 -1
- package/dist/chunk-JV2KH24V.js.map +0 -1
- package/dist/chunk-JYYQQEBH.cjs.map +0 -1
- package/dist/chunk-LJFJTTZQ.cjs +0 -4
- package/dist/chunk-LWBQ4P4N.cjs.map +0 -1
- package/dist/chunk-MV7KHWUT.js.map +0 -1
- package/dist/chunk-SNPVZPLB.js.map +0 -1
- package/dist/chunk-W7UH2PWL.js.map +0 -1
- package/dist/chunk-WM6CK2F3.cjs.map +0 -1
- package/dist/chunk-YCVEJ3UN.cjs.map +0 -1
- package/dist/chunk-ZGHTOYHW.js.map +0 -1
- package/dist/chunk-ZV5CC35D.js +0 -3
- package/dist/chunk-ZWNI5IWX.cjs.map +0 -1
- package/dist/models-dev-DNBKXHT4.js +0 -3
- package/dist/models-dev-YBEEQIX6.cjs +0 -12
- package/dist/netlify-7G2L5VSH.js +0 -3
- package/dist/netlify-GWNGSIRZ.cjs +0 -12
- package/dist/registry-generator-H4YNODDH.js.map +0 -1
- package/dist/registry-generator-MK63POJO.cjs.map +0 -1
|
@@ -5,6 +5,7 @@ import type { Span, SpanType } from '../../../observability/index.js';
|
|
|
5
5
|
import type { RequestContext } from '../../../request-context/index.js';
|
|
6
6
|
import type { OutputSchema } from '../../../stream/base/schema.js';
|
|
7
7
|
import type { InnerAgentExecutionOptions } from '../../agent.types.js';
|
|
8
|
+
import type { AgentMethodType } from '../../types.js';
|
|
8
9
|
import type { AgentCapabilities } from './schema.js';
|
|
9
10
|
interface PrepareToolsStepOptions<OUTPUT extends OutputSchema | undefined = undefined, FORMAT extends 'aisdk' | 'mastra' | undefined = undefined> {
|
|
10
11
|
capabilities: AgentCapabilities;
|
|
@@ -16,7 +17,7 @@ interface PrepareToolsStepOptions<OUTPUT extends OutputSchema | undefined = unde
|
|
|
16
17
|
runId: string;
|
|
17
18
|
requestContext: RequestContext;
|
|
18
19
|
agentSpan: Span<SpanType.AGENT_RUN>;
|
|
19
|
-
methodType:
|
|
20
|
+
methodType: AgentMethodType;
|
|
20
21
|
memory?: MastraMemory;
|
|
21
22
|
}
|
|
22
23
|
export declare function createPrepareToolsStep<OUTPUT extends OutputSchema | undefined = undefined, FORMAT extends 'aisdk' | 'mastra' | undefined = undefined>({ capabilities, options, threadFromArgs, resourceId, runId, requestContext, agentSpan, methodType, memory, }: PrepareToolsStepOptions<OUTPUT, FORMAT>): import("../../../workflows").Step<"prepare-tools-step", z.ZodObject<any, z.UnknownKeysParam, z.ZodTypeAny, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepare-tools-step.d.ts","sourceRoot":"","sources":["../../../../src/agent/workflows/prepare-stream/prepare-tools-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD,UAAU,uBAAuB,CAC/B,MAAM,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EACnD,MAAM,SAAS,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS;IAEzD,YAAY,EAAE,iBAAiB,CAAC;IAChC,OAAO,EAAE,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,UAAU,EAAE,
|
|
1
|
+
{"version":3,"file":"prepare-tools-step.d.ts","sourceRoot":"","sources":["../../../../src/agent/workflows/prepare-stream/prepare-tools-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlD,UAAU,uBAAuB,CAC/B,MAAM,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EACnD,MAAM,SAAS,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS;IAEzD,YAAY,EAAE,iBAAiB,CAAC;IAChC,OAAO,EAAE,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACpC,UAAU,EAAE,eAAe,CAAC;IAC5B,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EACnD,MAAM,SAAS,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,EACzD,EACA,YAAY,EACZ,OAAO,EACP,cAAc,EACd,UAAU,EACV,KAAK,EACL,cAAc,EACd,SAAS,EACT,UAAU,EACV,MAAM,GACP,EAAE,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0HA0CzC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { AISDKV5OutputStream, MastraModelOutput } from '../../../stream/index.js';
|
|
3
3
|
import type { OutputSchema } from '../../../stream/base/schema.js';
|
|
4
|
+
import type { AgentMethodType } from '../../types.js';
|
|
4
5
|
import type { AgentCapabilities } from './schema.js';
|
|
5
6
|
interface StreamStepOptions {
|
|
6
7
|
capabilities: AgentCapabilities;
|
|
@@ -13,8 +14,9 @@ interface StreamStepOptions {
|
|
|
13
14
|
};
|
|
14
15
|
agentId: string;
|
|
15
16
|
toolCallId?: string;
|
|
17
|
+
methodType: AgentMethodType;
|
|
16
18
|
}
|
|
17
|
-
export declare function createStreamStep<OUTPUT extends OutputSchema | undefined = undefined>({ capabilities, runId, returnScorerData, requireToolApproval, resumeContext, agentId, toolCallId, }: StreamStepOptions): import("../../../workflows").Step<"stream-text-step", z.ZodObject<any, z.UnknownKeysParam, z.ZodTypeAny, {
|
|
19
|
+
export declare function createStreamStep<OUTPUT extends OutputSchema | undefined = undefined>({ capabilities, runId, returnScorerData, requireToolApproval, resumeContext, agentId, toolCallId, methodType, }: StreamStepOptions): import("../../../workflows").Step<"stream-text-step", z.ZodObject<any, z.UnknownKeysParam, z.ZodTypeAny, {
|
|
18
20
|
[x: string]: any;
|
|
19
21
|
}, {
|
|
20
22
|
[x: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stream-step.d.ts","sourceRoot":"","sources":["../../../../src/agent/workflows/prepare-stream/stream-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"stream-step.d.ts","sourceRoot":"","sources":["../../../../src/agent/workflows/prepare-stream/stream-step.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,UAAU,iBAAiB;IACzB,YAAY,EAAE,iBAAiB,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,aAAa,CAAC,EAAE;QACd,UAAU,EAAE,GAAG,CAAC;QAChB,QAAQ,EAAE,GAAG,CAAC;KACf,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,eAAe,CAAC;CAC7B;AAED,wBAAgB,gBAAgB,CAAC,MAAM,SAAS,YAAY,GAAG,SAAS,GAAG,SAAS,EAAE,EACpF,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,OAAO,EACP,UAAU,EACV,UAAU,GACX,EAAE,iBAAiB;;;;oWA8CnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-3PSWNGBF.js"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkZPMFINU2_cjs = require('./chunk-ZPMFINU2.cjs');
|
|
4
4
|
var chunkTWH4PTDG_cjs = require('./chunk-TWH4PTDG.cjs');
|
|
5
5
|
var chunkY6ROD72V_cjs = require('./chunk-Y6ROD72V.cjs');
|
|
6
6
|
|
|
7
7
|
// src/llm/model/gateways/netlify.ts
|
|
8
|
-
var NetlifyGateway = class extends
|
|
9
|
-
|
|
8
|
+
var NetlifyGateway = class extends chunkZPMFINU2_cjs.MastraModelGateway {
|
|
9
|
+
id = "netlify";
|
|
10
|
+
name = "Netlify AI Gateway";
|
|
10
11
|
prefix = "netlify";
|
|
11
12
|
// All providers will be prefixed with "netlify/"
|
|
12
13
|
tokenCache = new chunkY6ROD72V_cjs.InMemoryServerCache();
|
|
@@ -131,9 +132,9 @@ var NetlifyGateway = class extends chunkCB575O6L_cjs.MastraModelGateway {
|
|
|
131
132
|
const baseURL = await this.buildUrl(`${providerId}/${modelId}`);
|
|
132
133
|
switch (providerId) {
|
|
133
134
|
case "openai":
|
|
134
|
-
return
|
|
135
|
+
return chunkZPMFINU2_cjs.createOpenAI({ apiKey, baseURL }).responses(modelId);
|
|
135
136
|
case "gemini":
|
|
136
|
-
return
|
|
137
|
+
return chunkZPMFINU2_cjs.createGoogleGenerativeAI({
|
|
137
138
|
baseURL: `${baseURL}/v1beta/`,
|
|
138
139
|
apiKey,
|
|
139
140
|
headers: {
|
|
@@ -141,7 +142,7 @@ var NetlifyGateway = class extends chunkCB575O6L_cjs.MastraModelGateway {
|
|
|
141
142
|
}
|
|
142
143
|
}).chat(modelId);
|
|
143
144
|
case "anthropic":
|
|
144
|
-
return
|
|
145
|
+
return chunkZPMFINU2_cjs.createAnthropic({
|
|
145
146
|
apiKey,
|
|
146
147
|
baseURL: `${baseURL}/v1/`,
|
|
147
148
|
headers: {
|
|
@@ -150,7 +151,7 @@ var NetlifyGateway = class extends chunkCB575O6L_cjs.MastraModelGateway {
|
|
|
150
151
|
}
|
|
151
152
|
})(modelId);
|
|
152
153
|
default:
|
|
153
|
-
return
|
|
154
|
+
return chunkZPMFINU2_cjs.createOpenAICompatible({ name: providerId, apiKey, baseURL, supportsStructuredOutputs: true }).chatModel(
|
|
154
155
|
modelId
|
|
155
156
|
);
|
|
156
157
|
}
|
|
@@ -158,5 +159,5 @@ var NetlifyGateway = class extends chunkCB575O6L_cjs.MastraModelGateway {
|
|
|
158
159
|
};
|
|
159
160
|
|
|
160
161
|
exports.NetlifyGateway = NetlifyGateway;
|
|
161
|
-
//# sourceMappingURL=chunk-
|
|
162
|
-
//# sourceMappingURL=chunk-
|
|
162
|
+
//# sourceMappingURL=chunk-3VOUB4ZU.cjs.map
|
|
163
|
+
//# sourceMappingURL=chunk-3VOUB4ZU.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/llm/model/gateways/netlify.ts"],"names":["MastraModelGateway","InMemoryServerCache","MastraError","createOpenAI","createGoogleGenerativeAI","createAnthropic","createOpenAICompatible"],"mappings":";;;;;;;AAoCO,IAAM,cAAA,GAAN,cAA6BA,oCAAA,CAAmB;AAAA,EAC5C,EAAA,GAAK,SAAA;AAAA,EACL,IAAA,GAAO,oBAAA;AAAA,EACP,MAAA,GAAS,SAAA;AAAA;AAAA,EACV,UAAA,GAAa,IAAIC,qCAAA,EAAoB;AAAA,EAE7C,MAAM,cAAA,GAA0D;AAC9D,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,qDAAqD,CAAA;AAClF,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,8BAAA,EAAiC,QAAA,CAAS,UAAU,CAAA,CAAE,CAAA;AAAA,IACxE;AACA,IAAA,MAAM,IAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,IAAA,MAAM,OAAA,GAA0B;AAAA,MAC9B,YAAA,EAAc,CAAC,eAAA,EAAiB,iBAAiB,CAAA;AAAA,MACjD,YAAA,EAAc,eAAA;AAAA;AAAA,MACd,IAAA,EAAM,CAAA,OAAA,CAAA;AAAA,MACN,OAAA,EAAS,CAAA,OAAA,CAAA;AAAA,MACT,QAAQ,EAAC;AAAA,MACT,MAAA,EAAQ;AAAA,KACV;AAEA,IAAA,KAAA,MAAW,CAAC,YAAY,QAAQ,CAAA,IAAK,OAAO,OAAA,CAAQ,IAAA,CAAK,SAAS,CAAA,EAAG;AACnE,MAAA,KAAA,MAAW,KAAA,IAAS,SAAS,MAAA,EAAQ;AACnC,QAAA,OAAA,CAAQ,OAAO,IAAA,CAAK,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,KAAK,CAAA,CAAE,CAAA;AAAA,MAC9C;AAAA,IACF;AACA,IAAA,OAAO,EAAE,OAAA,EAAQ;AAAA,EACnB;AAAA,EAEA,MAAM,QAAA,CAAS,QAAA,EAAkB,OAAA,EAA+C;AAE9E,IAAA,MAAM,SAAS,OAAA,GAAU,iBAAiB,CAAA,IAAK,OAAA,CAAQ,IAAI,iBAAiB,CAAA;AAC5E,IAAA,MAAM,eAAe,OAAA,GAAU,eAAe,CAAA,IAAK,OAAA,CAAQ,IAAI,eAAe,CAAA;AAE9E,IAAA,IAAI,CAAC,YAAA,EAAc;AACjB,MAAA,MAAM,IAAIC,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,0BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,kEAAkE,QAAQ,CAAA;AAAA,OACjF,CAAA;AAAA,IACH;AAEA,IAAA,IAAI,CAAC,MAAA,EAAQ;AACX,MAAA,MAAM,IAAIA,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,4BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,oEAAoE,QAAQ,CAAA;AAAA,OACnF,CAAA;AAAA,IACH;AAEA,IAAA,IAAI;AACF,MAAA,MAAM,SAAA,GAAY,MAAM,IAAA,CAAK,eAAA,CAAgB,QAAQ,YAAY,CAAA;AACjE,MAAA,OAAO,SAAA,CAAU,GAAA,CAAI,QAAA,CAAS,CAAA,CAAA,CAAG,IAAI,SAAA,CAAU,GAAA,CAAI,SAAA,CAAU,CAAA,EAAG,SAAA,CAAU,GAAA,CAAI,MAAA,GAAS,CAAC,IAAI,SAAA,CAAU,GAAA;AAAA,IACxG,SAAS,KAAA,EAAO;AACd,MAAA,MAAM,IAAIA,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,6BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,CAAA,iDAAA,EAAoD,QAAQ,CAAA,EAAA,EAAK,KAAA,YAAiB,QAAQ,KAAA,CAAM,OAAA,GAAU,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,OAC9H,CAAA;AAAA,IACH;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAKA,MAAc,eAAA,CAAgB,MAAA,EAAgB,YAAA,EAA0C;AACtF,IAAA,MAAM,QAAA,GAAW,CAAA,cAAA,EAAiB,MAAM,CAAA,CAAA,EAAI,YAAY,CAAA,CAAA;AAGxD,IAAA,MAAM,MAAA,GAAU,MAAM,IAAA,CAAK,UAAA,CAAW,IAAI,QAAQ,CAAA;AAClD,IAAA,IAAI,UAAU,MAAA,CAAO,SAAA,GAAY,KAAK,GAAA,EAAI,GAAI,MAAO,EAAA,EAAI;AAEvD,MAAA,OAAO,EAAE,KAAA,EAAO,MAAA,CAAO,KAAA,EAAO,GAAA,EAAK,OAAO,GAAA,EAAI;AAAA,IAChD;AAGA,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,qCAAA,EAAwC,MAAM,CAAA,iBAAA,CAAA,EAAqB;AAAA,MAC9F,MAAA,EAAQ,KAAA;AAAA,MACR,OAAA,EAAS;AAAA,QACP,aAAA,EAAe,UAAU,YAAY,CAAA;AAAA;AACvC,KACD,CAAA;AAED,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,KAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,wCAAA,EAA2C,SAAS,MAAM,CAAA,CAAA,EAAI,KAAK,CAAA,CAAE,CAAA;AAAA,IACvF;AAEA,IAAA,MAAM,aAAA,GAAiB,MAAM,QAAA,CAAS,IAAA,EAAK;AAG3C,IAAA,MAAM,IAAA,CAAK,UAAA,CAAW,GAAA,CAAI,QAAA,EAAU;AAAA,MAClC,OAAO,aAAA,CAAc,KAAA;AAAA,MACrB,KAAK,aAAA,CAAc,GAAA;AAAA,MACnB,WAAW,aAAA,CAAc;AAAA,KAC1B,CAAA;AAED,IAAA,OAAO,EAAE,KAAA,EAAO,aAAA,CAAc,KAAA,EAAO,GAAA,EAAK,cAAc,GAAA,EAAI;AAAA,EAC9D;AAAA;AAAA;AAAA;AAAA,EAKA,MAAM,UAAU,OAAA,EAAkC;AAChD,IAAA,MAAM,MAAA,GAAS,OAAA,CAAQ,GAAA,CAAI,iBAAiB,CAAA;AAC5C,IAAA,MAAM,YAAA,GAAe,OAAA,CAAQ,GAAA,CAAI,eAAe,CAAA;AAEhD,IAAA,IAAI,CAAC,YAAA,EAAc;AACjB,MAAA,MAAM,IAAIA,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,0BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,kEAAkE,OAAO,CAAA;AAAA,OAChF,CAAA;AAAA,IACH;AAEA,IAAA,IAAI,CAAC,MAAA,EAAQ;AACX,MAAA,MAAM,IAAIA,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,4BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,oEAAoE,OAAO,CAAA;AAAA,OAClF,CAAA;AAAA,IACH;AAEA,IAAA,IAAI;AACF,MAAA,OAAA,CAAQ,MAAM,IAAA,CAAK,eAAA,CAAgB,MAAA,EAAQ,YAAY,CAAA,EAAG,KAAA;AAAA,IAC5D,SAAS,KAAA,EAAO;AACd,MAAA,MAAM,IAAIA,6BAAA,CAAY;AAAA,QACpB,EAAA,EAAI,6BAAA;AAAA,QACJ,MAAA,EAAQ,KAAA;AAAA,QACR,QAAA,EAAU,SAAA;AAAA,QACV,IAAA,EAAM,CAAA,iDAAA,EAAoD,OAAO,CAAA,EAAA,EAAK,KAAA,YAAiB,QAAQ,KAAA,CAAM,OAAA,GAAU,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,OAC7H,CAAA;AAAA,IACH;AAAA,EACF;AAAA,EAEA,MAAM,oBAAA,CAAqB;AAAA,IACzB,OAAA;AAAA,IACA,UAAA;AAAA,IACA;AAAA,GACF,EAI6B;AAC3B,IAAA,MAAM,OAAA,GAAU,MAAM,IAAA,CAAK,QAAA,CAAS,GAAG,UAAU,CAAA,CAAA,EAAI,OAAO,CAAA,CAAE,CAAA;AAE9D,IAAA,QAAQ,UAAA;AAAY,MAClB,KAAK,QAAA;AACH,QAAA,OAAOC,+BAAa,EAAE,MAAA,EAAQ,SAAS,CAAA,CAAE,UAAU,OAAO,CAAA;AAAA,MAC5D,KAAK,QAAA;AACH,QAAA,OAAOC,0CAAA,CAAyB;AAAA,UAC9B,OAAA,EAAS,GAAG,OAAO,CAAA,QAAA,CAAA;AAAA,UACnB,MAAA;AAAA,UACA,OAAA,EAAS;AAAA,YACP,YAAA,EAAc;AAAA;AAChB,SACD,CAAA,CAAE,IAAA,CAAK,OAAO,CAAA;AAAA,MACjB,KAAK,WAAA;AACH,QAAA,OAAOC,iCAAA,CAAgB;AAAA,UACrB,MAAA;AAAA,UACA,OAAA,EAAS,GAAG,OAAO,CAAA,IAAA,CAAA;AAAA,UACnB,OAAA,EAAS;AAAA,YACP,mBAAA,EAAqB,YAAA;AAAA,YACrB,YAAA,EAAc;AAAA;AAChB,SACD,EAAE,OAAO,CAAA;AAAA,MACZ;AACE,QAAA,OAAOC,wCAAA,CAAuB,EAAE,IAAA,EAAM,UAAA,EAAY,QAAQ,OAAA,EAAS,yBAAA,EAA2B,IAAA,EAAM,CAAA,CAAE,SAAA;AAAA,UACpG;AAAA,SACF;AAAA;AACJ,EACF;AACF","file":"chunk-3VOUB4ZU.cjs","sourcesContent":["import { createAnthropic } from '@ai-sdk/anthropic-v5';\nimport { createGoogleGenerativeAI } from '@ai-sdk/google-v5';\nimport { createOpenAICompatible } from '@ai-sdk/openai-compatible-v5';\nimport { createOpenAI } from '@ai-sdk/openai-v5';\nimport type { LanguageModelV2 } from '@ai-sdk/provider-v5';\nimport { InMemoryServerCache } from '../../../cache/inmemory.js';\nimport { MastraError } from '../../../error/index.js';\nimport { MastraModelGateway } from './base.js';\nimport type { ProviderConfig } from './base.js';\n\ninterface NetlifyProviderResponse {\n token_env_var: string;\n url_env_var: string;\n models: string[];\n}\ninterface NetlifyResponse {\n providers: Record<string, NetlifyProviderResponse>;\n}\n\ninterface NetlifyTokenResponse {\n token: string;\n url: string;\n expires_at: number;\n}\n\ninterface CachedToken {\n token: string;\n url: string;\n expiresAt: number;\n}\n\ninterface TokenData {\n token: string;\n url: string;\n}\n\nexport class NetlifyGateway extends MastraModelGateway {\n readonly id = 'netlify';\n readonly name = 'Netlify AI Gateway';\n readonly prefix = 'netlify'; // All providers will be prefixed with \"netlify/\"\n private tokenCache = new InMemoryServerCache();\n\n async fetchProviders(): Promise<Record<string, ProviderConfig>> {\n const response = await fetch('https://api.netlify.com/api/v1/ai-gateway/providers');\n if (!response.ok) {\n throw new Error(`Failed to fetch from Netlify: ${response.statusText}`);\n }\n const data = (await response.json()) as NetlifyResponse;\n const netlify: ProviderConfig = {\n apiKeyEnvVar: ['NETLIFY_TOKEN', 'NETLIFY_SITE_ID'],\n apiKeyHeader: 'Authorization', // Netlify uses standard Bearer auth\n name: `Netlify`,\n gateway: `netlify`,\n models: [],\n docUrl: 'https://docs.netlify.com/build/ai-gateway/overview/',\n };\n // Convert Netlify format to our standard format\n for (const [providerId, provider] of Object.entries(data.providers)) {\n for (const model of provider.models) {\n netlify.models.push(`${providerId}/${model}`);\n }\n }\n return { netlify };\n }\n\n async buildUrl(routerId: string, envVars?: typeof process.env): Promise<string> {\n // Check for Netlify site ID first (for token exchange)\n const siteId = envVars?.['NETLIFY_SITE_ID'] || process.env['NETLIFY_SITE_ID'];\n const netlifyToken = envVars?.['NETLIFY_TOKEN'] || process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${routerId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${routerId}`,\n });\n }\n\n try {\n const tokenData = await this.getOrFetchToken(siteId, netlifyToken);\n return tokenData.url.endsWith(`/`) ? tokenData.url.substring(0, tokenData.url.length - 1) : tokenData.url;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${routerId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n private async getOrFetchToken(siteId: string, netlifyToken: string): Promise<TokenData> {\n const cacheKey = `netlify-token:${siteId}:${netlifyToken}`;\n\n // Check cache first\n const cached = (await this.tokenCache.get(cacheKey)) as CachedToken | undefined;\n if (cached && cached.expiresAt > Date.now() / 1000 + 60) {\n // Return cached token if it won't expire in the next minute\n return { token: cached.token, url: cached.url };\n }\n\n // Fetch new token\n const response = await fetch(`https://api.netlify.com/api/v1/sites/${siteId}/ai-gateway/token`, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${netlifyToken}`,\n },\n });\n\n if (!response.ok) {\n const error = await response.text();\n throw new Error(`Failed to get Netlify AI Gateway token: ${response.status} ${error}`);\n }\n\n const tokenResponse = (await response.json()) as NetlifyTokenResponse;\n\n // Cache the token - InMemoryServerCache will handle the TTL\n await this.tokenCache.set(cacheKey, {\n token: tokenResponse.token,\n url: tokenResponse.url,\n expiresAt: tokenResponse.expires_at,\n });\n\n return { token: tokenResponse.token, url: tokenResponse.url };\n }\n\n /**\n * Get cached token or fetch a new site-specific AI Gateway token from Netlify\n */\n async getApiKey(modelId: string): Promise<string> {\n const siteId = process.env['NETLIFY_SITE_ID'];\n const netlifyToken = process.env['NETLIFY_TOKEN'];\n\n if (!netlifyToken) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_TOKEN',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_TOKEN environment variable required for model: ${modelId}`,\n });\n }\n\n if (!siteId) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_NO_SITE_ID',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Missing NETLIFY_SITE_ID environment variable required for model: ${modelId}`,\n });\n }\n\n try {\n return (await this.getOrFetchToken(siteId, netlifyToken)).token;\n } catch (error) {\n throw new MastraError({\n id: 'NETLIFY_GATEWAY_TOKEN_ERROR',\n domain: 'LLM',\n category: 'UNKNOWN',\n text: `Failed to get Netlify AI Gateway token for model ${modelId}: ${error instanceof Error ? error.message : String(error)}`,\n });\n }\n }\n\n async resolveLanguageModel({\n modelId,\n providerId,\n apiKey,\n }: {\n modelId: string;\n providerId: string;\n apiKey: string;\n }): Promise<LanguageModelV2> {\n const baseURL = await this.buildUrl(`${providerId}/${modelId}`);\n\n switch (providerId) {\n case 'openai':\n return createOpenAI({ apiKey, baseURL }).responses(modelId);\n case 'gemini':\n return createGoogleGenerativeAI({\n baseURL: `${baseURL}/v1beta/`,\n apiKey,\n headers: {\n 'user-agent': 'google-genai-sdk/',\n },\n }).chat(modelId);\n case 'anthropic':\n return createAnthropic({\n apiKey,\n baseURL: `${baseURL}/v1/`,\n headers: {\n 'anthropic-version': '2023-06-01',\n 'user-agent': 'anthropic/',\n },\n })(modelId);\n default:\n return createOpenAICompatible({ name: providerId, apiKey, baseURL, supportsStructuredOutputs: true }).chatModel(\n modelId,\n );\n }\n }\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { validateStepInput, createDeprecationProxy, getStepResult, runCountDeprecationMessage, Workflow, Run, ExecutionEngine } from './chunk-
|
|
1
|
+
import { validateStepInput, createDeprecationProxy, getStepResult, runCountDeprecationMessage, createTimeTravelExecutionParams, validateStepResumeData, Workflow, Run, ExecutionEngine } from './chunk-CKGIPST2.js';
|
|
2
2
|
import { STREAM_FORMAT_SYMBOL, EMITTER_SYMBOL } from './chunk-NLNKQD2T.js';
|
|
3
3
|
import { getErrorFromUnknown, MastraError } from './chunk-JJ5O45LH.js';
|
|
4
|
-
import { Tool } from './chunk-
|
|
4
|
+
import { Tool } from './chunk-KEURQGCQ.js';
|
|
5
5
|
import { RequestContext } from './chunk-GRBGQ2GE.js';
|
|
6
6
|
import { MastraBase } from './chunk-S6URFGCZ.js';
|
|
7
7
|
import { RegisteredLogger } from './chunk-KJ2SW6VA.js';
|
|
@@ -27,7 +27,7 @@ var StepExecutor = class extends MastraBase {
|
|
|
27
27
|
const { inputData, validationError } = await validateStepInput({
|
|
28
28
|
prevOutput: typeof params.foreachIdx === "number" ? params.input?.[params.foreachIdx] : params.input,
|
|
29
29
|
step,
|
|
30
|
-
validateInputs: params.validateInputs ??
|
|
30
|
+
validateInputs: params.validateInputs ?? true
|
|
31
31
|
});
|
|
32
32
|
let stepInfo = {
|
|
33
33
|
...stepResults[step.id],
|
|
@@ -473,6 +473,7 @@ async function processWorkflowForEach({
|
|
|
473
473
|
stepResults,
|
|
474
474
|
activeSteps,
|
|
475
475
|
resumeSteps,
|
|
476
|
+
timeTravel,
|
|
476
477
|
resumeData,
|
|
477
478
|
parentWorkflow,
|
|
478
479
|
requestContext
|
|
@@ -495,6 +496,7 @@ async function processWorkflowForEach({
|
|
|
495
496
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
496
497
|
resumeSteps,
|
|
497
498
|
stepResults,
|
|
499
|
+
timeTravel,
|
|
498
500
|
prevResult: currentResult,
|
|
499
501
|
resumeData,
|
|
500
502
|
activeSteps,
|
|
@@ -531,6 +533,7 @@ async function processWorkflowForEach({
|
|
|
531
533
|
executionPath: [executionPath[0], i],
|
|
532
534
|
resumeSteps,
|
|
533
535
|
stepResults,
|
|
536
|
+
timeTravel,
|
|
534
537
|
prevResult,
|
|
535
538
|
resumeData,
|
|
536
539
|
activeSteps,
|
|
@@ -562,6 +565,7 @@ async function processWorkflowForEach({
|
|
|
562
565
|
runId,
|
|
563
566
|
executionPath: [executionPath[0], idx],
|
|
564
567
|
resumeSteps,
|
|
568
|
+
timeTravel,
|
|
565
569
|
stepResults,
|
|
566
570
|
prevResult,
|
|
567
571
|
resumeData,
|
|
@@ -577,6 +581,7 @@ async function processWorkflowParallel({
|
|
|
577
581
|
stepResults,
|
|
578
582
|
activeSteps,
|
|
579
583
|
resumeSteps,
|
|
584
|
+
timeTravel,
|
|
580
585
|
prevResult,
|
|
581
586
|
resumeData,
|
|
582
587
|
parentWorkflow,
|
|
@@ -604,6 +609,7 @@ async function processWorkflowParallel({
|
|
|
604
609
|
stepResults,
|
|
605
610
|
prevResult,
|
|
606
611
|
resumeData,
|
|
612
|
+
timeTravel,
|
|
607
613
|
parentWorkflow,
|
|
608
614
|
activeSteps,
|
|
609
615
|
requestContext
|
|
@@ -619,6 +625,7 @@ async function processWorkflowConditional({
|
|
|
619
625
|
stepResults,
|
|
620
626
|
activeSteps,
|
|
621
627
|
resumeSteps,
|
|
628
|
+
timeTravel,
|
|
622
629
|
prevResult,
|
|
623
630
|
resumeData,
|
|
624
631
|
parentWorkflow,
|
|
@@ -661,6 +668,7 @@ async function processWorkflowConditional({
|
|
|
661
668
|
executionPath: executionPath.concat([idx]),
|
|
662
669
|
resumeSteps,
|
|
663
670
|
stepResults,
|
|
671
|
+
timeTravel,
|
|
664
672
|
prevResult,
|
|
665
673
|
resumeData,
|
|
666
674
|
parentWorkflow,
|
|
@@ -727,6 +735,7 @@ async function processWorkflowSleep({
|
|
|
727
735
|
stepResults,
|
|
728
736
|
activeSteps,
|
|
729
737
|
resumeSteps,
|
|
738
|
+
timeTravel,
|
|
730
739
|
prevResult,
|
|
731
740
|
resumeData,
|
|
732
741
|
parentWorkflow,
|
|
@@ -798,6 +807,7 @@ async function processWorkflowSleep({
|
|
|
798
807
|
runId,
|
|
799
808
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
800
809
|
resumeSteps,
|
|
810
|
+
timeTravel,
|
|
801
811
|
stepResults,
|
|
802
812
|
prevResult,
|
|
803
813
|
resumeData,
|
|
@@ -817,6 +827,7 @@ async function processWorkflowSleepUntil({
|
|
|
817
827
|
stepResults,
|
|
818
828
|
activeSteps,
|
|
819
829
|
resumeSteps,
|
|
830
|
+
timeTravel,
|
|
820
831
|
prevResult,
|
|
821
832
|
resumeData,
|
|
822
833
|
parentWorkflow,
|
|
@@ -888,6 +899,7 @@ async function processWorkflowSleepUntil({
|
|
|
888
899
|
runId,
|
|
889
900
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
890
901
|
resumeSteps,
|
|
902
|
+
timeTravel,
|
|
891
903
|
stepResults,
|
|
892
904
|
prevResult,
|
|
893
905
|
resumeData,
|
|
@@ -968,6 +980,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
968
980
|
resumeSteps,
|
|
969
981
|
prevResult,
|
|
970
982
|
resumeData,
|
|
983
|
+
timeTravel,
|
|
971
984
|
executionPath,
|
|
972
985
|
stepResults,
|
|
973
986
|
requestContext
|
|
@@ -980,13 +993,14 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
980
993
|
suspendedPaths: {},
|
|
981
994
|
resumeLabels: {},
|
|
982
995
|
waitingPaths: {},
|
|
996
|
+
activeStepsPath: {},
|
|
983
997
|
serializedStepGraph: workflow.serializedStepGraph,
|
|
984
998
|
timestamp: Date.now(),
|
|
985
999
|
runId,
|
|
986
|
-
status: "running",
|
|
987
1000
|
context: stepResults ?? {
|
|
988
1001
|
input: prevResult?.status === "success" ? prevResult.output : void 0
|
|
989
1002
|
},
|
|
1003
|
+
status: "running",
|
|
990
1004
|
value: {}
|
|
991
1005
|
}
|
|
992
1006
|
});
|
|
@@ -1003,6 +1017,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1003
1017
|
input: prevResult?.status === "success" ? prevResult.output : void 0
|
|
1004
1018
|
},
|
|
1005
1019
|
prevResult,
|
|
1020
|
+
timeTravel,
|
|
1006
1021
|
requestContext,
|
|
1007
1022
|
resumeData,
|
|
1008
1023
|
activeSteps: {}
|
|
@@ -1036,7 +1051,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1036
1051
|
});
|
|
1037
1052
|
}
|
|
1038
1053
|
async processWorkflowEnd(args) {
|
|
1039
|
-
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, requestContext, runId } = args;
|
|
1054
|
+
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, requestContext, runId, timeTravel } = args;
|
|
1040
1055
|
if (parentWorkflow) {
|
|
1041
1056
|
await this.mastra.pubsub.publish("workflows", {
|
|
1042
1057
|
type: "workflow.step.end",
|
|
@@ -1052,7 +1067,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1052
1067
|
activeSteps,
|
|
1053
1068
|
parentWorkflow: parentWorkflow.parentWorkflow,
|
|
1054
1069
|
parentContext: parentWorkflow,
|
|
1055
|
-
requestContext
|
|
1070
|
+
requestContext,
|
|
1071
|
+
timeTravel
|
|
1056
1072
|
}
|
|
1057
1073
|
});
|
|
1058
1074
|
}
|
|
@@ -1063,7 +1079,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1063
1079
|
});
|
|
1064
1080
|
}
|
|
1065
1081
|
async processWorkflowSuspend(args) {
|
|
1066
|
-
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, requestContext } = args;
|
|
1082
|
+
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, requestContext, timeTravel } = args;
|
|
1067
1083
|
if (parentWorkflow) {
|
|
1068
1084
|
await this.mastra.pubsub.publish("workflows", {
|
|
1069
1085
|
type: "workflow.step.end",
|
|
@@ -1084,6 +1100,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1084
1100
|
}
|
|
1085
1101
|
}
|
|
1086
1102
|
},
|
|
1103
|
+
timeTravel,
|
|
1087
1104
|
resumeData,
|
|
1088
1105
|
activeSteps,
|
|
1089
1106
|
requestContext,
|
|
@@ -1099,7 +1116,17 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1099
1116
|
});
|
|
1100
1117
|
}
|
|
1101
1118
|
async processWorkflowFail(args) {
|
|
1102
|
-
const {
|
|
1119
|
+
const {
|
|
1120
|
+
workflowId,
|
|
1121
|
+
runId,
|
|
1122
|
+
resumeSteps,
|
|
1123
|
+
prevResult,
|
|
1124
|
+
resumeData,
|
|
1125
|
+
parentWorkflow,
|
|
1126
|
+
activeSteps,
|
|
1127
|
+
requestContext,
|
|
1128
|
+
timeTravel
|
|
1129
|
+
} = args;
|
|
1103
1130
|
await this.mastra.getStorage()?.updateWorkflowState({
|
|
1104
1131
|
workflowName: workflowId,
|
|
1105
1132
|
runId,
|
|
@@ -1119,6 +1146,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1119
1146
|
resumeSteps,
|
|
1120
1147
|
stepResults: parentWorkflow.stepResults,
|
|
1121
1148
|
prevResult,
|
|
1149
|
+
timeTravel,
|
|
1122
1150
|
resumeData,
|
|
1123
1151
|
activeSteps,
|
|
1124
1152
|
requestContext,
|
|
@@ -1141,6 +1169,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1141
1169
|
stepResults,
|
|
1142
1170
|
activeSteps,
|
|
1143
1171
|
resumeSteps,
|
|
1172
|
+
timeTravel,
|
|
1144
1173
|
prevResult,
|
|
1145
1174
|
resumeData,
|
|
1146
1175
|
parentWorkflow,
|
|
@@ -1204,6 +1233,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1204
1233
|
stepResults,
|
|
1205
1234
|
activeSteps,
|
|
1206
1235
|
resumeSteps,
|
|
1236
|
+
timeTravel,
|
|
1207
1237
|
prevResult,
|
|
1208
1238
|
resumeData,
|
|
1209
1239
|
parentWorkflow,
|
|
@@ -1223,6 +1253,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1223
1253
|
stepResults,
|
|
1224
1254
|
activeSteps,
|
|
1225
1255
|
resumeSteps,
|
|
1256
|
+
timeTravel,
|
|
1226
1257
|
prevResult,
|
|
1227
1258
|
resumeData,
|
|
1228
1259
|
parentWorkflow,
|
|
@@ -1243,6 +1274,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1243
1274
|
stepResults,
|
|
1244
1275
|
activeSteps,
|
|
1245
1276
|
resumeSteps,
|
|
1277
|
+
timeTravel,
|
|
1246
1278
|
prevResult,
|
|
1247
1279
|
resumeData,
|
|
1248
1280
|
parentWorkflow,
|
|
@@ -1263,6 +1295,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1263
1295
|
stepResults,
|
|
1264
1296
|
activeSteps,
|
|
1265
1297
|
resumeSteps,
|
|
1298
|
+
timeTravel,
|
|
1266
1299
|
prevResult,
|
|
1267
1300
|
resumeData,
|
|
1268
1301
|
parentWorkflow,
|
|
@@ -1283,6 +1316,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1283
1316
|
stepResults,
|
|
1284
1317
|
activeSteps,
|
|
1285
1318
|
resumeSteps,
|
|
1319
|
+
timeTravel,
|
|
1286
1320
|
prevResult,
|
|
1287
1321
|
resumeData,
|
|
1288
1322
|
parentWorkflow,
|
|
@@ -1375,6 +1409,47 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1375
1409
|
requestContext
|
|
1376
1410
|
}
|
|
1377
1411
|
});
|
|
1412
|
+
} else if (timeTravel && timeTravel.steps?.length > 1 && timeTravel.steps[0] === step.step.id) {
|
|
1413
|
+
const snapshot = await this.mastra?.getStorage()?.loadWorkflowSnapshot({
|
|
1414
|
+
workflowName: step.step.id,
|
|
1415
|
+
runId
|
|
1416
|
+
}) ?? { context: {} };
|
|
1417
|
+
const timeTravelParams = createTimeTravelExecutionParams({
|
|
1418
|
+
steps: timeTravel.steps.slice(1),
|
|
1419
|
+
inputData: timeTravel.inputData,
|
|
1420
|
+
resumeData: timeTravel.resumeData,
|
|
1421
|
+
context: timeTravel.nestedStepResults?.[step.step.id] ?? {},
|
|
1422
|
+
nestedStepsContext: timeTravel.nestedStepResults ?? {},
|
|
1423
|
+
snapshot,
|
|
1424
|
+
graph: step.step.buildExecutionGraph()
|
|
1425
|
+
});
|
|
1426
|
+
const nestedPrevStep = getStep(step.step, timeTravelParams.executionPath);
|
|
1427
|
+
const nestedPrevResult = timeTravelParams.stepResults[nestedPrevStep?.id ?? "input"];
|
|
1428
|
+
await this.mastra.pubsub.publish("workflows", {
|
|
1429
|
+
type: "workflow.start",
|
|
1430
|
+
runId,
|
|
1431
|
+
data: {
|
|
1432
|
+
workflowId: step.step.id,
|
|
1433
|
+
parentWorkflow: {
|
|
1434
|
+
stepId: step.step.id,
|
|
1435
|
+
workflowId,
|
|
1436
|
+
runId,
|
|
1437
|
+
executionPath,
|
|
1438
|
+
resumeSteps,
|
|
1439
|
+
stepResults,
|
|
1440
|
+
timeTravel,
|
|
1441
|
+
input: prevResult,
|
|
1442
|
+
parentWorkflow
|
|
1443
|
+
},
|
|
1444
|
+
executionPath: timeTravelParams.executionPath,
|
|
1445
|
+
runId: randomUUID(),
|
|
1446
|
+
stepResults: timeTravelParams.stepResults,
|
|
1447
|
+
prevResult: { status: "success", output: nestedPrevResult?.payload },
|
|
1448
|
+
timeTravel: timeTravelParams,
|
|
1449
|
+
activeSteps,
|
|
1450
|
+
requestContext
|
|
1451
|
+
}
|
|
1452
|
+
});
|
|
1378
1453
|
} else {
|
|
1379
1454
|
await this.mastra.pubsub.publish("workflows", {
|
|
1380
1455
|
type: "workflow.start",
|
|
@@ -1430,6 +1505,21 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1430
1505
|
for (const [key, value] of Object.entries(requestContext)) {
|
|
1431
1506
|
rc.set(key, value);
|
|
1432
1507
|
}
|
|
1508
|
+
const { resumeData: timeTravelResumeData, validationError: timeTravelResumeValidationError } = await validateStepResumeData({
|
|
1509
|
+
resumeData: timeTravel?.stepResults[step.step.id]?.status === "suspended" ? timeTravel?.resumeData : void 0,
|
|
1510
|
+
step: step.step
|
|
1511
|
+
});
|
|
1512
|
+
let resumeDataToUse;
|
|
1513
|
+
if (timeTravelResumeData && !timeTravelResumeValidationError) {
|
|
1514
|
+
resumeDataToUse = timeTravelResumeData;
|
|
1515
|
+
} else if (timeTravelResumeData && timeTravelResumeValidationError) {
|
|
1516
|
+
this.mastra.getLogger()?.warn("Time travel resume data validation failed", {
|
|
1517
|
+
stepId: step.step.id,
|
|
1518
|
+
error: timeTravelResumeValidationError.message
|
|
1519
|
+
});
|
|
1520
|
+
} else if (resumeSteps?.length > 0 && resumeSteps?.[0] === step.step.id) {
|
|
1521
|
+
resumeDataToUse = resumeData;
|
|
1522
|
+
}
|
|
1433
1523
|
const stepResult = await this.stepExecutor.execute({
|
|
1434
1524
|
workflowId,
|
|
1435
1525
|
step: step.step,
|
|
@@ -1440,7 +1530,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1440
1530
|
emitter: ee,
|
|
1441
1531
|
requestContext: rc,
|
|
1442
1532
|
input: prevResult?.output,
|
|
1443
|
-
resumeData:
|
|
1533
|
+
resumeData: resumeDataToUse,
|
|
1444
1534
|
retryCount,
|
|
1445
1535
|
foreachIdx: step.type === "foreach" ? executionPath[1] : void 0,
|
|
1446
1536
|
validateInputs: workflow.options.validateInputs
|
|
@@ -1494,6 +1584,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1494
1584
|
executionPath,
|
|
1495
1585
|
resumeSteps,
|
|
1496
1586
|
stepResults,
|
|
1587
|
+
timeTravel,
|
|
1497
1588
|
prevResult,
|
|
1498
1589
|
activeSteps,
|
|
1499
1590
|
requestContext,
|
|
@@ -1534,6 +1625,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1534
1625
|
runId,
|
|
1535
1626
|
executionPath,
|
|
1536
1627
|
resumeSteps,
|
|
1628
|
+
timeTravel,
|
|
1629
|
+
//timeTravel is passed in as workflow.step.end ends the step, not the workflow, the timeTravel info is passed to the next step to run.
|
|
1537
1630
|
stepResults,
|
|
1538
1631
|
prevResult: stepResult,
|
|
1539
1632
|
activeSteps,
|
|
@@ -1548,6 +1641,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1548
1641
|
runId,
|
|
1549
1642
|
executionPath,
|
|
1550
1643
|
resumeSteps,
|
|
1644
|
+
timeTravel,
|
|
1551
1645
|
prevResult,
|
|
1552
1646
|
parentWorkflow,
|
|
1553
1647
|
stepResults,
|
|
@@ -1637,6 +1731,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1637
1731
|
resumeSteps,
|
|
1638
1732
|
parentWorkflow,
|
|
1639
1733
|
stepResults,
|
|
1734
|
+
timeTravel,
|
|
1640
1735
|
prevResult,
|
|
1641
1736
|
activeSteps,
|
|
1642
1737
|
requestContext
|
|
@@ -1670,7 +1765,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1670
1765
|
stepResults,
|
|
1671
1766
|
prevResult,
|
|
1672
1767
|
activeSteps,
|
|
1673
|
-
requestContext
|
|
1768
|
+
requestContext,
|
|
1769
|
+
timeTravel
|
|
1674
1770
|
}
|
|
1675
1771
|
});
|
|
1676
1772
|
await this.mastra.pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
@@ -1747,7 +1843,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1747
1843
|
stepResults,
|
|
1748
1844
|
prevResult: { status: "success", output: allResults },
|
|
1749
1845
|
activeSteps,
|
|
1750
|
-
requestContext
|
|
1846
|
+
requestContext,
|
|
1847
|
+
timeTravel
|
|
1751
1848
|
}
|
|
1752
1849
|
});
|
|
1753
1850
|
} else if (step?.type === "foreach") {
|
|
@@ -1763,7 +1860,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1763
1860
|
stepResults,
|
|
1764
1861
|
prevResult: { ...prevResult, output: prevResult?.payload },
|
|
1765
1862
|
activeSteps,
|
|
1766
|
-
requestContext
|
|
1863
|
+
requestContext,
|
|
1864
|
+
timeTravel
|
|
1767
1865
|
}
|
|
1768
1866
|
});
|
|
1769
1867
|
} else if (executionPath[0] >= workflow.stepGraph.length - 1) {
|
|
@@ -1792,7 +1890,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1792
1890
|
stepResults,
|
|
1793
1891
|
prevResult,
|
|
1794
1892
|
activeSteps,
|
|
1795
|
-
requestContext
|
|
1893
|
+
requestContext,
|
|
1894
|
+
timeTravel
|
|
1796
1895
|
}
|
|
1797
1896
|
});
|
|
1798
1897
|
}
|
|
@@ -1928,7 +2027,8 @@ function cloneWorkflow(workflow, opts) {
|
|
|
1928
2027
|
inputSchema: workflow.inputSchema,
|
|
1929
2028
|
outputSchema: workflow.outputSchema,
|
|
1930
2029
|
steps: workflow.stepDefs,
|
|
1931
|
-
mastra: workflow.mastra
|
|
2030
|
+
mastra: workflow.mastra,
|
|
2031
|
+
options: workflow.options
|
|
1932
2032
|
});
|
|
1933
2033
|
wf.setStepFlow(workflow.stepGraph);
|
|
1934
2034
|
wf.commit();
|
|
@@ -1940,7 +2040,12 @@ function cloneStep(step, opts) {
|
|
|
1940
2040
|
description: step.description,
|
|
1941
2041
|
inputSchema: step.inputSchema,
|
|
1942
2042
|
outputSchema: step.outputSchema,
|
|
2043
|
+
suspendSchema: step.suspendSchema,
|
|
2044
|
+
resumeSchema: step.resumeSchema,
|
|
2045
|
+
stateSchema: step.stateSchema,
|
|
1943
2046
|
execute: step.execute,
|
|
2047
|
+
retries: step.retries,
|
|
2048
|
+
scorers: step.scorers,
|
|
1944
2049
|
component: step.component
|
|
1945
2050
|
};
|
|
1946
2051
|
}
|
|
@@ -2071,7 +2176,7 @@ function createWorkflow(params) {
|
|
|
2071
2176
|
mastra: params.mastra,
|
|
2072
2177
|
eventProcessor,
|
|
2073
2178
|
options: {
|
|
2074
|
-
validateInputs: params.options?.validateInputs ??
|
|
2179
|
+
validateInputs: params.options?.validateInputs ?? true,
|
|
2075
2180
|
shouldPersistSnapshot: params.options?.shouldPersistSnapshot ?? (() => true),
|
|
2076
2181
|
tracingPolicy: params.options?.tracingPolicy
|
|
2077
2182
|
}
|
|
@@ -2084,6 +2189,7 @@ function createWorkflow(params) {
|
|
|
2084
2189
|
var EventedWorkflow = class extends Workflow {
|
|
2085
2190
|
constructor(params) {
|
|
2086
2191
|
super(params);
|
|
2192
|
+
this.engineType = "evented";
|
|
2087
2193
|
}
|
|
2088
2194
|
__registerMastra(mastra) {
|
|
2089
2195
|
super.__registerMastra(mastra);
|
|
@@ -2100,7 +2206,9 @@ var EventedWorkflow = class extends Workflow {
|
|
|
2100
2206
|
mastra: this.mastra,
|
|
2101
2207
|
retryConfig: this.retryConfig,
|
|
2102
2208
|
cleanup: () => this.runs.delete(runIdToUse),
|
|
2103
|
-
workflowSteps: this.steps
|
|
2209
|
+
workflowSteps: this.steps,
|
|
2210
|
+
validateInputs: this.options?.validateInputs,
|
|
2211
|
+
workflowEngineType: this.engineType
|
|
2104
2212
|
});
|
|
2105
2213
|
this.runs.set(runIdToUse, run);
|
|
2106
2214
|
const shouldPersistSnapshot = this.options?.shouldPersistSnapshot?.({
|
|
@@ -2119,6 +2227,7 @@ var EventedWorkflow = class extends Workflow {
|
|
|
2119
2227
|
context: {},
|
|
2120
2228
|
activePaths: [],
|
|
2121
2229
|
serializedStepGraph: this.serializedStepGraph,
|
|
2230
|
+
activeStepsPath: {},
|
|
2122
2231
|
suspendedPaths: {},
|
|
2123
2232
|
resumeLabels: {},
|
|
2124
2233
|
waitingPaths: {},
|
|
@@ -2157,15 +2266,16 @@ var EventedRun = class extends Run {
|
|
|
2157
2266
|
snapshot: {
|
|
2158
2267
|
runId: this.runId,
|
|
2159
2268
|
serializedStepGraph: this.serializedStepGraph,
|
|
2269
|
+
status: "running",
|
|
2160
2270
|
value: {},
|
|
2161
2271
|
context: {},
|
|
2162
2272
|
requestContext: Object.fromEntries(requestContext.entries()),
|
|
2163
2273
|
activePaths: [],
|
|
2274
|
+
activeStepsPath: {},
|
|
2164
2275
|
suspendedPaths: {},
|
|
2165
2276
|
resumeLabels: {},
|
|
2166
2277
|
waitingPaths: {},
|
|
2167
|
-
timestamp: Date.now()
|
|
2168
|
-
status: "running"
|
|
2278
|
+
timestamp: Date.now()
|
|
2169
2279
|
}
|
|
2170
2280
|
});
|
|
2171
2281
|
const inputDataToUse = await this._validateInput(inputData);
|
|
@@ -2203,9 +2313,14 @@ var EventedRun = class extends Run {
|
|
|
2203
2313
|
}
|
|
2204
2314
|
// TODO: stream
|
|
2205
2315
|
async resume(params) {
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2316
|
+
let steps = [];
|
|
2317
|
+
if (typeof params.step === "string") {
|
|
2318
|
+
steps = params.step.split(".");
|
|
2319
|
+
} else {
|
|
2320
|
+
steps = (Array.isArray(params.step) ? params.step : [params.step]).map(
|
|
2321
|
+
(step) => typeof step === "string" ? step : step?.id
|
|
2322
|
+
);
|
|
2323
|
+
}
|
|
2209
2324
|
if (steps.length === 0) {
|
|
2210
2325
|
throw new Error("No steps provided to resume");
|
|
2211
2326
|
}
|
|
@@ -2403,6 +2518,23 @@ var EventedExecutionEngine = class extends ExecutionEngine {
|
|
|
2403
2518
|
format: params.format
|
|
2404
2519
|
}
|
|
2405
2520
|
});
|
|
2521
|
+
} else if (params.timeTravel) {
|
|
2522
|
+
const prevStep = getStep(this.mastra.getWorkflow(params.workflowId), params.timeTravel.executionPath);
|
|
2523
|
+
const prevResult = params.timeTravel.stepResults[prevStep?.id ?? "input"];
|
|
2524
|
+
await pubsub.publish("workflows", {
|
|
2525
|
+
type: "workflow.start",
|
|
2526
|
+
runId: params.runId,
|
|
2527
|
+
data: {
|
|
2528
|
+
workflowId: params.workflowId,
|
|
2529
|
+
runId: params.runId,
|
|
2530
|
+
executionPath: params.timeTravel.executionPath,
|
|
2531
|
+
stepResults: params.timeTravel.stepResults,
|
|
2532
|
+
timeTravel: params.timeTravel,
|
|
2533
|
+
prevResult: { status: "success", output: prevResult?.payload },
|
|
2534
|
+
requestContext: Object.fromEntries(params.requestContext.entries()),
|
|
2535
|
+
format: params.format
|
|
2536
|
+
}
|
|
2537
|
+
});
|
|
2406
2538
|
} else {
|
|
2407
2539
|
await pubsub.publish("workflows", {
|
|
2408
2540
|
type: "workflow.start",
|
|
@@ -2461,5 +2593,5 @@ var EventedExecutionEngine = class extends ExecutionEngine {
|
|
|
2461
2593
|
};
|
|
2462
2594
|
|
|
2463
2595
|
export { EventedExecutionEngine, EventedRun, EventedWorkflow, StepExecutor, WorkflowEventProcessor, cloneStep, cloneWorkflow, createStep, createWorkflow };
|
|
2464
|
-
//# sourceMappingURL=chunk-
|
|
2465
|
-
//# sourceMappingURL=chunk-
|
|
2596
|
+
//# sourceMappingURL=chunk-4DWZ4Z6H.js.map
|
|
2597
|
+
//# sourceMappingURL=chunk-4DWZ4Z6H.js.map
|