@mastra/inngest 0.0.0-taofeeqInngest-20250603090617 → 0.0.0-tool-call-parts-20250630193309
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 +214 -2
- package/dist/_tsup-dts-rollup.d.cts +97 -27
- package/dist/_tsup-dts-rollup.d.ts +97 -27
- package/dist/index.cjs +404 -42
- package/dist/index.d.cts +2 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +404 -43
- package/package.json +18 -17
- package/src/index.test.ts +2614 -1169
- package/src/index.ts +621 -61
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import type { Agent } from '@mastra/core';
|
|
1
2
|
import type { BaseContext } from 'inngest';
|
|
2
3
|
import { ClientOptions } from 'inngest';
|
|
3
|
-
import { cloneStep } from '@mastra/core/workflows';
|
|
4
|
-
import { createStep } from '@mastra/core/workflows';
|
|
5
4
|
import { DefaultExecutionEngine } from '@mastra/core/workflows';
|
|
5
|
+
import type { Emitter } from '@mastra/core/workflows';
|
|
6
6
|
import type { ExecuteFunction } from '@mastra/core/workflows';
|
|
7
7
|
import type { ExecutionContext } from '@mastra/core/workflows';
|
|
8
8
|
import type { ExecutionEngine } from '@mastra/core/workflows';
|
|
@@ -12,6 +12,7 @@ import type { Inngest } from 'inngest';
|
|
|
12
12
|
import { InngestFunction } from 'inngest';
|
|
13
13
|
import { InngestMiddleware } from 'inngest';
|
|
14
14
|
import type { Mastra } from '@mastra/core';
|
|
15
|
+
import type { ReadableStream as ReadableStream_2 } from 'node:stream/web';
|
|
15
16
|
import { Run } from '@mastra/core/workflows';
|
|
16
17
|
import { RuntimeContext } from '@mastra/core/di';
|
|
17
18
|
import type { SerializedStepFlowEntry } from '@mastra/core/workflows';
|
|
@@ -20,31 +21,78 @@ import type { Span } from '@opentelemetry/api';
|
|
|
20
21
|
import type { Step } from '@mastra/core/workflows';
|
|
21
22
|
import type { StepFlowEntry } from '@mastra/core/workflows';
|
|
22
23
|
import type { StepResult } from '@mastra/core/workflows';
|
|
24
|
+
import type { StreamEvent } from '@mastra/core/workflows';
|
|
25
|
+
import { Tool } from '@mastra/core/tools';
|
|
26
|
+
import type { ToolExecutionContext } from '@mastra/core';
|
|
27
|
+
import type { WatchEvent } from '@mastra/core/workflows';
|
|
23
28
|
import { Workflow } from '@mastra/core/workflows';
|
|
24
29
|
import type { WorkflowConfig } from '@mastra/core/workflows';
|
|
25
30
|
import type { WorkflowResult } from '@mastra/core/workflows';
|
|
26
31
|
import type { WorkflowRun } from '@mastra/core';
|
|
27
32
|
import type { WorkflowRuns } from '@mastra/core';
|
|
28
|
-
import
|
|
33
|
+
import { z } from 'zod';
|
|
29
34
|
|
|
30
|
-
declare function
|
|
31
|
-
id:
|
|
32
|
-
|
|
35
|
+
export declare function createStep<TStepId extends string, TStepInput extends z.ZodType<any>, TStepOutput extends z.ZodType<any>, TResumeSchema extends z.ZodType<any>, TSuspendSchema extends z.ZodType<any>>(params: {
|
|
36
|
+
id: TStepId;
|
|
37
|
+
description?: string;
|
|
38
|
+
inputSchema: TStepInput;
|
|
39
|
+
outputSchema: TStepOutput;
|
|
40
|
+
resumeSchema?: TResumeSchema;
|
|
41
|
+
suspendSchema?: TSuspendSchema;
|
|
42
|
+
execute: ExecuteFunction<z.infer<TStepInput>, z.infer<TStepOutput>, z.infer<TResumeSchema>, z.infer<TSuspendSchema>, InngestEngineType>;
|
|
43
|
+
}): Step<TStepId, TStepInput, TStepOutput, TResumeSchema, TSuspendSchema, InngestEngineType>;
|
|
44
|
+
|
|
45
|
+
export declare function createStep<TStepId extends string, TStepInput extends z.ZodObject<{
|
|
46
|
+
prompt: z.ZodString;
|
|
47
|
+
}>, TStepOutput extends z.ZodObject<{
|
|
48
|
+
text: z.ZodString;
|
|
49
|
+
}>, TResumeSchema extends z.ZodType<any>, TSuspendSchema extends z.ZodType<any>>(agent: Agent<TStepId, any, any>): Step<TStepId, TStepInput, TStepOutput, TResumeSchema, TSuspendSchema, InngestEngineType>;
|
|
50
|
+
|
|
51
|
+
export declare function createStep<TSchemaIn extends z.ZodType<any>, TSchemaOut extends z.ZodType<any>, TContext extends ToolExecutionContext<TSchemaIn>>(tool: Tool<TSchemaIn, TSchemaOut, TContext> & {
|
|
52
|
+
inputSchema: TSchemaIn;
|
|
53
|
+
outputSchema: TSchemaOut;
|
|
54
|
+
execute: (context: TContext) => Promise<any>;
|
|
55
|
+
}): Step<string, TSchemaIn, TSchemaOut, z.ZodType<any>, z.ZodType<any>, InngestEngineType>;
|
|
33
56
|
|
|
34
57
|
export declare function init(inngest: Inngest): {
|
|
35
|
-
createWorkflow<TWorkflowId extends string = string, TInput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TOutput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TSteps extends Step<string, any, any>[] = Step<string, any, any,
|
|
58
|
+
createWorkflow<TWorkflowId extends string = string, TInput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TOutput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TSteps extends Step<string, any, any, any, any, InngestEngineType>[] = Step<string, any, any, any, any, InngestEngineType>[]>(params: WorkflowConfig<TWorkflowId, TInput, TOutput, TSteps>): InngestWorkflow<InngestEngineType, TSteps, TWorkflowId, TInput, TOutput, TInput>;
|
|
36
59
|
createStep: typeof createStep;
|
|
37
|
-
cloneStep:
|
|
38
|
-
|
|
60
|
+
cloneStep<TStepId extends string>(step: Step<string, any, any, any, any, InngestEngineType>, opts: {
|
|
61
|
+
id: TStepId;
|
|
62
|
+
}): Step<TStepId, any, any, any, any, InngestEngineType>;
|
|
63
|
+
cloneWorkflow<TWorkflowId extends string = string, TInput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TOutput extends z.ZodType<any> = z.ZodType<any, z.ZodTypeDef, any>, TSteps extends Step<string, any, any, any, any, InngestEngineType>[] = Step<string, any, any, any, any, InngestEngineType>[], TPrevSchema extends z.ZodType<any> = TInput>(workflow: Workflow<InngestEngineType, TSteps, string, TInput, TOutput, TPrevSchema>, opts: {
|
|
64
|
+
id: TWorkflowId;
|
|
65
|
+
}): Workflow<InngestEngineType, TSteps, TWorkflowId, TInput, TOutput, TPrevSchema>;
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
export declare type InngestEngineType = {
|
|
69
|
+
step: any;
|
|
39
70
|
};
|
|
40
71
|
|
|
41
72
|
export declare class InngestExecutionEngine extends DefaultExecutionEngine {
|
|
42
73
|
private inngestStep;
|
|
43
74
|
private inngestAttempts;
|
|
44
75
|
constructor(mastra: Mastra, inngestStep: BaseContext<Inngest>['step'], inngestAttempts?: number);
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
76
|
+
execute<TInput, TOutput>(params: {
|
|
77
|
+
workflowId: string;
|
|
78
|
+
runId: string;
|
|
79
|
+
graph: ExecutionGraph;
|
|
80
|
+
serializedStepGraph: SerializedStepFlowEntry[];
|
|
81
|
+
input?: TInput;
|
|
82
|
+
resume?: {
|
|
83
|
+
steps: string[];
|
|
84
|
+
stepResults: Record<string, StepResult<any, any, any, any>>;
|
|
85
|
+
resumePayload: any;
|
|
86
|
+
resumePath: number[];
|
|
87
|
+
};
|
|
88
|
+
emitter: Emitter;
|
|
89
|
+
retryConfig?: {
|
|
90
|
+
attempts?: number;
|
|
91
|
+
delay?: number;
|
|
92
|
+
};
|
|
93
|
+
runtimeContext: RuntimeContext;
|
|
94
|
+
}): Promise<TOutput>;
|
|
95
|
+
protected fmtReturnValue<TOutput>(executionSpan: Span | undefined, emitter: Emitter, stepResults: Record<string, StepResult<any, any, any, any>>, lastOutput: StepResult<any, any, any, any>, error?: Error | string): Promise<TOutput>;
|
|
48
96
|
superExecuteStep({ workflowId, runId, step, stepResults, executionContext, resume, prevOutput, emitter, runtimeContext, }: {
|
|
49
97
|
workflowId: string;
|
|
50
98
|
runId: string;
|
|
@@ -56,11 +104,17 @@ export declare class InngestExecutionEngine extends DefaultExecutionEngine {
|
|
|
56
104
|
resumePayload: any;
|
|
57
105
|
};
|
|
58
106
|
prevOutput: any;
|
|
59
|
-
emitter:
|
|
60
|
-
emit: (event: string, data: any) => Promise<void>;
|
|
61
|
-
};
|
|
107
|
+
emitter: Emitter;
|
|
62
108
|
runtimeContext: RuntimeContext;
|
|
63
109
|
}): Promise<StepResult<any, any, any, any>>;
|
|
110
|
+
executeSleep({ id, duration }: {
|
|
111
|
+
id: string;
|
|
112
|
+
duration: number;
|
|
113
|
+
}): Promise<void>;
|
|
114
|
+
executeWaitForEvent({ event, timeout }: {
|
|
115
|
+
event: string;
|
|
116
|
+
timeout?: number;
|
|
117
|
+
}): Promise<any>;
|
|
64
118
|
executeStep({ step, stepResults, executionContext, resume, prevOutput, emitter, runtimeContext, }: {
|
|
65
119
|
step: Step<string, any, any>;
|
|
66
120
|
stepResults: Record<string, StepResult<any, any, any, any>>;
|
|
@@ -80,17 +134,18 @@ export declare class InngestExecutionEngine extends DefaultExecutionEngine {
|
|
|
80
134
|
runId?: string;
|
|
81
135
|
};
|
|
82
136
|
prevOutput: any;
|
|
83
|
-
emitter:
|
|
84
|
-
emit: (event: string, data: any) => Promise<void>;
|
|
85
|
-
};
|
|
137
|
+
emitter: Emitter;
|
|
86
138
|
runtimeContext: RuntimeContext;
|
|
87
139
|
}): Promise<StepResult<any, any, any, any>>;
|
|
88
|
-
persistStepUpdate({ workflowId, runId, stepResults, executionContext, serializedStepGraph, }: {
|
|
140
|
+
persistStepUpdate({ workflowId, runId, stepResults, executionContext, serializedStepGraph, workflowStatus, result, error, }: {
|
|
89
141
|
workflowId: string;
|
|
90
142
|
runId: string;
|
|
91
143
|
stepResults: Record<string, StepResult<any, any, any, any>>;
|
|
92
144
|
serializedStepGraph: SerializedStepFlowEntry[];
|
|
93
145
|
executionContext: ExecutionContext;
|
|
146
|
+
workflowStatus: 'success' | 'failed' | 'suspended' | 'running';
|
|
147
|
+
result?: Record<string, any>;
|
|
148
|
+
error?: string | Error;
|
|
94
149
|
}): Promise<void>;
|
|
95
150
|
executeConditional({ workflowId, runId, entry, prevOutput, prevStep, stepResults, serializedStepGraph, resume, executionContext, emitter, runtimeContext, }: {
|
|
96
151
|
workflowId: string;
|
|
@@ -98,7 +153,7 @@ export declare class InngestExecutionEngine extends DefaultExecutionEngine {
|
|
|
98
153
|
entry: {
|
|
99
154
|
type: 'conditional';
|
|
100
155
|
steps: StepFlowEntry[];
|
|
101
|
-
conditions: ExecuteFunction<any, any, any, any>[];
|
|
156
|
+
conditions: ExecuteFunction<any, any, any, any, InngestEngineType>[];
|
|
102
157
|
};
|
|
103
158
|
prevStep: StepFlowEntry;
|
|
104
159
|
serializedStepGraph: SerializedStepFlowEntry[];
|
|
@@ -111,14 +166,12 @@ export declare class InngestExecutionEngine extends DefaultExecutionEngine {
|
|
|
111
166
|
resumePath: number[];
|
|
112
167
|
};
|
|
113
168
|
executionContext: ExecutionContext;
|
|
114
|
-
emitter:
|
|
115
|
-
emit: (event: string, data: any) => Promise<void>;
|
|
116
|
-
};
|
|
169
|
+
emitter: Emitter;
|
|
117
170
|
runtimeContext: RuntimeContext;
|
|
118
171
|
}): Promise<StepResult<any, any, any, any>>;
|
|
119
172
|
}
|
|
120
173
|
|
|
121
|
-
export declare class InngestRun<TSteps extends Step<string, any, any>[] = Step<string, any, any>[], TInput extends z.ZodType<any> = z.ZodType<any>, TOutput extends z.ZodType<any> = z.ZodType<any>> extends Run<TSteps, TInput, TOutput> {
|
|
174
|
+
export declare class InngestRun<TEngineType = InngestEngineType, TSteps extends Step<string, any, any>[] = Step<string, any, any>[], TInput extends z.ZodType<any> = z.ZodType<any>, TOutput extends z.ZodType<any> = z.ZodType<any>> extends Run<TEngineType, TSteps, TInput, TOutput> {
|
|
122
175
|
#private;
|
|
123
176
|
private inngest;
|
|
124
177
|
serializedStepGraph: SerializedStepFlowEntry[];
|
|
@@ -137,6 +190,7 @@ export declare class InngestRun<TSteps extends Step<string, any, any>[] = Step<s
|
|
|
137
190
|
}, inngest: Inngest);
|
|
138
191
|
getRuns(eventId: string): Promise<any>;
|
|
139
192
|
getRunOutput(eventId: string): Promise<any>;
|
|
193
|
+
sendEvent(event: string, data: any): Promise<void>;
|
|
140
194
|
start({ inputData, }: {
|
|
141
195
|
inputData?: z.infer<TInput>;
|
|
142
196
|
runtimeContext?: RuntimeContext;
|
|
@@ -146,10 +200,22 @@ export declare class InngestRun<TSteps extends Step<string, any, any>[] = Step<s
|
|
|
146
200
|
step: Step<string, any, any, TResumeSchema, any> | [...Step<string, any, any, any, any>[], Step<string, any, any, TResumeSchema, any>] | string | string[];
|
|
147
201
|
runtimeContext?: RuntimeContext;
|
|
148
202
|
}): Promise<WorkflowResult<TOutput, TSteps>>;
|
|
149
|
-
|
|
203
|
+
_resume<TResumeSchema extends z.ZodType<any>>(params: {
|
|
204
|
+
resumeData?: z.infer<TResumeSchema>;
|
|
205
|
+
step: Step<string, any, any, TResumeSchema, any> | [...Step<string, any, any, any, any>[], Step<string, any, any, TResumeSchema, any>] | string | string[];
|
|
206
|
+
runtimeContext?: RuntimeContext;
|
|
207
|
+
}): Promise<WorkflowResult<TOutput, TSteps>>;
|
|
208
|
+
watch(cb: (event: WatchEvent) => void, type?: 'watch' | 'watch-v2'): () => void;
|
|
209
|
+
stream({ inputData, runtimeContext }?: {
|
|
210
|
+
inputData?: z.infer<TInput>;
|
|
211
|
+
runtimeContext?: RuntimeContext;
|
|
212
|
+
}): {
|
|
213
|
+
stream: ReadableStream_2<StreamEvent>;
|
|
214
|
+
getWorkflowState: () => Promise<WorkflowResult<TOutput, TSteps>>;
|
|
215
|
+
};
|
|
150
216
|
}
|
|
151
217
|
|
|
152
|
-
export declare class InngestWorkflow<TSteps extends Step<string, any, any>[] = Step<string, any, any>[], TWorkflowId extends string = string, TInput extends z.ZodType<any> = z.ZodType<any>, TOutput extends z.ZodType<any> = z.ZodType<any>, TPrevSchema extends z.ZodType<any> = TInput> extends Workflow<TSteps, TWorkflowId, TInput, TOutput, TPrevSchema> {
|
|
218
|
+
export declare class InngestWorkflow<TEngineType = InngestEngineType, TSteps extends Step<string, any, any>[] = Step<string, any, any>[], TWorkflowId extends string = string, TInput extends z.ZodType<any> = z.ZodType<any>, TOutput extends z.ZodType<any> = z.ZodType<any>, TPrevSchema extends z.ZodType<any> = TInput> extends Workflow<TEngineType, TSteps, TWorkflowId, TInput, TOutput, TPrevSchema> {
|
|
153
219
|
#private;
|
|
154
220
|
inngest: Inngest;
|
|
155
221
|
private function;
|
|
@@ -162,10 +228,14 @@ export declare class InngestWorkflow<TSteps extends Step<string, any, any>[] = S
|
|
|
162
228
|
resourceId?: string;
|
|
163
229
|
}): Promise<WorkflowRuns>;
|
|
164
230
|
getWorkflowRunById(runId: string): Promise<WorkflowRun | null>;
|
|
231
|
+
getWorkflowRunExecutionResult(runId: string): Promise<WatchEvent['payload']['workflowState'] | null>;
|
|
165
232
|
__registerMastra(mastra: Mastra): void;
|
|
166
233
|
createRun(options?: {
|
|
167
234
|
runId?: string;
|
|
168
|
-
}): Run<TSteps, TInput, TOutput>;
|
|
235
|
+
}): Run<TEngineType, TSteps, TInput, TOutput>;
|
|
236
|
+
createRunAsync(options?: {
|
|
237
|
+
runId?: string;
|
|
238
|
+
}): Promise<Run<TEngineType, TSteps, TInput, TOutput>>;
|
|
169
239
|
getFunction(): InngestFunction<Omit<InngestFunction.Options<Inngest<ClientOptions>, InngestMiddleware.Stack, InngestFunction.Trigger<string>[] | [{
|
|
170
240
|
cron: string;
|
|
171
241
|
} & Partial<Record<"event" | "if", never>>] | [{
|