@mastra/core 0.24.6 → 0.24.7-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.
- package/CHANGELOG.md +54 -0
- package/dist/agent/index.cjs +13 -13
- package/dist/agent/index.js +2 -2
- package/dist/agent/input-processor/index.cjs +6 -6
- package/dist/agent/input-processor/index.js +1 -1
- package/dist/agent/message-list/index.d.ts.map +1 -1
- package/dist/ai-tracing/index.cjs +36 -36
- package/dist/ai-tracing/index.js +1 -1
- package/dist/{chunk-XWGHD4C7.cjs → chunk-22DLIF7L.cjs} +5 -5
- package/dist/{chunk-XWGHD4C7.cjs.map → chunk-22DLIF7L.cjs.map} +1 -1
- package/dist/{chunk-PAOBGBU7.cjs → chunk-3IDFSGG3.cjs} +4 -4
- package/dist/{chunk-PAOBGBU7.cjs.map → chunk-3IDFSGG3.cjs.map} +1 -1
- package/dist/{chunk-42RUESSD.cjs → chunk-4YYPQOP7.cjs} +9 -4
- package/dist/{chunk-42RUESSD.cjs.map → chunk-4YYPQOP7.cjs.map} +1 -1
- package/dist/{chunk-AQGLVU53.cjs → chunk-5PSD3IKG.cjs} +19 -6
- package/dist/chunk-5PSD3IKG.cjs.map +1 -0
- package/dist/{chunk-LAQQETGP.js → chunk-5UWR4YYL.js} +33 -28
- package/dist/chunk-5UWR4YYL.js.map +1 -0
- package/dist/{chunk-RJOVFHWN.cjs → chunk-6DFSLVVY.cjs} +34 -7
- package/dist/chunk-6DFSLVVY.cjs.map +1 -0
- package/dist/{chunk-6D2K2CAA.js → chunk-6VB52TJV.js} +3 -3
- package/dist/{chunk-6D2K2CAA.js.map → chunk-6VB52TJV.js.map} +1 -1
- package/dist/{chunk-VXHOOZSK.js → chunk-72F4RGK7.js} +3 -3
- package/dist/{chunk-VXHOOZSK.js.map → chunk-72F4RGK7.js.map} +1 -1
- package/dist/{chunk-XDMQQZNX.cjs → chunk-AHQOJZT2.cjs} +74 -66
- package/dist/chunk-AHQOJZT2.cjs.map +1 -0
- package/dist/{chunk-JVV5LREI.js → chunk-BKBVQTOH.js} +2 -2
- package/dist/chunk-BKBVQTOH.js.map +1 -0
- package/dist/{chunk-DMBN72QF.cjs → chunk-DISETAP2.cjs} +4 -4
- package/dist/{chunk-DMBN72QF.cjs.map → chunk-DISETAP2.cjs.map} +1 -1
- package/dist/{chunk-BLUDYAPI.js → chunk-DSUKMFZY.js} +19 -6
- package/dist/chunk-DSUKMFZY.js.map +1 -0
- package/dist/{chunk-NRQC7DQW.js → chunk-DYJA57WK.js} +55 -7
- package/dist/chunk-DYJA57WK.js.map +1 -0
- package/dist/{chunk-Q6LWNLAJ.js → chunk-GIK7MM2K.js} +8 -3
- package/dist/{chunk-Q6LWNLAJ.js.map → chunk-GIK7MM2K.js.map} +1 -1
- package/dist/{chunk-DHLW4AP7.js → chunk-GOEAJJED.js} +3 -3
- package/dist/{chunk-DHLW4AP7.js.map → chunk-GOEAJJED.js.map} +1 -1
- package/dist/{chunk-GZDIHQDK.cjs → chunk-GWA56ELO.cjs} +4 -4
- package/dist/{chunk-GZDIHQDK.cjs.map → chunk-GWA56ELO.cjs.map} +1 -1
- package/dist/{chunk-CT2DMHGC.cjs → chunk-ICICKWAG.cjs} +8 -8
- package/dist/{chunk-CT2DMHGC.cjs.map → chunk-ICICKWAG.cjs.map} +1 -1
- package/dist/{chunk-Z6QCWTTO.js → chunk-KQGP7VMN.js} +145 -19
- package/dist/chunk-KQGP7VMN.js.map +1 -0
- package/dist/{chunk-INOOZ2A2.js → chunk-PHSTPDWR.js} +33 -6
- package/dist/chunk-PHSTPDWR.js.map +1 -0
- package/dist/{chunk-WIMFJ2BA.js → chunk-PPAIPZ6C.js} +51 -13
- package/dist/chunk-PPAIPZ6C.js.map +1 -0
- package/dist/{chunk-UWTYVVVZ.js → chunk-RLYWCJQ6.js} +3 -3
- package/dist/{chunk-UWTYVVVZ.js.map → chunk-RLYWCJQ6.js.map} +1 -1
- package/dist/{chunk-HCCXJ5YJ.js → chunk-RP4YCZP7.js} +3 -3
- package/dist/{chunk-HCCXJ5YJ.js.map → chunk-RP4YCZP7.js.map} +1 -1
- package/dist/{chunk-CYEQK4PM.cjs → chunk-RQPGIUUA.cjs} +6 -6
- package/dist/{chunk-CYEQK4PM.cjs.map → chunk-RQPGIUUA.cjs.map} +1 -1
- package/dist/{chunk-46XGIEXM.cjs → chunk-RWPKCFZT.cjs} +4 -4
- package/dist/{chunk-46XGIEXM.cjs.map → chunk-RWPKCFZT.cjs.map} +1 -1
- package/dist/{chunk-KWF3J2Q4.cjs → chunk-SJ3PJ5D6.cjs} +11 -11
- package/dist/{chunk-KWF3J2Q4.cjs.map → chunk-SJ3PJ5D6.cjs.map} +1 -1
- package/dist/{chunk-ICF3MCIN.cjs → chunk-TR5CDVHO.cjs} +65 -17
- package/dist/chunk-TR5CDVHO.cjs.map +1 -0
- package/dist/{chunk-PIH5FBNQ.cjs → chunk-U57JN7JY.cjs} +154 -28
- package/dist/chunk-U57JN7JY.cjs.map +1 -0
- package/dist/{chunk-NPNGPMT2.js → chunk-V2IMZSNO.js} +3 -3
- package/dist/{chunk-NPNGPMT2.js.map → chunk-V2IMZSNO.js.map} +1 -1
- package/dist/{chunk-IAJHRFO4.cjs → chunk-YPYLWTZI.cjs} +60 -21
- package/dist/chunk-YPYLWTZI.cjs.map +1 -0
- package/dist/{chunk-ZIWN73GQ.js → chunk-Z6ZIJYKK.js} +5 -5
- package/dist/{chunk-ZIWN73GQ.js.map → chunk-Z6ZIJYKK.js.map} +1 -1
- package/dist/{chunk-MRSBLBQ5.js → chunk-ZOQ6Q5Q3.js} +4 -4
- package/dist/{chunk-MRSBLBQ5.js.map → chunk-ZOQ6Q5Q3.js.map} +1 -1
- package/dist/{chunk-TX4TTPYJ.cjs → chunk-ZZ2DSE2G.cjs} +2 -2
- package/dist/chunk-ZZ2DSE2G.cjs.map +1 -0
- package/dist/index.cjs +96 -64
- package/dist/index.js +13 -13
- package/dist/llm/index.cjs +8 -8
- package/dist/llm/index.js +2 -2
- package/dist/llm/model/provider-registry.d.ts.map +1 -1
- package/dist/loop/index.cjs +2 -2
- package/dist/loop/index.js +1 -1
- package/dist/loop/workflows/stream.d.ts +1 -1
- package/dist/loop/workflows/stream.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.d.ts +3 -1
- package/dist/mastra/index.d.ts.map +1 -1
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +4 -4
- package/dist/memory/index.js +1 -1
- package/dist/processors/index.cjs +11 -11
- package/dist/processors/index.js +1 -1
- package/dist/provider-registry-254GJGUL.cjs +40 -0
- package/dist/{provider-registry-RUDYHG7J.cjs.map → provider-registry-254GJGUL.cjs.map} +1 -1
- package/dist/provider-registry-7BUYRBGO.js +3 -0
- package/dist/{provider-registry-THITZUJ7.js.map → provider-registry-7BUYRBGO.js.map} +1 -1
- package/dist/relevance/index.cjs +4 -4
- package/dist/relevance/index.js +1 -1
- package/dist/scores/index.cjs +9 -9
- package/dist/scores/index.js +2 -2
- package/dist/scores/scoreTraces/index.cjs +8 -8
- package/dist/scores/scoreTraces/index.js +3 -3
- package/dist/server/index.cjs +25 -36
- package/dist/server/index.cjs.map +1 -1
- package/dist/server/index.js +24 -35
- package/dist/server/index.js.map +1 -1
- package/dist/server/simple-auth.d.ts +13 -18
- package/dist/server/simple-auth.d.ts.map +1 -1
- package/dist/storage/base.d.ts +2 -9
- package/dist/storage/base.d.ts.map +1 -1
- package/dist/storage/domains/workflows/base.d.ts +2 -9
- package/dist/storage/domains/workflows/base.d.ts.map +1 -1
- package/dist/storage/domains/workflows/inmemory.d.ts +2 -9
- package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -1
- package/dist/storage/index.cjs +31 -10
- package/dist/storage/index.cjs.map +1 -1
- package/dist/storage/index.js +25 -4
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/types.d.ts +10 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/stream/aisdk/v5/transform.d.ts.map +1 -1
- package/dist/stream/index.cjs +11 -11
- package/dist/stream/index.js +2 -2
- package/dist/telemetry/index.cjs +7 -7
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/telemetry.decorators.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/tts/index.cjs +2 -2
- package/dist/tts/index.js +1 -1
- package/dist/utils.cjs +37 -17
- package/dist/utils.d.ts +32 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/voice/index.cjs +6 -6
- package/dist/voice/index.js +1 -1
- package/dist/workflows/default.d.ts +26 -8
- package/dist/workflows/default.d.ts.map +1 -1
- package/dist/workflows/evented/execution-engine.d.ts +5 -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 +5 -3
- package/dist/workflows/execution-engine.d.ts.map +1 -1
- package/dist/workflows/index.cjs +26 -14
- package/dist/workflows/index.js +1 -1
- package/dist/workflows/legacy/index.cjs +22 -22
- package/dist/workflows/legacy/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 +51 -1
- 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 +98 -12
- package/dist/workflows/workflow.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/chunk-AQGLVU53.cjs.map +0 -1
- package/dist/chunk-BLUDYAPI.js.map +0 -1
- package/dist/chunk-IAJHRFO4.cjs.map +0 -1
- package/dist/chunk-ICF3MCIN.cjs.map +0 -1
- package/dist/chunk-INOOZ2A2.js.map +0 -1
- package/dist/chunk-JVV5LREI.js.map +0 -1
- package/dist/chunk-LAQQETGP.js.map +0 -1
- package/dist/chunk-NRQC7DQW.js.map +0 -1
- package/dist/chunk-PIH5FBNQ.cjs.map +0 -1
- package/dist/chunk-RJOVFHWN.cjs.map +0 -1
- package/dist/chunk-TX4TTPYJ.cjs.map +0 -1
- package/dist/chunk-WIMFJ2BA.js.map +0 -1
- package/dist/chunk-XDMQQZNX.cjs.map +0 -1
- package/dist/chunk-Z6QCWTTO.js.map +0 -1
- package/dist/provider-registry-RUDYHG7J.cjs +0 -40
- package/dist/provider-registry-THITZUJ7.js +0 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkAHQOJZT2_cjs = require('./chunk-AHQOJZT2.cjs');
|
|
4
4
|
var chunkABJOUEVA_cjs = require('./chunk-ABJOUEVA.cjs');
|
|
5
5
|
var chunkGPWMM745_cjs = require('./chunk-GPWMM745.cjs');
|
|
6
6
|
var chunk5NTO7S5I_cjs = require('./chunk-5NTO7S5I.cjs');
|
|
@@ -31,7 +31,7 @@ var StepExecutor = class extends chunk6VOPKVYH_cjs.MastraBase {
|
|
|
31
31
|
let suspended;
|
|
32
32
|
let bailed;
|
|
33
33
|
const startedAt = Date.now();
|
|
34
|
-
const { inputData, validationError } = await
|
|
34
|
+
const { inputData, validationError } = await chunkAHQOJZT2_cjs.validateStepInput({
|
|
35
35
|
prevOutput: typeof params.foreachIdx === "number" ? params.input?.[params.foreachIdx] : params.input,
|
|
36
36
|
step,
|
|
37
37
|
validateInputs: params.validateInputs ?? false
|
|
@@ -63,7 +63,7 @@ var StepExecutor = class extends chunk6VOPKVYH_cjs.MastraBase {
|
|
|
63
63
|
runCount,
|
|
64
64
|
resumeData: params.resumeData,
|
|
65
65
|
getInitData: () => stepResults?.input,
|
|
66
|
-
getStepResult:
|
|
66
|
+
getStepResult: chunkAHQOJZT2_cjs.getStepResult.bind(this, stepResults),
|
|
67
67
|
suspend: async (suspendPayload) => {
|
|
68
68
|
suspended = { payload: { ...suspendPayload, __workflow_meta: { runId, path: [step.id] } } };
|
|
69
69
|
},
|
|
@@ -183,7 +183,7 @@ var StepExecutor = class extends chunk6VOPKVYH_cjs.MastraBase {
|
|
|
183
183
|
runCount,
|
|
184
184
|
resumeData,
|
|
185
185
|
getInitData: () => stepResults?.input,
|
|
186
|
-
getStepResult:
|
|
186
|
+
getStepResult: chunkAHQOJZT2_cjs.getStepResult.bind(this, stepResults),
|
|
187
187
|
suspend: async (_suspendPayload) => {
|
|
188
188
|
throw new Error("Not implemented");
|
|
189
189
|
},
|
|
@@ -230,7 +230,7 @@ var StepExecutor = class extends chunk6VOPKVYH_cjs.MastraBase {
|
|
|
230
230
|
runCount,
|
|
231
231
|
resumeData: params.resumeData,
|
|
232
232
|
getInitData: () => stepResults?.input,
|
|
233
|
-
getStepResult:
|
|
233
|
+
getStepResult: chunkAHQOJZT2_cjs.getStepResult.bind(this, stepResults),
|
|
234
234
|
suspend: async (_suspendPayload) => {
|
|
235
235
|
throw new Error("Not implemented");
|
|
236
236
|
},
|
|
@@ -280,7 +280,7 @@ var StepExecutor = class extends chunk6VOPKVYH_cjs.MastraBase {
|
|
|
280
280
|
runCount,
|
|
281
281
|
resumeData: params.resumeData,
|
|
282
282
|
getInitData: () => stepResults?.input,
|
|
283
|
-
getStepResult:
|
|
283
|
+
getStepResult: chunkAHQOJZT2_cjs.getStepResult.bind(this, stepResults),
|
|
284
284
|
suspend: async (_suspendPayload) => {
|
|
285
285
|
throw new Error("Not implemented");
|
|
286
286
|
},
|
|
@@ -439,6 +439,7 @@ async function processWorkflowForEach({
|
|
|
439
439
|
stepResults,
|
|
440
440
|
activeSteps,
|
|
441
441
|
resumeSteps,
|
|
442
|
+
timeTravel,
|
|
442
443
|
resumeData,
|
|
443
444
|
parentWorkflow,
|
|
444
445
|
runtimeContext
|
|
@@ -461,6 +462,7 @@ async function processWorkflowForEach({
|
|
|
461
462
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
462
463
|
resumeSteps,
|
|
463
464
|
stepResults,
|
|
465
|
+
timeTravel,
|
|
464
466
|
prevResult: currentResult,
|
|
465
467
|
resumeData,
|
|
466
468
|
activeSteps,
|
|
@@ -497,6 +499,7 @@ async function processWorkflowForEach({
|
|
|
497
499
|
executionPath: [executionPath[0], i],
|
|
498
500
|
resumeSteps,
|
|
499
501
|
stepResults,
|
|
502
|
+
timeTravel,
|
|
500
503
|
prevResult,
|
|
501
504
|
resumeData,
|
|
502
505
|
activeSteps,
|
|
@@ -528,6 +531,7 @@ async function processWorkflowForEach({
|
|
|
528
531
|
runId,
|
|
529
532
|
executionPath: [executionPath[0], idx],
|
|
530
533
|
resumeSteps,
|
|
534
|
+
timeTravel,
|
|
531
535
|
stepResults,
|
|
532
536
|
prevResult,
|
|
533
537
|
resumeData,
|
|
@@ -543,6 +547,7 @@ async function processWorkflowParallel({
|
|
|
543
547
|
stepResults,
|
|
544
548
|
activeSteps,
|
|
545
549
|
resumeSteps,
|
|
550
|
+
timeTravel,
|
|
546
551
|
prevResult,
|
|
547
552
|
resumeData,
|
|
548
553
|
parentWorkflow,
|
|
@@ -570,6 +575,7 @@ async function processWorkflowParallel({
|
|
|
570
575
|
stepResults,
|
|
571
576
|
prevResult,
|
|
572
577
|
resumeData,
|
|
578
|
+
timeTravel,
|
|
573
579
|
parentWorkflow,
|
|
574
580
|
activeSteps,
|
|
575
581
|
runtimeContext
|
|
@@ -585,6 +591,7 @@ async function processWorkflowConditional({
|
|
|
585
591
|
stepResults,
|
|
586
592
|
activeSteps,
|
|
587
593
|
resumeSteps,
|
|
594
|
+
timeTravel,
|
|
588
595
|
prevResult,
|
|
589
596
|
resumeData,
|
|
590
597
|
parentWorkflow,
|
|
@@ -627,6 +634,7 @@ async function processWorkflowConditional({
|
|
|
627
634
|
executionPath: executionPath.concat([idx]),
|
|
628
635
|
resumeSteps,
|
|
629
636
|
stepResults,
|
|
637
|
+
timeTravel,
|
|
630
638
|
prevResult,
|
|
631
639
|
resumeData,
|
|
632
640
|
parentWorkflow,
|
|
@@ -693,6 +701,7 @@ async function processWorkflowSleep({
|
|
|
693
701
|
stepResults,
|
|
694
702
|
activeSteps,
|
|
695
703
|
resumeSteps,
|
|
704
|
+
timeTravel,
|
|
696
705
|
prevResult,
|
|
697
706
|
resumeData,
|
|
698
707
|
parentWorkflow,
|
|
@@ -764,6 +773,7 @@ async function processWorkflowSleep({
|
|
|
764
773
|
runId,
|
|
765
774
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
766
775
|
resumeSteps,
|
|
776
|
+
timeTravel,
|
|
767
777
|
stepResults,
|
|
768
778
|
prevResult,
|
|
769
779
|
resumeData,
|
|
@@ -783,6 +793,7 @@ async function processWorkflowSleepUntil({
|
|
|
783
793
|
stepResults,
|
|
784
794
|
activeSteps,
|
|
785
795
|
resumeSteps,
|
|
796
|
+
timeTravel,
|
|
786
797
|
prevResult,
|
|
787
798
|
resumeData,
|
|
788
799
|
parentWorkflow,
|
|
@@ -854,6 +865,7 @@ async function processWorkflowSleepUntil({
|
|
|
854
865
|
runId,
|
|
855
866
|
executionPath: executionPath.slice(0, -1).concat([executionPath[executionPath.length - 1] + 1]),
|
|
856
867
|
resumeSteps,
|
|
868
|
+
timeTravel,
|
|
857
869
|
stepResults,
|
|
858
870
|
prevResult,
|
|
859
871
|
resumeData,
|
|
@@ -934,6 +946,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
934
946
|
resumeSteps,
|
|
935
947
|
prevResult,
|
|
936
948
|
resumeData,
|
|
949
|
+
timeTravel,
|
|
937
950
|
executionPath,
|
|
938
951
|
stepResults,
|
|
939
952
|
runtimeContext
|
|
@@ -946,13 +959,14 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
946
959
|
suspendedPaths: {},
|
|
947
960
|
resumeLabels: {},
|
|
948
961
|
waitingPaths: {},
|
|
962
|
+
activeStepsPath: {},
|
|
949
963
|
serializedStepGraph: workflow.serializedStepGraph,
|
|
950
964
|
timestamp: Date.now(),
|
|
951
965
|
runId,
|
|
952
|
-
status: "running",
|
|
953
966
|
context: stepResults ?? {
|
|
954
967
|
input: prevResult?.status === "success" ? prevResult.output : void 0
|
|
955
968
|
},
|
|
969
|
+
status: "running",
|
|
956
970
|
value: {}
|
|
957
971
|
}
|
|
958
972
|
});
|
|
@@ -969,6 +983,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
969
983
|
input: prevResult?.status === "success" ? prevResult.output : void 0
|
|
970
984
|
},
|
|
971
985
|
prevResult,
|
|
986
|
+
timeTravel,
|
|
972
987
|
runtimeContext,
|
|
973
988
|
resumeData,
|
|
974
989
|
activeSteps: {}
|
|
@@ -1019,7 +1034,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1019
1034
|
});
|
|
1020
1035
|
}
|
|
1021
1036
|
async processWorkflowEnd(args) {
|
|
1022
|
-
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runtimeContext, runId } = args;
|
|
1037
|
+
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runtimeContext, runId, timeTravel } = args;
|
|
1023
1038
|
if (parentWorkflow) {
|
|
1024
1039
|
await this.mastra.pubsub.publish("workflows", {
|
|
1025
1040
|
type: "workflow.step.end",
|
|
@@ -1035,7 +1050,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1035
1050
|
activeSteps,
|
|
1036
1051
|
parentWorkflow: parentWorkflow.parentWorkflow,
|
|
1037
1052
|
parentContext: parentWorkflow,
|
|
1038
|
-
runtimeContext
|
|
1053
|
+
runtimeContext,
|
|
1054
|
+
timeTravel
|
|
1039
1055
|
}
|
|
1040
1056
|
});
|
|
1041
1057
|
}
|
|
@@ -1046,7 +1062,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1046
1062
|
});
|
|
1047
1063
|
}
|
|
1048
1064
|
async processWorkflowSuspend(args) {
|
|
1049
|
-
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, runtimeContext } = args;
|
|
1065
|
+
const { resumeSteps, prevResult, resumeData, parentWorkflow, activeSteps, runId, runtimeContext, timeTravel } = args;
|
|
1050
1066
|
if (parentWorkflow) {
|
|
1051
1067
|
await this.mastra.pubsub.publish("workflows", {
|
|
1052
1068
|
type: "workflow.step.end",
|
|
@@ -1067,6 +1083,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1067
1083
|
}
|
|
1068
1084
|
}
|
|
1069
1085
|
},
|
|
1086
|
+
timeTravel,
|
|
1070
1087
|
resumeData,
|
|
1071
1088
|
activeSteps,
|
|
1072
1089
|
runtimeContext,
|
|
@@ -1082,7 +1099,17 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1082
1099
|
});
|
|
1083
1100
|
}
|
|
1084
1101
|
async processWorkflowFail(args) {
|
|
1085
|
-
const {
|
|
1102
|
+
const {
|
|
1103
|
+
workflowId,
|
|
1104
|
+
runId,
|
|
1105
|
+
resumeSteps,
|
|
1106
|
+
prevResult,
|
|
1107
|
+
resumeData,
|
|
1108
|
+
parentWorkflow,
|
|
1109
|
+
activeSteps,
|
|
1110
|
+
runtimeContext,
|
|
1111
|
+
timeTravel
|
|
1112
|
+
} = args;
|
|
1086
1113
|
await this.mastra.getStorage()?.updateWorkflowState({
|
|
1087
1114
|
workflowName: workflowId,
|
|
1088
1115
|
runId,
|
|
@@ -1102,6 +1129,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1102
1129
|
resumeSteps,
|
|
1103
1130
|
stepResults: parentWorkflow.stepResults,
|
|
1104
1131
|
prevResult,
|
|
1132
|
+
timeTravel,
|
|
1105
1133
|
resumeData,
|
|
1106
1134
|
activeSteps,
|
|
1107
1135
|
runtimeContext,
|
|
@@ -1124,6 +1152,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1124
1152
|
stepResults,
|
|
1125
1153
|
activeSteps,
|
|
1126
1154
|
resumeSteps,
|
|
1155
|
+
timeTravel,
|
|
1127
1156
|
prevResult,
|
|
1128
1157
|
resumeData,
|
|
1129
1158
|
parentWorkflow,
|
|
@@ -1187,6 +1216,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1187
1216
|
stepResults,
|
|
1188
1217
|
activeSteps,
|
|
1189
1218
|
resumeSteps,
|
|
1219
|
+
timeTravel,
|
|
1190
1220
|
prevResult,
|
|
1191
1221
|
resumeData,
|
|
1192
1222
|
parentWorkflow,
|
|
@@ -1206,6 +1236,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1206
1236
|
stepResults,
|
|
1207
1237
|
activeSteps,
|
|
1208
1238
|
resumeSteps,
|
|
1239
|
+
timeTravel,
|
|
1209
1240
|
prevResult,
|
|
1210
1241
|
resumeData,
|
|
1211
1242
|
parentWorkflow,
|
|
@@ -1226,6 +1257,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1226
1257
|
stepResults,
|
|
1227
1258
|
activeSteps,
|
|
1228
1259
|
resumeSteps,
|
|
1260
|
+
timeTravel,
|
|
1229
1261
|
prevResult,
|
|
1230
1262
|
resumeData,
|
|
1231
1263
|
parentWorkflow,
|
|
@@ -1246,6 +1278,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1246
1278
|
stepResults,
|
|
1247
1279
|
activeSteps,
|
|
1248
1280
|
resumeSteps,
|
|
1281
|
+
timeTravel,
|
|
1249
1282
|
prevResult,
|
|
1250
1283
|
resumeData,
|
|
1251
1284
|
parentWorkflow,
|
|
@@ -1302,6 +1335,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1302
1335
|
stepResults,
|
|
1303
1336
|
activeSteps,
|
|
1304
1337
|
resumeSteps,
|
|
1338
|
+
timeTravel,
|
|
1305
1339
|
prevResult,
|
|
1306
1340
|
resumeData,
|
|
1307
1341
|
parentWorkflow,
|
|
@@ -1394,6 +1428,47 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1394
1428
|
runtimeContext
|
|
1395
1429
|
}
|
|
1396
1430
|
});
|
|
1431
|
+
} else if (timeTravel && timeTravel.steps?.length > 1 && timeTravel.steps[0] === step.step.id) {
|
|
1432
|
+
const snapshot = await this.mastra?.getStorage()?.loadWorkflowSnapshot({
|
|
1433
|
+
workflowName: step.step.id,
|
|
1434
|
+
runId
|
|
1435
|
+
}) ?? { context: {} };
|
|
1436
|
+
const timeTravelParams = chunkAHQOJZT2_cjs.createTimeTravelExecutionParams({
|
|
1437
|
+
steps: timeTravel.steps.slice(1),
|
|
1438
|
+
inputData: timeTravel.inputData,
|
|
1439
|
+
resumeData: timeTravel.resumeData,
|
|
1440
|
+
context: timeTravel.nestedStepResults?.[step.step.id] ?? {},
|
|
1441
|
+
nestedStepsContext: timeTravel.nestedStepResults ?? {},
|
|
1442
|
+
snapshot,
|
|
1443
|
+
graph: step.step.buildExecutionGraph()
|
|
1444
|
+
});
|
|
1445
|
+
const nestedPrevStep = getStep(step.step, timeTravelParams.executionPath);
|
|
1446
|
+
const nestedPrevResult = timeTravelParams.stepResults[nestedPrevStep?.id ?? "input"];
|
|
1447
|
+
await this.mastra.pubsub.publish("workflows", {
|
|
1448
|
+
type: "workflow.start",
|
|
1449
|
+
runId,
|
|
1450
|
+
data: {
|
|
1451
|
+
workflowId: step.step.id,
|
|
1452
|
+
parentWorkflow: {
|
|
1453
|
+
stepId: step.step.id,
|
|
1454
|
+
workflowId,
|
|
1455
|
+
runId,
|
|
1456
|
+
executionPath,
|
|
1457
|
+
resumeSteps,
|
|
1458
|
+
stepResults,
|
|
1459
|
+
timeTravel,
|
|
1460
|
+
input: prevResult,
|
|
1461
|
+
parentWorkflow
|
|
1462
|
+
},
|
|
1463
|
+
executionPath: timeTravelParams.executionPath,
|
|
1464
|
+
runId: crypto.randomUUID(),
|
|
1465
|
+
stepResults: timeTravelParams.stepResults,
|
|
1466
|
+
prevResult: { status: "success", output: nestedPrevResult?.payload },
|
|
1467
|
+
timeTravel: timeTravelParams,
|
|
1468
|
+
activeSteps,
|
|
1469
|
+
runtimeContext
|
|
1470
|
+
}
|
|
1471
|
+
});
|
|
1397
1472
|
} else {
|
|
1398
1473
|
await this.mastra.pubsub.publish("workflows", {
|
|
1399
1474
|
type: "workflow.start",
|
|
@@ -1466,6 +1541,21 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1466
1541
|
for (const [key, value] of Object.entries(runtimeContext)) {
|
|
1467
1542
|
rc.set(key, value);
|
|
1468
1543
|
}
|
|
1544
|
+
const { resumeData: timeTravelResumeData, validationError: timeTravelResumeValidationError } = await chunkAHQOJZT2_cjs.validateStepResumeData({
|
|
1545
|
+
resumeData: timeTravel?.stepResults[step.step.id]?.status === "suspended" ? timeTravel?.resumeData : void 0,
|
|
1546
|
+
step: step.step
|
|
1547
|
+
});
|
|
1548
|
+
let resumeDataToUse;
|
|
1549
|
+
if (timeTravelResumeData && !timeTravelResumeValidationError) {
|
|
1550
|
+
resumeDataToUse = timeTravelResumeData;
|
|
1551
|
+
} else if (timeTravelResumeData && timeTravelResumeValidationError) {
|
|
1552
|
+
this.mastra.getLogger()?.warn("Time travel resume data validation failed", {
|
|
1553
|
+
stepId: step.step.id,
|
|
1554
|
+
error: timeTravelResumeValidationError.message
|
|
1555
|
+
});
|
|
1556
|
+
} else if (resumeSteps?.length > 0 && resumeSteps?.[0] === step.step.id || step.type === "waitForEvent") {
|
|
1557
|
+
resumeDataToUse = resumeData;
|
|
1558
|
+
}
|
|
1469
1559
|
const stepResult = await this.stepExecutor.execute({
|
|
1470
1560
|
workflowId,
|
|
1471
1561
|
step: step.step,
|
|
@@ -1476,7 +1566,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1476
1566
|
emitter: ee,
|
|
1477
1567
|
runtimeContext: rc,
|
|
1478
1568
|
input: prevResult?.output,
|
|
1479
|
-
resumeData:
|
|
1569
|
+
resumeData: resumeDataToUse,
|
|
1480
1570
|
runCount,
|
|
1481
1571
|
foreachIdx: step.type === "foreach" ? executionPath[1] : void 0,
|
|
1482
1572
|
validateInputs: workflow.options.validateInputs
|
|
@@ -1530,6 +1620,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1530
1620
|
executionPath,
|
|
1531
1621
|
resumeSteps,
|
|
1532
1622
|
stepResults,
|
|
1623
|
+
timeTravel,
|
|
1533
1624
|
prevResult,
|
|
1534
1625
|
activeSteps,
|
|
1535
1626
|
runtimeContext,
|
|
@@ -1570,6 +1661,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1570
1661
|
runId,
|
|
1571
1662
|
executionPath,
|
|
1572
1663
|
resumeSteps,
|
|
1664
|
+
timeTravel,
|
|
1665
|
+
//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.
|
|
1573
1666
|
stepResults,
|
|
1574
1667
|
prevResult: stepResult,
|
|
1575
1668
|
activeSteps,
|
|
@@ -1584,6 +1677,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1584
1677
|
runId,
|
|
1585
1678
|
executionPath,
|
|
1586
1679
|
resumeSteps,
|
|
1680
|
+
timeTravel,
|
|
1587
1681
|
prevResult,
|
|
1588
1682
|
parentWorkflow,
|
|
1589
1683
|
stepResults,
|
|
@@ -1673,6 +1767,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1673
1767
|
resumeSteps,
|
|
1674
1768
|
parentWorkflow,
|
|
1675
1769
|
stepResults,
|
|
1770
|
+
timeTravel,
|
|
1676
1771
|
prevResult,
|
|
1677
1772
|
activeSteps,
|
|
1678
1773
|
runtimeContext
|
|
@@ -1706,7 +1801,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1706
1801
|
stepResults,
|
|
1707
1802
|
prevResult,
|
|
1708
1803
|
activeSteps,
|
|
1709
|
-
runtimeContext
|
|
1804
|
+
runtimeContext,
|
|
1805
|
+
timeTravel
|
|
1710
1806
|
}
|
|
1711
1807
|
});
|
|
1712
1808
|
await this.mastra.pubsub.publish(`workflow.events.${runId}`, {
|
|
@@ -1815,7 +1911,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1815
1911
|
stepResults,
|
|
1816
1912
|
prevResult: { status: "success", output: allResults },
|
|
1817
1913
|
activeSteps,
|
|
1818
|
-
runtimeContext
|
|
1914
|
+
runtimeContext,
|
|
1915
|
+
timeTravel
|
|
1819
1916
|
}
|
|
1820
1917
|
});
|
|
1821
1918
|
} else if (step?.type === "foreach") {
|
|
@@ -1831,7 +1928,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1831
1928
|
stepResults,
|
|
1832
1929
|
prevResult: { ...prevResult, output: prevResult?.payload },
|
|
1833
1930
|
activeSteps,
|
|
1834
|
-
runtimeContext
|
|
1931
|
+
runtimeContext,
|
|
1932
|
+
timeTravel
|
|
1835
1933
|
}
|
|
1836
1934
|
});
|
|
1837
1935
|
} else if (executionPath[0] >= workflow.stepGraph.length - 1) {
|
|
@@ -1860,7 +1958,8 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1860
1958
|
stepResults,
|
|
1861
1959
|
prevResult,
|
|
1862
1960
|
activeSteps,
|
|
1863
|
-
runtimeContext
|
|
1961
|
+
runtimeContext,
|
|
1962
|
+
timeTravel
|
|
1864
1963
|
}
|
|
1865
1964
|
});
|
|
1866
1965
|
}
|
|
@@ -1991,7 +2090,7 @@ var WorkflowEventProcessor = class extends EventProcessor {
|
|
|
1991
2090
|
|
|
1992
2091
|
// src/workflows/evented/workflow.ts
|
|
1993
2092
|
function cloneWorkflow(workflow, opts) {
|
|
1994
|
-
const wf = new
|
|
2093
|
+
const wf = new chunkAHQOJZT2_cjs.Workflow({
|
|
1995
2094
|
id: opts.id,
|
|
1996
2095
|
inputSchema: workflow.inputSchema,
|
|
1997
2096
|
outputSchema: workflow.outputSchema,
|
|
@@ -2132,9 +2231,10 @@ function createWorkflow(params) {
|
|
|
2132
2231
|
executionEngine
|
|
2133
2232
|
});
|
|
2134
2233
|
}
|
|
2135
|
-
var EventedWorkflow = class extends
|
|
2234
|
+
var EventedWorkflow = class extends chunkAHQOJZT2_cjs.Workflow {
|
|
2136
2235
|
constructor(params) {
|
|
2137
2236
|
super(params);
|
|
2237
|
+
this.engineType = "evented";
|
|
2138
2238
|
}
|
|
2139
2239
|
__registerMastra(mastra) {
|
|
2140
2240
|
super.__registerMastra(mastra);
|
|
@@ -2151,7 +2251,9 @@ var EventedWorkflow = class extends chunkXDMQQZNX_cjs.Workflow {
|
|
|
2151
2251
|
mastra: this.mastra,
|
|
2152
2252
|
retryConfig: this.retryConfig,
|
|
2153
2253
|
cleanup: () => this.runs.delete(runIdToUse),
|
|
2154
|
-
workflowSteps: this.steps
|
|
2254
|
+
workflowSteps: this.steps,
|
|
2255
|
+
validateInputs: this.options?.validateInputs,
|
|
2256
|
+
workflowEngineType: this.engineType
|
|
2155
2257
|
});
|
|
2156
2258
|
this.runs.set(runIdToUse, run);
|
|
2157
2259
|
const shouldPersistSnapshot = this.options?.shouldPersistSnapshot?.({
|
|
@@ -2170,6 +2272,7 @@ var EventedWorkflow = class extends chunkXDMQQZNX_cjs.Workflow {
|
|
|
2170
2272
|
context: {},
|
|
2171
2273
|
activePaths: [],
|
|
2172
2274
|
serializedStepGraph: this.serializedStepGraph,
|
|
2275
|
+
activeStepsPath: {},
|
|
2173
2276
|
suspendedPaths: {},
|
|
2174
2277
|
resumeLabels: {},
|
|
2175
2278
|
waitingPaths: {},
|
|
@@ -2183,7 +2286,7 @@ var EventedWorkflow = class extends chunkXDMQQZNX_cjs.Workflow {
|
|
|
2183
2286
|
return run;
|
|
2184
2287
|
}
|
|
2185
2288
|
};
|
|
2186
|
-
var EventedRun = class extends
|
|
2289
|
+
var EventedRun = class extends chunkAHQOJZT2_cjs.Run {
|
|
2187
2290
|
constructor(params) {
|
|
2188
2291
|
super(params);
|
|
2189
2292
|
this.serializedStepGraph = params.serializedStepGraph;
|
|
@@ -2208,15 +2311,16 @@ var EventedRun = class extends chunkXDMQQZNX_cjs.Run {
|
|
|
2208
2311
|
snapshot: {
|
|
2209
2312
|
runId: this.runId,
|
|
2210
2313
|
serializedStepGraph: this.serializedStepGraph,
|
|
2314
|
+
status: "running",
|
|
2211
2315
|
value: {},
|
|
2212
2316
|
context: {},
|
|
2213
2317
|
runtimeContext: Object.fromEntries(runtimeContext.entries()),
|
|
2214
2318
|
activePaths: [],
|
|
2319
|
+
activeStepsPath: {},
|
|
2215
2320
|
suspendedPaths: {},
|
|
2216
2321
|
resumeLabels: {},
|
|
2217
2322
|
waitingPaths: {},
|
|
2218
|
-
timestamp: Date.now()
|
|
2219
|
-
status: "running"
|
|
2323
|
+
timestamp: Date.now()
|
|
2220
2324
|
}
|
|
2221
2325
|
});
|
|
2222
2326
|
const inputDataToUse = await this._validateInput(inputData);
|
|
@@ -2253,9 +2357,14 @@ var EventedRun = class extends chunkXDMQQZNX_cjs.Run {
|
|
|
2253
2357
|
}
|
|
2254
2358
|
// TODO: stream
|
|
2255
2359
|
async resume(params) {
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2360
|
+
let steps = [];
|
|
2361
|
+
if (typeof params.step === "string") {
|
|
2362
|
+
steps = params.step.split(".");
|
|
2363
|
+
} else {
|
|
2364
|
+
steps = (Array.isArray(params.step) ? params.step : [params.step]).map(
|
|
2365
|
+
(step) => typeof step === "string" ? step : step?.id
|
|
2366
|
+
);
|
|
2367
|
+
}
|
|
2259
2368
|
if (steps.length === 0) {
|
|
2260
2369
|
throw new Error("No steps provided to resume");
|
|
2261
2370
|
}
|
|
@@ -2441,7 +2550,7 @@ function isExecutableStep(step) {
|
|
|
2441
2550
|
}
|
|
2442
2551
|
|
|
2443
2552
|
// src/workflows/evented/execution-engine.ts
|
|
2444
|
-
var EventedExecutionEngine = class extends
|
|
2553
|
+
var EventedExecutionEngine = class extends chunkAHQOJZT2_cjs.ExecutionEngine {
|
|
2445
2554
|
eventProcessor;
|
|
2446
2555
|
constructor({
|
|
2447
2556
|
mastra,
|
|
@@ -2484,6 +2593,23 @@ var EventedExecutionEngine = class extends chunkXDMQQZNX_cjs.ExecutionEngine {
|
|
|
2484
2593
|
format: params.format
|
|
2485
2594
|
}
|
|
2486
2595
|
});
|
|
2596
|
+
} else if (params.timeTravel) {
|
|
2597
|
+
const prevStep = getStep(this.mastra.getWorkflow(params.workflowId), params.timeTravel.executionPath);
|
|
2598
|
+
const prevResult = params.timeTravel.stepResults[prevStep?.id ?? "input"];
|
|
2599
|
+
await pubsub.publish("workflows", {
|
|
2600
|
+
type: "workflow.start",
|
|
2601
|
+
runId: params.runId,
|
|
2602
|
+
data: {
|
|
2603
|
+
workflowId: params.workflowId,
|
|
2604
|
+
runId: params.runId,
|
|
2605
|
+
executionPath: params.timeTravel.executionPath,
|
|
2606
|
+
stepResults: params.timeTravel.stepResults,
|
|
2607
|
+
timeTravel: params.timeTravel,
|
|
2608
|
+
prevResult: { status: "success", output: prevResult?.payload },
|
|
2609
|
+
runtimeContext: Object.fromEntries(params.runtimeContext.entries()),
|
|
2610
|
+
format: params.format
|
|
2611
|
+
}
|
|
2612
|
+
});
|
|
2487
2613
|
} else {
|
|
2488
2614
|
await pubsub.publish("workflows", {
|
|
2489
2615
|
type: "workflow.start",
|
|
@@ -2550,5 +2676,5 @@ exports.cloneStep = cloneStep;
|
|
|
2550
2676
|
exports.cloneWorkflow = cloneWorkflow;
|
|
2551
2677
|
exports.createStep = createStep;
|
|
2552
2678
|
exports.createWorkflow = createWorkflow;
|
|
2553
|
-
//# sourceMappingURL=chunk-
|
|
2554
|
-
//# sourceMappingURL=chunk-
|
|
2679
|
+
//# sourceMappingURL=chunk-U57JN7JY.cjs.map
|
|
2680
|
+
//# sourceMappingURL=chunk-U57JN7JY.cjs.map
|