@mastra/inngest 1.8.8 → 1.8.9-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/LICENSE.md +6 -4
- package/README.md +32 -0
- package/dist/durable-agent/create-inngest-agentic-workflow.d.ts +3 -3
- package/dist/durable-agent/create-inngest-agentic-workflow.d.ts.map +1 -1
- package/dist/execution-engine.d.ts.map +1 -1
- package/dist/index.cjs +6 -55
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +6 -55
- package/dist/index.js.map +1 -1
- package/dist/nested-workflow-output.d.ts +2 -2
- package/dist/nested-workflow-output.d.ts.map +1 -1
- package/dist/pubsub.d.ts.map +1 -1
- package/dist/run.d.ts.map +1 -1
- package/dist/workflow.d.ts.map +1 -1
- package/package.json +11 -12
- package/CHANGELOG.md +0 -4284
package/LICENSE.md
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
Portions of this software are licensed as follows:
|
|
2
2
|
|
|
3
|
-
- All content that resides under any directory named
|
|
3
|
+
- All content that resides under any directory named `ee/` within this
|
|
4
4
|
repository, including but not limited to:
|
|
5
|
-
-
|
|
6
|
-
-
|
|
7
|
-
|
|
5
|
+
- `@mastra/core/auth/ee`
|
|
6
|
+
- `@mastra/core/agent-builder/ee`
|
|
7
|
+
- `@mastra/editor/ee`
|
|
8
|
+
|
|
9
|
+
is licensed under the license defined in [`ee/LICENSE`](https://github.com/mastra-ai/mastra/blob/main/ee/LICENSE).
|
|
8
10
|
|
|
9
11
|
- All third-party components incorporated into the Mastra Software are
|
|
10
12
|
licensed under the original license provided by the owner of the
|
package/README.md
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# @mastra/inngest
|
|
2
|
+
|
|
3
|
+
`@mastra/inngest` connects Mastra workflows and agents to Inngest for durable execution, retries, and step memoization. Use `init()` to create Inngest-backed workflow primitives, or `createInngestAgent()` when an agent run must survive process restarts and transient failures.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @mastra/inngest
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { Inngest } from 'inngest';
|
|
15
|
+
import { init } from '@mastra/inngest';
|
|
16
|
+
|
|
17
|
+
const inngest = new Inngest({ id: 'my-app' });
|
|
18
|
+
const { createWorkflow, createStep } = init(inngest);
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Documentation
|
|
22
|
+
|
|
23
|
+
- [Deploy Mastra with Inngest](https://mastra.ai/integrations/deploy/inngest)
|
|
24
|
+
- [Reference: createInngestAgent()](https://mastra.ai/reference/agents/inngest-agent)
|
|
25
|
+
|
|
26
|
+
## Changelog
|
|
27
|
+
|
|
28
|
+
See the [package changelog](https://github.com/mastra-ai/mastra/blob/main/workflows/inngest/CHANGELOG.md) for version history and release notes.
|
|
29
|
+
|
|
30
|
+
## Support
|
|
31
|
+
|
|
32
|
+
We have an [open community Discord](https://discord.gg/mastra-ai). Come and say hello and let us know if you have any questions or need any help getting things running.
|
|
@@ -16,6 +16,7 @@ export declare const InngestDurableStepIds: {
|
|
|
16
16
|
export declare function createInngestDurableAgenticWorkflow(options: InngestDurableAgenticWorkflowOptions): import("@mastra/core/workflows").Workflow<import("../types").InngestEngineType, never[], "inngest:durable-agentic-loop", any, {
|
|
17
17
|
runId: string;
|
|
18
18
|
agentId: string;
|
|
19
|
+
agentName?: string | undefined;
|
|
19
20
|
messageListState: any;
|
|
20
21
|
toolsMetadata: any[];
|
|
21
22
|
modelConfig: {
|
|
@@ -28,7 +29,6 @@ export declare function createInngestDurableAgenticWorkflow(options: InngestDura
|
|
|
28
29
|
options: any;
|
|
29
30
|
state: any;
|
|
30
31
|
messageId: string;
|
|
31
|
-
agentName?: string | undefined;
|
|
32
32
|
requestContextEntries?: Record<string, any> | undefined;
|
|
33
33
|
agentSpanData?: any;
|
|
34
34
|
modelSpanData?: any;
|
|
@@ -38,9 +38,9 @@ export declare function createInngestDurableAgenticWorkflow(options: InngestDura
|
|
|
38
38
|
messageId: string;
|
|
39
39
|
stepResult: any;
|
|
40
40
|
output: {
|
|
41
|
+
text?: string | undefined;
|
|
41
42
|
usage: any;
|
|
42
43
|
steps: any[];
|
|
43
|
-
text?: string | undefined;
|
|
44
44
|
};
|
|
45
45
|
state: any;
|
|
46
46
|
}, {
|
|
@@ -48,9 +48,9 @@ export declare function createInngestDurableAgenticWorkflow(options: InngestDura
|
|
|
48
48
|
messageId: string;
|
|
49
49
|
stepResult: any;
|
|
50
50
|
output: {
|
|
51
|
+
text?: string | undefined;
|
|
51
52
|
usage: any;
|
|
52
53
|
steps: any[];
|
|
53
|
-
text?: string | undefined;
|
|
54
54
|
};
|
|
55
55
|
state: any;
|
|
56
56
|
}, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-inngest-agentic-workflow.d.ts","sourceRoot":"","sources":["../../src/durable-agent/create-inngest-agentic-workflow.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AA+BvC;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD,8BAA8B;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAuCD,oCAAoC;AACpC,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"create-inngest-agentic-workflow.d.ts","sourceRoot":"","sources":["../../src/durable-agent/create-inngest-agentic-workflow.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AA+BvC;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD,8BAA8B;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAuCD,oCAAoC;AACpC,eAAO,MAAM,qBAAqB;aAChC,iBAAiB;aACjB,YAAY;CACJ,CAAC;AAEX,wBAAgB,mCAAmC,CAAC,OAAO,EAAE,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAsThG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-engine.d.ts","sourceRoot":"","sources":["../src/execution-engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,sBAAsB,EAAmC,MAAM,wBAAwB,CAAC;AACjG,OAAO,KAAK,EACV,gBAAgB,EAChB,IAAI,EACJ,UAAU,EAEV,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAuCpD,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,eAAe,CAAS;
|
|
1
|
+
{"version":3,"file":"execution-engine.d.ts","sourceRoot":"","sources":["../src/execution-engine.ts"],"names":[],"mappings":"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"}
|
package/dist/index.cjs
CHANGED
|
@@ -175,7 +175,11 @@ function createInngestDurableAgenticWorkflow(options) {
|
|
|
175
175
|
stepIndex: state.stepIndex
|
|
176
176
|
};
|
|
177
177
|
}, { id: "map-to-llm-input" }).then(llmExecutionStep).map(async ({ inputData }) => {
|
|
178
|
-
|
|
178
|
+
const llmOutput = inputData;
|
|
179
|
+
return (llmOutput.toolCalls ?? []).map((toolCall) => ({
|
|
180
|
+
...toolCall,
|
|
181
|
+
stepSpanData: llmOutput.stepSpanData
|
|
182
|
+
}));
|
|
179
183
|
}, { id: "extract-tool-calls" }).foreach(toolCallStep, { concurrency: ({ inputData, getInitData }) => {
|
|
180
184
|
const state = getInitData();
|
|
181
185
|
return (0, _mastra_core_agent_durable.resolveDurableToolCallConcurrency)({
|
|
@@ -183,63 +187,10 @@ function createInngestDurableAgenticWorkflow(options) {
|
|
|
183
187
|
toolsMetadata: state?.toolsMetadata,
|
|
184
188
|
toolCalls: inputData
|
|
185
189
|
});
|
|
186
|
-
} }).map(async ({ inputData, getStepResult, getInitData
|
|
190
|
+
} }).map(async ({ inputData, getStepResult, getInitData }) => {
|
|
187
191
|
const toolResults = inputData;
|
|
188
192
|
const llmOutput = getStepResult(llmExecutionStep.id);
|
|
189
193
|
const initData = getInitData();
|
|
190
|
-
const observability = mastra?.observability?.getSelectedInstance({});
|
|
191
|
-
const modelSpanData = llmOutput?.modelSpanData;
|
|
192
|
-
const stepSpanData = llmOutput?.stepSpanData;
|
|
193
|
-
const modelSpan = modelSpanData ? observability?.rebuildSpan(modelSpanData) : void 0;
|
|
194
|
-
const stepSpan = stepSpanData ? observability?.rebuildSpan(stepSpanData) : void 0;
|
|
195
|
-
const agentSpan = initData.agentSpanData ? observability?.rebuildSpan(initData.agentSpanData) : void 0;
|
|
196
|
-
const toolParentSpan = stepSpan ?? modelSpan ?? agentSpan;
|
|
197
|
-
for (const tr of toolResults) {
|
|
198
|
-
const toolSpan = toolParentSpan?.createChildSpan({
|
|
199
|
-
type: _mastra_core_observability.SpanType.TOOL_CALL,
|
|
200
|
-
name: `tool: '${tr.toolName}'`,
|
|
201
|
-
entityType: _mastra_core_observability.EntityType.TOOL,
|
|
202
|
-
entityId: tr.toolName,
|
|
203
|
-
entityName: tr.toolName,
|
|
204
|
-
input: tr.args,
|
|
205
|
-
attributes: { toolCallId: tr.toolCallId }
|
|
206
|
-
});
|
|
207
|
-
if (tr.error) toolSpan?.error({ error: new Error(tr.error.message) });
|
|
208
|
-
else toolSpan?.end({ output: tr.result });
|
|
209
|
-
if (!tr.error) stepSpan?.createEventSpan({
|
|
210
|
-
type: _mastra_core_observability.SpanType.MODEL_CHUNK,
|
|
211
|
-
name: `chunk: 'tool-result'`,
|
|
212
|
-
output: {
|
|
213
|
-
toolCallId: tr.toolCallId,
|
|
214
|
-
toolName: tr.toolName,
|
|
215
|
-
result: tr.result
|
|
216
|
-
}
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
const toolCalls = llmOutput?.toolCalls ?? [];
|
|
220
|
-
if (stepSpan) {
|
|
221
|
-
const stepFinishPayload = llmOutput.stepFinishPayload;
|
|
222
|
-
stepSpan.end({
|
|
223
|
-
output: {
|
|
224
|
-
toolCalls: toolCalls.map((tc) => ({
|
|
225
|
-
toolCallId: tc.toolCallId,
|
|
226
|
-
toolName: tc.toolName,
|
|
227
|
-
args: tc.args
|
|
228
|
-
})),
|
|
229
|
-
toolResults: toolResults.map((tr) => ({
|
|
230
|
-
toolCallId: tr.toolCallId,
|
|
231
|
-
toolName: tr.toolName,
|
|
232
|
-
result: tr.result,
|
|
233
|
-
error: tr.error
|
|
234
|
-
}))
|
|
235
|
-
},
|
|
236
|
-
attributes: {
|
|
237
|
-
usage: stepFinishPayload?.output?.usage,
|
|
238
|
-
finishReason: stepFinishPayload?.stepResult?.reason,
|
|
239
|
-
isContinued: stepFinishPayload?.stepResult?.isContinued
|
|
240
|
-
}
|
|
241
|
-
});
|
|
242
|
-
}
|
|
243
194
|
return {
|
|
244
195
|
llmOutput,
|
|
245
196
|
toolResults,
|