@mastra/core 1.3.0-alpha.2 → 1.4.0-alpha.0
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 +522 -0
- package/datasets.d.ts +1 -0
- package/dist/agent/agent.d.ts +1 -1
- package/dist/agent/index.cjs +13 -13
- package/dist/agent/index.js +2 -2
- package/dist/agent/message-list/adapters/AIV4Adapter.d.ts.map +1 -1
- package/dist/agent/message-list/adapters/AIV5Adapter.d.ts.map +1 -1
- package/dist/agent/message-list/conversion/output-converter.d.ts +2 -1
- package/dist/agent/message-list/conversion/output-converter.d.ts.map +1 -1
- package/dist/agent/message-list/index.cjs +18 -18
- package/dist/agent/message-list/index.js +1 -1
- package/dist/agent/workflows/prepare-stream/index.d.ts +1 -1
- package/dist/{chunk-WL3AW3YA.js → chunk-3X3CZUXI.js} +4070 -3983
- package/dist/chunk-3X3CZUXI.js.map +1 -0
- package/dist/{chunk-2GWTJFVM.js → chunk-4EHGOATH.js} +46 -14
- package/dist/chunk-4EHGOATH.js.map +1 -0
- package/dist/{chunk-CGPH7CMG.cjs → chunk-4KFEMXTV.cjs} +46 -14
- package/dist/chunk-4KFEMXTV.cjs.map +1 -0
- package/dist/{chunk-ZRUTE56J.js → chunk-4X2YMIAC.js} +286 -48
- package/dist/chunk-4X2YMIAC.js.map +1 -0
- package/dist/{chunk-OOCEAC6U.cjs → chunk-65PHUUMF.cjs} +3 -3
- package/dist/{chunk-OOCEAC6U.cjs.map → chunk-65PHUUMF.cjs.map} +1 -1
- package/dist/{chunk-STKNQDVA.js → chunk-6BAACGEW.js} +4 -4
- package/dist/{chunk-STKNQDVA.js.map → chunk-6BAACGEW.js.map} +1 -1
- package/dist/{chunk-MOOJ3H3C.js → chunk-7NKUSQEV.js} +1094 -10
- package/dist/chunk-7NKUSQEV.js.map +1 -0
- package/dist/{chunk-ZHFM7HCQ.js → chunk-AXHBJ4GX.js} +3 -3
- package/dist/{chunk-ZHFM7HCQ.js.map → chunk-AXHBJ4GX.js.map} +1 -1
- package/dist/{chunk-ILQXPZCD.js → chunk-AY6DBRS3.js} +37 -21
- package/dist/chunk-AY6DBRS3.js.map +1 -0
- package/dist/{chunk-JU6K7UDX.cjs → chunk-BP7VYTOP.cjs} +1116 -21
- package/dist/chunk-BP7VYTOP.cjs.map +1 -0
- package/dist/{chunk-UE2G2LRP.cjs → chunk-CZ4NQANZ.cjs} +37 -21
- package/dist/chunk-CZ4NQANZ.cjs.map +1 -0
- package/dist/{chunk-6TZKQI4R.cjs → chunk-EFLVACWV.cjs} +8 -7
- package/dist/{chunk-6TZKQI4R.cjs.map → chunk-EFLVACWV.cjs.map} +1 -1
- package/dist/{chunk-BXLLXTT4.js → chunk-FLPEGTEK.js} +4 -4
- package/dist/{chunk-BXLLXTT4.js.map → chunk-FLPEGTEK.js.map} +1 -1
- package/dist/{chunk-ON2KVIUJ.cjs → chunk-HYRYTTMT.cjs} +7 -7
- package/dist/{chunk-ON2KVIUJ.cjs.map → chunk-HYRYTTMT.cjs.map} +1 -1
- package/dist/chunk-NY5XBRWW.cjs +1207 -0
- package/dist/chunk-NY5XBRWW.cjs.map +1 -0
- package/dist/{chunk-OV7OOUUR.js → chunk-PS5ONCXY.js} +109 -5
- package/dist/chunk-PS5ONCXY.js.map +1 -0
- package/dist/{chunk-KL2JPSRX.js → chunk-RNID4D45.js} +5 -5
- package/dist/{chunk-KL2JPSRX.js.map → chunk-RNID4D45.js.map} +1 -1
- package/dist/{chunk-VM25PDSW.js → chunk-RZ4CIIZR.js} +4 -4
- package/dist/{chunk-VM25PDSW.js.map → chunk-RZ4CIIZR.js.map} +1 -1
- package/dist/{chunk-VVD56FI4.js → chunk-SK72J5NQ.js} +16 -8
- package/dist/chunk-SK72J5NQ.js.map +1 -0
- package/dist/{chunk-GZD6443M.cjs → chunk-SU5APAM6.cjs} +123 -4
- package/dist/chunk-SU5APAM6.cjs.map +1 -0
- package/dist/{chunk-U2CABSMC.cjs → chunk-U4YBKYRI.cjs} +72 -53
- package/dist/{chunk-U2CABSMC.cjs.map → chunk-U4YBKYRI.cjs.map} +1 -1
- package/dist/{chunk-FLHFB23E.cjs → chunk-UQ4SRS66.cjs} +351 -113
- package/dist/chunk-UQ4SRS66.cjs.map +1 -0
- package/dist/chunk-UZYMZNKB.js +1196 -0
- package/dist/chunk-UZYMZNKB.js.map +1 -0
- package/dist/{chunk-GCTAD6B7.cjs → chunk-VD5YA6RH.cjs} +12 -12
- package/dist/{chunk-GCTAD6B7.cjs.map → chunk-VD5YA6RH.cjs.map} +1 -1
- package/dist/{chunk-XQVYEOI7.cjs → chunk-VJIWSASE.cjs} +7 -7
- package/dist/{chunk-XQVYEOI7.cjs.map → chunk-VJIWSASE.cjs.map} +1 -1
- package/dist/{chunk-D5JZT6EK.cjs → chunk-XXZUUDP4.cjs} +23 -15
- package/dist/chunk-XXZUUDP4.cjs.map +1 -0
- package/dist/{chunk-KAJNBNWP.cjs → chunk-YNNJLLFN.cjs} +4071 -3984
- package/dist/chunk-YNNJLLFN.cjs.map +1 -0
- package/dist/{chunk-JQNREL64.js → chunk-ZGSYSUIG.js} +24 -5
- package/dist/{chunk-JQNREL64.js.map → chunk-ZGSYSUIG.js.map} +1 -1
- package/dist/datasets/dataset.d.ts +153 -0
- package/dist/datasets/dataset.d.ts.map +1 -0
- package/dist/datasets/experiment/analytics/aggregate.d.ts +46 -0
- package/dist/datasets/experiment/analytics/aggregate.d.ts.map +1 -0
- package/dist/datasets/experiment/analytics/compare.d.ts +33 -0
- package/dist/datasets/experiment/analytics/compare.d.ts.map +1 -0
- package/dist/datasets/experiment/analytics/index.d.ts +9 -0
- package/dist/datasets/experiment/analytics/index.d.ts.map +1 -0
- package/dist/datasets/experiment/analytics/types.d.ts +103 -0
- package/dist/datasets/experiment/analytics/types.d.ts.map +1 -0
- package/dist/datasets/experiment/executor.d.ts +40 -0
- package/dist/datasets/experiment/executor.d.ts.map +1 -0
- package/dist/datasets/experiment/index.d.ts +31 -0
- package/dist/datasets/experiment/index.d.ts.map +1 -0
- package/dist/datasets/experiment/scorer.d.ts +21 -0
- package/dist/datasets/experiment/scorer.d.ts.map +1 -0
- package/dist/datasets/experiment/types.d.ts +140 -0
- package/dist/datasets/experiment/types.d.ts.map +1 -0
- package/dist/datasets/index.cjs +69 -0
- package/dist/datasets/index.cjs.map +1 -0
- package/dist/datasets/index.d.ts +6 -0
- package/dist/datasets/index.d.ts.map +1 -0
- package/dist/datasets/index.js +4 -0
- package/dist/datasets/index.js.map +1 -0
- package/dist/datasets/manager.d.ts +73 -0
- package/dist/datasets/manager.d.ts.map +1 -0
- package/dist/datasets/validation/errors.d.ts +44 -0
- package/dist/datasets/validation/errors.d.ts.map +1 -0
- package/dist/datasets/validation/index.d.ts +3 -0
- package/dist/datasets/validation/index.d.ts.map +1 -0
- package/dist/datasets/validation/validator.d.ts +24 -0
- package/dist/datasets/validation/validator.d.ts.map +1 -0
- package/dist/docs/SKILL.md +1 -3
- package/dist/docs/assets/SOURCE_MAP.json +436 -346
- package/dist/docs/references/docs-memory-observational-memory.md +86 -11
- package/dist/docs/references/docs-streaming-events.md +23 -0
- package/dist/docs/references/docs-workspace-filesystem.md +72 -1
- package/dist/docs/references/docs-workspace-overview.md +95 -12
- package/dist/docs/references/docs-workspace-sandbox.md +2 -0
- package/dist/docs/references/guides-agent-frameworks-ai-sdk.md +6 -2
- package/dist/docs/references/reference-ai-sdk-with-mastra.md +1 -1
- package/dist/docs/references/reference-memory-observational-memory.md +318 -9
- package/dist/docs/references/reference-streaming-workflows-stream.md +1 -0
- package/dist/docs/references/reference-workflows-workflow-methods-foreach.md +30 -0
- package/dist/docs/references/reference.md +3 -0
- package/dist/editor/index.d.ts +1 -1
- package/dist/editor/index.d.ts.map +1 -1
- package/dist/editor/types.d.ts +21 -3
- package/dist/editor/types.d.ts.map +1 -1
- package/dist/evals/index.cjs +20 -20
- package/dist/evals/index.js +3 -3
- package/dist/evals/scoreTraces/index.cjs +5 -5
- package/dist/evals/scoreTraces/index.js +2 -2
- package/dist/features/index.cjs +1 -1
- package/dist/features/index.cjs.map +1 -1
- package/dist/features/index.d.ts.map +1 -1
- package/dist/features/index.js +1 -1
- package/dist/features/index.js.map +1 -1
- package/dist/index.cjs +2 -7
- package/dist/index.d.ts +0 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/llm/index.cjs +10 -10
- package/dist/llm/index.js +2 -2
- package/dist/llm/model/provider-types.generated.d.ts +1694 -1659
- package/dist/loop/index.cjs +12 -12
- package/dist/loop/index.js +1 -1
- package/dist/loop/network/index.d.ts +1 -1
- package/dist/loop/network/index.d.ts.map +1 -1
- package/dist/loop/network/validation.d.ts +8 -0
- package/dist/loop/network/validation.d.ts.map +1 -1
- package/dist/loop/workflows/agentic-execution/index.d.ts +1 -1
- 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.map +1 -1
- package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
- package/dist/loop/workflows/agentic-loop/index.d.ts +1 -1
- package/dist/loop/workflows/errors.d.ts +4 -0
- package/dist/loop/workflows/errors.d.ts.map +1 -0
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.d.ts +2 -0
- package/dist/mastra/index.d.ts.map +1 -1
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +14 -14
- package/dist/memory/index.js +1 -1
- package/dist/memory/memory.d.ts +5 -0
- package/dist/memory/memory.d.ts.map +1 -1
- package/dist/memory/types.d.ts +56 -0
- package/dist/memory/types.d.ts.map +1 -1
- package/dist/processors/index.cjs +41 -41
- package/dist/processors/index.js +1 -1
- package/dist/processors/processors/skills.d.ts +1 -1
- package/dist/processors/processors/skills.d.ts.map +1 -1
- package/dist/processors/runner.d.ts.map +1 -1
- package/dist/processors/trailing-assistant-guard.d.ts +34 -0
- package/dist/processors/trailing-assistant-guard.d.ts.map +1 -0
- package/dist/provider-registry-6LZAGQET.cjs +40 -0
- package/dist/{provider-registry-C6XCYX44.cjs.map → provider-registry-6LZAGQET.cjs.map} +1 -1
- package/dist/provider-registry-QUNT7S55.js +3 -0
- package/dist/{provider-registry-NWU4YFQW.js.map → provider-registry-QUNT7S55.js.map} +1 -1
- package/dist/provider-registry.json +4068 -3981
- package/dist/relevance/index.cjs +3 -3
- package/dist/relevance/index.js +1 -1
- package/dist/storage/base.d.ts +4 -1
- package/dist/storage/base.d.ts.map +1 -1
- package/dist/storage/constants.cjs +87 -27
- package/dist/storage/constants.d.ts +21 -2
- package/dist/storage/constants.d.ts.map +1 -1
- package/dist/storage/constants.js +1 -1
- package/dist/storage/domains/agents/inmemory.d.ts.map +1 -1
- package/dist/storage/domains/datasets/base.d.ts +83 -0
- package/dist/storage/domains/datasets/base.d.ts.map +1 -0
- package/dist/storage/domains/datasets/index.d.ts +3 -0
- package/dist/storage/domains/datasets/index.d.ts.map +1 -0
- package/dist/storage/domains/datasets/inmemory.d.ts +40 -0
- package/dist/storage/domains/datasets/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/experiments/base.d.ts +28 -0
- package/dist/storage/domains/experiments/base.d.ts.map +1 -0
- package/dist/storage/domains/experiments/index.d.ts +3 -0
- package/dist/storage/domains/experiments/index.d.ts.map +1 -0
- package/dist/storage/domains/experiments/inmemory.d.ts +28 -0
- package/dist/storage/domains/experiments/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/index.d.ts +3 -0
- package/dist/storage/domains/index.d.ts.map +1 -1
- package/dist/storage/domains/inmemory-db.d.ts +9 -1
- package/dist/storage/domains/inmemory-db.d.ts.map +1 -1
- package/dist/storage/domains/mcp-clients/base.d.ts +47 -0
- package/dist/storage/domains/mcp-clients/base.d.ts.map +1 -0
- package/dist/storage/domains/mcp-clients/index.d.ts +3 -0
- package/dist/storage/domains/mcp-clients/index.d.ts.map +1 -0
- package/dist/storage/domains/mcp-clients/inmemory.d.ts +31 -0
- package/dist/storage/domains/mcp-clients/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/operations/inmemory.d.ts.map +1 -1
- package/dist/storage/index.cjs +201 -117
- package/dist/storage/index.js +2 -2
- package/dist/storage/mock.d.ts.map +1 -1
- package/dist/storage/types.d.ts +340 -5
- package/dist/storage/types.d.ts.map +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 +15 -0
- package/dist/stream/types.d.ts.map +1 -1
- package/dist/test-utils/llm-mock.cjs +4 -4
- package/dist/test-utils/llm-mock.js +1 -1
- package/dist/tool-loop-agent/index.cjs +4 -4
- package/dist/tool-loop-agent/index.js +1 -1
- package/dist/tool-provider/index.cjs +4 -0
- package/dist/tool-provider/index.cjs.map +1 -0
- package/dist/tool-provider/index.d.ts +2 -0
- package/dist/tool-provider/index.d.ts.map +1 -0
- package/dist/tool-provider/index.js +3 -0
- package/dist/tool-provider/index.js.map +1 -0
- package/dist/tool-provider/types.d.ts +113 -0
- package/dist/tool-provider/types.d.ts.map +1 -0
- package/dist/utils.cjs +23 -23
- package/dist/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/vector/index.cjs +7 -7
- package/dist/vector/index.js +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.map +1 -1
- package/dist/workflows/handlers/control-flow.d.ts.map +1 -1
- package/dist/workflows/index.cjs +25 -25
- package/dist/workflows/index.js +1 -1
- package/dist/workflows/workflow.d.ts +2 -2
- package/dist/workflows/workflow.d.ts.map +1 -1
- package/dist/workspace/filesystem/filesystem.d.ts +5 -15
- package/dist/workspace/filesystem/filesystem.d.ts.map +1 -1
- package/dist/workspace/filesystem/local-filesystem.d.ts +18 -2
- package/dist/workspace/filesystem/local-filesystem.d.ts.map +1 -1
- package/dist/workspace/filesystem/mastra-filesystem.d.ts +21 -1
- package/dist/workspace/filesystem/mastra-filesystem.d.ts.map +1 -1
- package/dist/workspace/index.cjs +41 -41
- package/dist/workspace/index.d.ts +1 -1
- package/dist/workspace/index.d.ts.map +1 -1
- package/dist/workspace/index.js +1 -1
- package/dist/workspace/lifecycle.d.ts +49 -53
- package/dist/workspace/lifecycle.d.ts.map +1 -1
- package/dist/workspace/sandbox/local-sandbox.d.ts +1 -1
- package/dist/workspace/sandbox/local-sandbox.d.ts.map +1 -1
- package/dist/workspace/sandbox/mastra-sandbox.d.ts +3 -2
- package/dist/workspace/sandbox/mastra-sandbox.d.ts.map +1 -1
- package/dist/workspace/sandbox/sandbox.d.ts +3 -4
- package/dist/workspace/sandbox/sandbox.d.ts.map +1 -1
- package/dist/workspace/workspace.d.ts +2 -15
- package/dist/workspace/workspace.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/llm/model/provider-types.generated.d.ts +1694 -1659
- package/tool-provider.d.ts +1 -0
- package/dist/chunk-2GWTJFVM.js.map +0 -1
- package/dist/chunk-CGPH7CMG.cjs.map +0 -1
- package/dist/chunk-D5JZT6EK.cjs.map +0 -1
- package/dist/chunk-FLHFB23E.cjs.map +0 -1
- package/dist/chunk-GZD6443M.cjs.map +0 -1
- package/dist/chunk-ILQXPZCD.js.map +0 -1
- package/dist/chunk-JU6K7UDX.cjs.map +0 -1
- package/dist/chunk-KAJNBNWP.cjs.map +0 -1
- package/dist/chunk-MOOJ3H3C.js.map +0 -1
- package/dist/chunk-OV7OOUUR.js.map +0 -1
- package/dist/chunk-UE2G2LRP.cjs.map +0 -1
- package/dist/chunk-VVD56FI4.js.map +0 -1
- package/dist/chunk-WL3AW3YA.js.map +0 -1
- package/dist/chunk-ZRUTE56J.js.map +0 -1
- package/dist/docs/references/reference-cli-mastra.md +0 -336
- package/dist/docs/references/reference-deployer-cloudflare.md +0 -56
- package/dist/provider-registry-C6XCYX44.cjs +0 -40
- package/dist/provider-registry-NWU4YFQW.js +0 -3
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var chunkCGPH7CMG_cjs = require('./chunk-CGPH7CMG.cjs');
|
|
4
3
|
var chunkRQ56ZSIR_cjs = require('./chunk-RQ56ZSIR.cjs');
|
|
5
4
|
var chunkZCBG4ZQT_cjs = require('./chunk-ZCBG4ZQT.cjs');
|
|
6
|
-
var
|
|
7
|
-
var
|
|
5
|
+
var chunk4KFEMXTV_cjs = require('./chunk-4KFEMXTV.cjs');
|
|
6
|
+
var chunkBP7VYTOP_cjs = require('./chunk-BP7VYTOP.cjs');
|
|
7
|
+
var chunkCZ4NQANZ_cjs = require('./chunk-CZ4NQANZ.cjs');
|
|
8
8
|
var chunkZIEQA3YP_cjs = require('./chunk-ZIEQA3YP.cjs');
|
|
9
9
|
var chunkPM3UIIBK_cjs = require('./chunk-PM3UIIBK.cjs');
|
|
10
|
-
var
|
|
11
|
-
var
|
|
10
|
+
var chunkMR7ZWBL6_cjs = require('./chunk-MR7ZWBL6.cjs');
|
|
11
|
+
var chunkVD5YA6RH_cjs = require('./chunk-VD5YA6RH.cjs');
|
|
12
|
+
var chunkHYRYTTMT_cjs = require('./chunk-HYRYTTMT.cjs');
|
|
12
13
|
var chunk6BJ7XHRH_cjs = require('./chunk-6BJ7XHRH.cjs');
|
|
13
14
|
var chunk4D4KB75Y_cjs = require('./chunk-4D4KB75Y.cjs');
|
|
14
|
-
var
|
|
15
|
-
var
|
|
15
|
+
var chunk65PHUUMF_cjs = require('./chunk-65PHUUMF.cjs');
|
|
16
|
+
var chunkCYUP7QWT_cjs = require('./chunk-CYUP7QWT.cjs');
|
|
16
17
|
var chunkKJBMTK5B_cjs = require('./chunk-KJBMTK5B.cjs');
|
|
17
18
|
var chunk7UWHFWST_cjs = require('./chunk-7UWHFWST.cjs');
|
|
18
|
-
var chunkCYUP7QWT_cjs = require('./chunk-CYUP7QWT.cjs');
|
|
19
19
|
var chunkVDKWYUGC_cjs = require('./chunk-VDKWYUGC.cjs');
|
|
20
20
|
var chunk4U7ZLI36_cjs = require('./chunk-4U7ZLI36.cjs');
|
|
21
21
|
var chunk4WQYXT2I_cjs = require('./chunk-4WQYXT2I.cjs');
|
|
@@ -1018,6 +1018,45 @@ function resolveThreadIdFromArgs(args) {
|
|
|
1018
1018
|
if (args?.threadId) return { id: args.threadId };
|
|
1019
1019
|
return void 0;
|
|
1020
1020
|
}
|
|
1021
|
+
var CLAUDE_46_PATTERN = /[^0-9]4[.-]6/;
|
|
1022
|
+
function isMaybeClaude46(model) {
|
|
1023
|
+
if (typeof model === "function") return true;
|
|
1024
|
+
if (Array.isArray(model)) {
|
|
1025
|
+
return model.some((m) => isMaybeClaude46(m.model ?? m));
|
|
1026
|
+
}
|
|
1027
|
+
if (typeof model === "string") {
|
|
1028
|
+
return model.startsWith("anthropic") && CLAUDE_46_PATTERN.test(model);
|
|
1029
|
+
}
|
|
1030
|
+
if (model && typeof model === "object" && "provider" in model && "modelId" in model) {
|
|
1031
|
+
const { provider, modelId } = model;
|
|
1032
|
+
return provider.startsWith("anthropic") && CLAUDE_46_PATTERN.test(modelId);
|
|
1033
|
+
}
|
|
1034
|
+
return true;
|
|
1035
|
+
}
|
|
1036
|
+
var TrailingAssistantGuard = class {
|
|
1037
|
+
id = "trailing-assistant-guard";
|
|
1038
|
+
name = "Trailing Assistant Guard";
|
|
1039
|
+
processInputStep({ messages, structuredOutput }) {
|
|
1040
|
+
const willUseResponseFormat = structuredOutput?.schema && !structuredOutput?.model && !structuredOutput?.jsonPromptInjection;
|
|
1041
|
+
if (!willUseResponseFormat) return;
|
|
1042
|
+
const lastMessage = messages[messages.length - 1];
|
|
1043
|
+
if (!lastMessage || lastMessage.role !== "assistant") return;
|
|
1044
|
+
return {
|
|
1045
|
+
messages: [
|
|
1046
|
+
...messages,
|
|
1047
|
+
{
|
|
1048
|
+
id: crypto2.randomUUID(),
|
|
1049
|
+
role: "user",
|
|
1050
|
+
content: {
|
|
1051
|
+
format: 2,
|
|
1052
|
+
parts: [{ type: "text", text: "Generate the structured response." }]
|
|
1053
|
+
},
|
|
1054
|
+
createdAt: /* @__PURE__ */ new Date()
|
|
1055
|
+
}
|
|
1056
|
+
]
|
|
1057
|
+
};
|
|
1058
|
+
}
|
|
1059
|
+
};
|
|
1021
1060
|
|
|
1022
1061
|
// src/processors/runner.ts
|
|
1023
1062
|
var ProcessorState = class {
|
|
@@ -1145,11 +1184,23 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1145
1184
|
);
|
|
1146
1185
|
}
|
|
1147
1186
|
if (result.status !== "success") {
|
|
1187
|
+
const details = [];
|
|
1188
|
+
if (result.status === "failed") {
|
|
1189
|
+
if (result.error) {
|
|
1190
|
+
details.push(result.error.message || JSON.stringify(result.error));
|
|
1191
|
+
}
|
|
1192
|
+
for (const [stepId, step] of Object.entries(result.steps)) {
|
|
1193
|
+
if (step.status === "failed" && step.error?.message) {
|
|
1194
|
+
details.push(`step ${stepId}: ${step.error.message}`);
|
|
1195
|
+
}
|
|
1196
|
+
}
|
|
1197
|
+
}
|
|
1198
|
+
const detailStr = details.length > 0 ? ` \u2014 ${details.join("; ")}` : "";
|
|
1148
1199
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
1149
1200
|
category: "USER",
|
|
1150
1201
|
domain: "AGENT",
|
|
1151
1202
|
id: "PROCESSOR_WORKFLOW_FAILED",
|
|
1152
|
-
text: `Processor workflow ${workflow.id} failed with status: ${result.status}`
|
|
1203
|
+
text: `Processor workflow ${workflow.id} failed with status: ${result.status}${detailStr}`
|
|
1153
1204
|
});
|
|
1154
1205
|
}
|
|
1155
1206
|
const output = result.result;
|
|
@@ -1222,7 +1273,7 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1222
1273
|
writer
|
|
1223
1274
|
});
|
|
1224
1275
|
const mutations = messageList.stopRecording();
|
|
1225
|
-
if (result instanceof
|
|
1276
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
1226
1277
|
if (result !== messageList) {
|
|
1227
1278
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
1228
1279
|
category: "USER",
|
|
@@ -1474,7 +1525,7 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1474
1525
|
retryCount
|
|
1475
1526
|
});
|
|
1476
1527
|
let mutations;
|
|
1477
|
-
if (result instanceof
|
|
1528
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
1478
1529
|
if (result !== messageList) {
|
|
1479
1530
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
1480
1531
|
category: "USER",
|
|
@@ -1569,7 +1620,8 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1569
1620
|
structuredOutput: args.structuredOutput,
|
|
1570
1621
|
retryCount: args.retryCount ?? 0
|
|
1571
1622
|
};
|
|
1572
|
-
|
|
1623
|
+
const processors = stepInput.model && isMaybeClaude46(stepInput.model) ? [...this.inputProcessors, new TrailingAssistantGuard()] : this.inputProcessors;
|
|
1624
|
+
for (const [index, processorOrWorkflow] of processors.entries()) {
|
|
1573
1625
|
const processableMessages = messageList.get.all.db();
|
|
1574
1626
|
const idsBeforeProcessing = processableMessages.map((m) => m.id);
|
|
1575
1627
|
const check = messageList.makeMessageSourceChecker();
|
|
@@ -1801,7 +1853,7 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1801
1853
|
writer
|
|
1802
1854
|
});
|
|
1803
1855
|
const mutations = messageList.stopRecording();
|
|
1804
|
-
if (result instanceof
|
|
1856
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
1805
1857
|
if (result !== messageList) {
|
|
1806
1858
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
1807
1859
|
category: "USER",
|
|
@@ -1871,7 +1923,7 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1871
1923
|
processor,
|
|
1872
1924
|
stepNumber
|
|
1873
1925
|
}) {
|
|
1874
|
-
if (result instanceof
|
|
1926
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
1875
1927
|
if (result !== messageList) {
|
|
1876
1928
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
1877
1929
|
category: "USER",
|
|
@@ -1906,7 +1958,7 @@ var ProcessorRunner = class _ProcessorRunner {
|
|
|
1906
1958
|
}
|
|
1907
1959
|
const { model: _model, ...rest } = result;
|
|
1908
1960
|
if (result.model) {
|
|
1909
|
-
const resolvedModel = await
|
|
1961
|
+
const resolvedModel = await chunkVD5YA6RH_cjs.resolveModelConfig(result.model);
|
|
1910
1962
|
const isSupported = isSupportedLanguageModel(resolvedModel);
|
|
1911
1963
|
if (!isSupported) {
|
|
1912
1964
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
@@ -2975,7 +3027,7 @@ var MastraModelOutput = class extends chunkRO47SMI7_cjs.MastraBase {
|
|
|
2975
3027
|
);
|
|
2976
3028
|
const responseMessages = self.messageList.get.response.aiV4.core();
|
|
2977
3029
|
const lastResponseMessage = responseMessages[responseMessages.length - 1];
|
|
2978
|
-
const outputText = lastResponseMessage ?
|
|
3030
|
+
const outputText = lastResponseMessage ? chunkCZ4NQANZ_cjs.coreContentToString(lastResponseMessage.content) : "";
|
|
2979
3031
|
if (lastStep && outputText && outputText !== originalText) {
|
|
2980
3032
|
lastStep.text = outputText;
|
|
2981
3033
|
}
|
|
@@ -4287,7 +4339,7 @@ function convertMastraChunkToAISDKv5({
|
|
|
4287
4339
|
if (mode === "generate") {
|
|
4288
4340
|
return {
|
|
4289
4341
|
type: "file",
|
|
4290
|
-
file: new
|
|
4342
|
+
file: new chunkCZ4NQANZ_cjs.DefaultGeneratedFile({
|
|
4291
4343
|
data: chunk.payload.data,
|
|
4292
4344
|
mediaType: chunk.payload.mimeType
|
|
4293
4345
|
})
|
|
@@ -4295,7 +4347,7 @@ function convertMastraChunkToAISDKv5({
|
|
|
4295
4347
|
}
|
|
4296
4348
|
return {
|
|
4297
4349
|
type: "file",
|
|
4298
|
-
file: new
|
|
4350
|
+
file: new chunkCZ4NQANZ_cjs.DefaultGeneratedFileWithType({
|
|
4299
4351
|
data: chunk.payload.data,
|
|
4300
4352
|
mediaType: chunk.payload.mimeType
|
|
4301
4353
|
})
|
|
@@ -4909,7 +4961,7 @@ async function validateStepInput({
|
|
|
4909
4961
|
}) {
|
|
4910
4962
|
let inputData = prevOutput;
|
|
4911
4963
|
let validationError;
|
|
4912
|
-
if (validateInputs &&
|
|
4964
|
+
if (validateInputs && chunk65PHUUMF_cjs.isZodType(step.inputSchema)) {
|
|
4913
4965
|
const inputSchema = step.inputSchema;
|
|
4914
4966
|
const validatedInput = await inputSchema.safeParseAsync(prevOutput);
|
|
4915
4967
|
if (!validatedInput.success) {
|
|
@@ -4938,7 +4990,7 @@ async function validateStepResumeData({ resumeData, step }) {
|
|
|
4938
4990
|
}
|
|
4939
4991
|
let validationError;
|
|
4940
4992
|
const resumeSchema = step.resumeSchema;
|
|
4941
|
-
if (resumeSchema &&
|
|
4993
|
+
if (resumeSchema && chunk65PHUUMF_cjs.isZodType(resumeSchema)) {
|
|
4942
4994
|
const validatedResumeData = await resumeSchema.safeParseAsync(resumeData);
|
|
4943
4995
|
if (!validatedResumeData.success) {
|
|
4944
4996
|
const errors = getZodErrors(validatedResumeData.error);
|
|
@@ -4969,7 +5021,7 @@ async function validateStepSuspendData({
|
|
|
4969
5021
|
}
|
|
4970
5022
|
let validationError;
|
|
4971
5023
|
const suspendSchema = step.suspendSchema;
|
|
4972
|
-
if (suspendSchema && validateInputs &&
|
|
5024
|
+
if (suspendSchema && validateInputs && chunk65PHUUMF_cjs.isZodType(suspendSchema)) {
|
|
4973
5025
|
const validatedSuspendData = await suspendSchema.safeParseAsync(suspendData);
|
|
4974
5026
|
if (!validatedSuspendData.success) {
|
|
4975
5027
|
const errors = getZodErrors(validatedSuspendData.error);
|
|
@@ -5000,7 +5052,7 @@ async function validateStepStateData({
|
|
|
5000
5052
|
}
|
|
5001
5053
|
let validationError;
|
|
5002
5054
|
const stateSchema = step.stateSchema;
|
|
5003
|
-
if (stateSchema && validateInputs &&
|
|
5055
|
+
if (stateSchema && validateInputs && chunk65PHUUMF_cjs.isZodType(stateSchema)) {
|
|
5004
5056
|
const validatedStateData = await stateSchema.safeParseAsync(stateData);
|
|
5005
5057
|
if (!validatedStateData.success) {
|
|
5006
5058
|
const errors = getZodErrors(validatedStateData.error);
|
|
@@ -5019,7 +5071,7 @@ async function validateStepRequestContext({
|
|
|
5019
5071
|
}) {
|
|
5020
5072
|
let validationError;
|
|
5021
5073
|
const requestContextSchema = step.requestContextSchema;
|
|
5022
|
-
if (requestContextSchema && validateInputs &&
|
|
5074
|
+
if (requestContextSchema && validateInputs && chunk65PHUUMF_cjs.isZodType(requestContextSchema)) {
|
|
5023
5075
|
const contextValues = requestContext?.all ?? {};
|
|
5024
5076
|
const validatedRequestContext = await requestContextSchema.safeParseAsync(contextValues);
|
|
5025
5077
|
if (!validatedRequestContext.success) {
|
|
@@ -5155,7 +5207,7 @@ var createTimeTravelExecutionParams = (params) => {
|
|
|
5155
5207
|
result = void 0;
|
|
5156
5208
|
}
|
|
5157
5209
|
if (result) {
|
|
5158
|
-
const formattedResult =
|
|
5210
|
+
const formattedResult = chunk65PHUUMF_cjs.removeUndefinedValues(result);
|
|
5159
5211
|
stepResults[stepId] = formattedResult;
|
|
5160
5212
|
}
|
|
5161
5213
|
});
|
|
@@ -5715,7 +5767,7 @@ async function executeLoop(engine, params) {
|
|
|
5715
5767
|
options: {
|
|
5716
5768
|
type: "workflow_conditional_eval" /* WORKFLOW_CONDITIONAL_EVAL */,
|
|
5717
5769
|
name: `condition: '${entry.loopType}'`,
|
|
5718
|
-
input:
|
|
5770
|
+
input: chunk65PHUUMF_cjs.selectFields(result.output, ["stepResult", "output.text", "output.object", "messages"]),
|
|
5719
5771
|
attributes: {
|
|
5720
5772
|
conditionIndex: iteration
|
|
5721
5773
|
},
|
|
@@ -5851,6 +5903,8 @@ async function executeForeach(engine, params) {
|
|
|
5851
5903
|
const prevForeachOutput = prevPayload?.suspendPayload?.__workflow_meta?.foreachOutput || [];
|
|
5852
5904
|
const prevResumeLabels = prevPayload?.suspendPayload?.__workflow_meta?.resumeLabels || {};
|
|
5853
5905
|
const resumeLabels = getResumeLabelsByStepId(prevResumeLabels, step.id);
|
|
5906
|
+
const totalCount = prevOutput.length;
|
|
5907
|
+
let completedCount = 0;
|
|
5854
5908
|
for (let i = 0; i < prevOutput.length; i += concurrency) {
|
|
5855
5909
|
const items = prevOutput.slice(i, i + concurrency);
|
|
5856
5910
|
const itemsResults = await Promise.all(
|
|
@@ -5901,7 +5955,36 @@ async function executeForeach(engine, params) {
|
|
|
5901
5955
|
const execResults = { status, error, suspendPayload, suspendedAt, endedAt, output };
|
|
5902
5956
|
if (execResults.status === "suspended") {
|
|
5903
5957
|
foreachIndexObj[i + resultIndex] = execResults;
|
|
5958
|
+
await pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
5959
|
+
type: "watch",
|
|
5960
|
+
runId,
|
|
5961
|
+
data: {
|
|
5962
|
+
type: "workflow-step-progress",
|
|
5963
|
+
payload: {
|
|
5964
|
+
id: step.id,
|
|
5965
|
+
completedCount,
|
|
5966
|
+
totalCount,
|
|
5967
|
+
currentIndex: i + resultIndex,
|
|
5968
|
+
iterationStatus: "suspended"
|
|
5969
|
+
}
|
|
5970
|
+
}
|
|
5971
|
+
});
|
|
5904
5972
|
} else {
|
|
5973
|
+
completedCount++;
|
|
5974
|
+
await pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
5975
|
+
type: "watch",
|
|
5976
|
+
runId,
|
|
5977
|
+
data: {
|
|
5978
|
+
type: "workflow-step-progress",
|
|
5979
|
+
payload: {
|
|
5980
|
+
id: step.id,
|
|
5981
|
+
completedCount,
|
|
5982
|
+
totalCount,
|
|
5983
|
+
currentIndex: i + resultIndex,
|
|
5984
|
+
iterationStatus: "failed"
|
|
5985
|
+
}
|
|
5986
|
+
}
|
|
5987
|
+
});
|
|
5905
5988
|
await pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
5906
5989
|
type: "watch",
|
|
5907
5990
|
runId,
|
|
@@ -5927,6 +6010,22 @@ async function executeForeach(engine, params) {
|
|
|
5927
6010
|
return result;
|
|
5928
6011
|
}
|
|
5929
6012
|
} else {
|
|
6013
|
+
completedCount++;
|
|
6014
|
+
await pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
6015
|
+
type: "watch",
|
|
6016
|
+
runId,
|
|
6017
|
+
data: {
|
|
6018
|
+
type: "workflow-step-progress",
|
|
6019
|
+
payload: {
|
|
6020
|
+
id: step.id,
|
|
6021
|
+
completedCount,
|
|
6022
|
+
totalCount,
|
|
6023
|
+
currentIndex: i + resultIndex,
|
|
6024
|
+
iterationStatus: "success",
|
|
6025
|
+
iterationOutput: result?.output
|
|
6026
|
+
}
|
|
6027
|
+
}
|
|
6028
|
+
});
|
|
5930
6029
|
const indexResumeLabel = Object.keys(resumeLabels).find(
|
|
5931
6030
|
(key) => resumeLabels[key]?.foreachIndex === i + resultIndex
|
|
5932
6031
|
);
|
|
@@ -8122,7 +8221,7 @@ function createStepFromProcessor(processor) {
|
|
|
8122
8221
|
phase,
|
|
8123
8222
|
// Auto-create MessageList from messages if not provided
|
|
8124
8223
|
// This enables running processor workflows from the UI where messageList can't be serialized
|
|
8125
|
-
messageList: messageList ?? (Array.isArray(messages) ? new
|
|
8224
|
+
messageList: messageList ?? (Array.isArray(messages) ? new chunkCZ4NQANZ_cjs.MessageList().add(messages, "input").addSystem(systemMessages ?? []) : void 0),
|
|
8126
8225
|
stepNumber,
|
|
8127
8226
|
systemMessages,
|
|
8128
8227
|
streamParts,
|
|
@@ -8176,7 +8275,7 @@ function createStepFromProcessor(processor) {
|
|
|
8176
8275
|
messageList: checkedMessageList,
|
|
8177
8276
|
systemMessages: systemMessages ?? []
|
|
8178
8277
|
});
|
|
8179
|
-
if (result instanceof
|
|
8278
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
8180
8279
|
if (result !== checkedMessageList) {
|
|
8181
8280
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
8182
8281
|
category: "USER" /* USER */,
|
|
@@ -8340,7 +8439,7 @@ function createStepFromProcessor(processor) {
|
|
|
8340
8439
|
messages,
|
|
8341
8440
|
messageList: passThrough.messageList
|
|
8342
8441
|
});
|
|
8343
|
-
if (result instanceof
|
|
8442
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
8344
8443
|
if (result !== passThrough.messageList) {
|
|
8345
8444
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
8346
8445
|
category: "USER" /* USER */,
|
|
@@ -8407,7 +8506,7 @@ function createStepFromProcessor(processor) {
|
|
|
8407
8506
|
systemMessages: systemMessages ?? [],
|
|
8408
8507
|
steps: steps ?? []
|
|
8409
8508
|
});
|
|
8410
|
-
if (result instanceof
|
|
8509
|
+
if (result instanceof chunkCZ4NQANZ_cjs.MessageList) {
|
|
8411
8510
|
if (result !== checkedMessageList) {
|
|
8412
8511
|
throw new chunk4U7ZLI36_cjs.MastraError({
|
|
8413
8512
|
category: "USER" /* USER */,
|
|
@@ -9449,7 +9548,7 @@ var Run = class {
|
|
|
9449
9548
|
}
|
|
9450
9549
|
async _validateInput(inputData) {
|
|
9451
9550
|
let inputDataToUse = inputData;
|
|
9452
|
-
if (this.validateInputs && this.inputSchema &&
|
|
9551
|
+
if (this.validateInputs && this.inputSchema && chunk65PHUUMF_cjs.isZodType(this.inputSchema)) {
|
|
9453
9552
|
const validatedInputData = await this.inputSchema.safeParseAsync(inputData);
|
|
9454
9553
|
if (!validatedInputData.success) {
|
|
9455
9554
|
const errors = getZodErrors(validatedInputData.error);
|
|
@@ -9463,7 +9562,7 @@ var Run = class {
|
|
|
9463
9562
|
let initialStateToUse = initialState;
|
|
9464
9563
|
if (this.validateInputs) {
|
|
9465
9564
|
let stateSchema = this.stateSchema;
|
|
9466
|
-
if (stateSchema &&
|
|
9565
|
+
if (stateSchema && chunk65PHUUMF_cjs.isZodType(stateSchema)) {
|
|
9467
9566
|
const validatedInitialState = await stateSchema.safeParseAsync(initialState);
|
|
9468
9567
|
if (!validatedInitialState.success) {
|
|
9469
9568
|
const errors = getZodErrors(validatedInitialState.error);
|
|
@@ -9477,7 +9576,7 @@ var Run = class {
|
|
|
9477
9576
|
return initialStateToUse;
|
|
9478
9577
|
}
|
|
9479
9578
|
async _validateRequestContext(requestContext) {
|
|
9480
|
-
if (this.validateInputs && this.requestContextSchema &&
|
|
9579
|
+
if (this.validateInputs && this.requestContextSchema && chunk65PHUUMF_cjs.isZodType(this.requestContextSchema)) {
|
|
9481
9580
|
const contextValues = requestContext?.all ?? {};
|
|
9482
9581
|
const validatedRequestContext = await this.requestContextSchema.safeParseAsync(contextValues);
|
|
9483
9582
|
if (!validatedRequestContext.success) {
|
|
@@ -9491,7 +9590,7 @@ var Run = class {
|
|
|
9491
9590
|
}
|
|
9492
9591
|
async _validateResumeData(resumeData, suspendedStep) {
|
|
9493
9592
|
let resumeDataToUse = resumeData;
|
|
9494
|
-
if (suspendedStep && suspendedStep.resumeSchema && this.validateInputs &&
|
|
9593
|
+
if (suspendedStep && suspendedStep.resumeSchema && this.validateInputs && chunk65PHUUMF_cjs.isZodType(suspendedStep.resumeSchema)) {
|
|
9495
9594
|
const resumeSchema = suspendedStep.resumeSchema;
|
|
9496
9595
|
const validatedResumeData = await resumeSchema.safeParseAsync(resumeData);
|
|
9497
9596
|
if (!validatedResumeData.success) {
|
|
@@ -9504,7 +9603,7 @@ var Run = class {
|
|
|
9504
9603
|
}
|
|
9505
9604
|
async _validateTimetravelInputData(inputData, step) {
|
|
9506
9605
|
let inputDataToUse = inputData;
|
|
9507
|
-
if (step && step.inputSchema && this.validateInputs &&
|
|
9606
|
+
if (step && step.inputSchema && this.validateInputs && chunk65PHUUMF_cjs.isZodType(step.inputSchema)) {
|
|
9508
9607
|
const inputSchema = step.inputSchema;
|
|
9509
9608
|
const validatedInputData = await inputSchema.safeParseAsync(inputData);
|
|
9510
9609
|
if (!validatedInputData.success) {
|
|
@@ -11080,6 +11179,7 @@ function executeStreamWithFallbackModels(models, logger) {
|
|
|
11080
11179
|
let index = 0;
|
|
11081
11180
|
let finalResult;
|
|
11082
11181
|
let done = false;
|
|
11182
|
+
let lastError;
|
|
11083
11183
|
for (const modelConfig of models) {
|
|
11084
11184
|
index++;
|
|
11085
11185
|
const maxRetries = modelConfig.maxRetries || 0;
|
|
@@ -11098,6 +11198,7 @@ function executeStreamWithFallbackModels(models, logger) {
|
|
|
11098
11198
|
if (err instanceof TripWire) {
|
|
11099
11199
|
throw err;
|
|
11100
11200
|
}
|
|
11201
|
+
lastError = err;
|
|
11101
11202
|
attempt++;
|
|
11102
11203
|
logger?.error(`Error executing model ${modelConfig.model.modelId}, attempt ${attempt}====`, err);
|
|
11103
11204
|
if (attempt > maxRetries) {
|
|
@@ -11109,8 +11210,10 @@ function executeStreamWithFallbackModels(models, logger) {
|
|
|
11109
11210
|
}
|
|
11110
11211
|
}
|
|
11111
11212
|
if (typeof finalResult === "undefined") {
|
|
11112
|
-
|
|
11113
|
-
|
|
11213
|
+
const lastErrMsg = lastError instanceof Error ? lastError.message : String(lastError);
|
|
11214
|
+
const errorMessage = `Exhausted all fallback models and reached the maximum number of retries. Last error: ${lastErrMsg}`;
|
|
11215
|
+
logger?.error(errorMessage);
|
|
11216
|
+
throw new Error(errorMessage, { cause: lastError });
|
|
11114
11217
|
}
|
|
11115
11218
|
return finalResult;
|
|
11116
11219
|
};
|
|
@@ -11675,6 +11778,16 @@ Analyse the suspended tools: ${JSON.stringify(suspendedTools)}, using the messag
|
|
|
11675
11778
|
}
|
|
11676
11779
|
});
|
|
11677
11780
|
}
|
|
11781
|
+
|
|
11782
|
+
// src/loop/workflows/errors.ts
|
|
11783
|
+
var ToolNotFoundError = class extends Error {
|
|
11784
|
+
constructor(message) {
|
|
11785
|
+
super(message);
|
|
11786
|
+
this.name = "ToolNotFoundError";
|
|
11787
|
+
}
|
|
11788
|
+
};
|
|
11789
|
+
|
|
11790
|
+
// src/loop/workflows/agentic-execution/llm-mapping-step.ts
|
|
11678
11791
|
function createLLMMappingStep({ models, _internal, ...rest }, llmExecutionStep) {
|
|
11679
11792
|
const processorRunner = rest.outputProcessors?.length && rest.logger ? new ProcessorRunner({
|
|
11680
11793
|
inputProcessors: [],
|
|
@@ -11766,6 +11879,60 @@ function createLLMMappingStep({ models, _internal, ...rest }, llmExecutionStep)
|
|
|
11766
11879
|
};
|
|
11767
11880
|
rest.messageList.add(msg, "response");
|
|
11768
11881
|
}
|
|
11882
|
+
const allErrorsAreToolNotFound = errorResults?.length > 0 && errorResults.every((tc) => tc.error instanceof ToolNotFoundError);
|
|
11883
|
+
const hasPendingHITL = inputData.some((tc) => tc.result === void 0 && !tc.error);
|
|
11884
|
+
if (allErrorsAreToolNotFound && !hasPendingHITL) {
|
|
11885
|
+
const successfulResults = inputData.filter((tc) => tc.result !== void 0);
|
|
11886
|
+
if (successfulResults.length) {
|
|
11887
|
+
for (const toolCall of successfulResults) {
|
|
11888
|
+
const chunk = {
|
|
11889
|
+
type: "tool-result",
|
|
11890
|
+
runId: rest.runId,
|
|
11891
|
+
from: "AGENT" /* AGENT */,
|
|
11892
|
+
payload: {
|
|
11893
|
+
args: toolCall.args,
|
|
11894
|
+
toolCallId: toolCall.toolCallId,
|
|
11895
|
+
toolName: toolCall.toolName,
|
|
11896
|
+
result: toolCall.result,
|
|
11897
|
+
providerMetadata: toolCall.providerMetadata,
|
|
11898
|
+
providerExecuted: toolCall.providerExecuted
|
|
11899
|
+
}
|
|
11900
|
+
};
|
|
11901
|
+
await processAndEnqueueChunk(chunk);
|
|
11902
|
+
}
|
|
11903
|
+
const successMessageId = rest.experimental_generateMessageId?.() || _internal?.generateId?.();
|
|
11904
|
+
const successMessage = {
|
|
11905
|
+
id: successMessageId || "",
|
|
11906
|
+
role: "assistant",
|
|
11907
|
+
content: {
|
|
11908
|
+
format: 2,
|
|
11909
|
+
parts: successfulResults.map((toolCall) => ({
|
|
11910
|
+
type: "tool-invocation",
|
|
11911
|
+
toolInvocation: {
|
|
11912
|
+
state: "result",
|
|
11913
|
+
toolCallId: toolCall.toolCallId,
|
|
11914
|
+
toolName: toolCall.toolName,
|
|
11915
|
+
args: toolCall.args,
|
|
11916
|
+
result: toolCall.result
|
|
11917
|
+
},
|
|
11918
|
+
...toolCall.providerMetadata ? { providerMetadata: toolCall.providerMetadata } : {}
|
|
11919
|
+
}))
|
|
11920
|
+
},
|
|
11921
|
+
createdAt: /* @__PURE__ */ new Date()
|
|
11922
|
+
};
|
|
11923
|
+
rest.messageList.add(successMessage, "response");
|
|
11924
|
+
}
|
|
11925
|
+
initialResult.stepResult.isContinued = true;
|
|
11926
|
+
initialResult.stepResult.reason = "tool-calls";
|
|
11927
|
+
return {
|
|
11928
|
+
...initialResult,
|
|
11929
|
+
messages: {
|
|
11930
|
+
all: rest.messageList.get.all.aiV5.model(),
|
|
11931
|
+
user: rest.messageList.get.input.aiV5.model(),
|
|
11932
|
+
nonUser: rest.messageList.get.response.aiV5.model()
|
|
11933
|
+
}
|
|
11934
|
+
};
|
|
11935
|
+
}
|
|
11769
11936
|
if (initialResult.stepResult.reason !== "retry") {
|
|
11770
11937
|
initialResult.stepResult.isContinued = false;
|
|
11771
11938
|
}
|
|
@@ -11991,7 +12158,14 @@ function createToolCallStep({
|
|
|
11991
12158
|
};
|
|
11992
12159
|
}
|
|
11993
12160
|
if (!tool2) {
|
|
11994
|
-
|
|
12161
|
+
const availableToolNames = Object.keys(stepTools || {});
|
|
12162
|
+
const availableToolsStr = availableToolNames.length > 0 ? ` Available tools: ${availableToolNames.join(", ")}` : "";
|
|
12163
|
+
return {
|
|
12164
|
+
error: new ToolNotFoundError(
|
|
12165
|
+
`Tool "${inputData.toolName}" not found.${availableToolsStr}. Call tools by their exact name only \u2014 never add prefixes, namespaces, or colons.`
|
|
12166
|
+
),
|
|
12167
|
+
...inputData
|
|
12168
|
+
};
|
|
11995
12169
|
}
|
|
11996
12170
|
if (tool2 && "onInputAvailable" in tool2) {
|
|
11997
12171
|
try {
|
|
@@ -12995,7 +13169,7 @@ var MastraScorer = class _MastraScorer {
|
|
|
12995
13169
|
}
|
|
12996
13170
|
});
|
|
12997
13171
|
}
|
|
12998
|
-
const resolvedModel = await
|
|
13172
|
+
const resolvedModel = await chunkVD5YA6RH_cjs.resolveModelConfig(modelConfig, void 0, this.#mastra);
|
|
12999
13173
|
const judge = new Agent({
|
|
13000
13174
|
id: "judge",
|
|
13001
13175
|
name: "judge",
|
|
@@ -13647,7 +13821,7 @@ var MastraLLMVNext = class extends chunkRO47SMI7_cjs.MastraBase {
|
|
|
13647
13821
|
const remainingTokens = parseInt(props?.response?.headers?.["x-ratelimit-remaining-tokens"] ?? "", 10);
|
|
13648
13822
|
if (!isNaN(remainingTokens) && remainingTokens > 0 && remainingTokens < 2e3) {
|
|
13649
13823
|
this.logger.warn("Rate limit approaching, waiting 10 seconds", { runId });
|
|
13650
|
-
await
|
|
13824
|
+
await chunk65PHUUMF_cjs.delay(10 * 1e3);
|
|
13651
13825
|
}
|
|
13652
13826
|
},
|
|
13653
13827
|
onFinish: async (props) => {
|
|
@@ -13910,7 +14084,7 @@ async function prepareMemoryStep({
|
|
|
13910
14084
|
);
|
|
13911
14085
|
}
|
|
13912
14086
|
} else {
|
|
13913
|
-
const messageList = new
|
|
14087
|
+
const messageList = new chunkCZ4NQANZ_cjs.MessageList({
|
|
13914
14088
|
threadId: thread?.id,
|
|
13915
14089
|
resourceId: thread?.resourceId
|
|
13916
14090
|
});
|
|
@@ -13973,7 +14147,7 @@ async function saveMessagesWithProcessors(memory, messages, processorRunner, con
|
|
|
13973
14147
|
await memory.saveMessages({ messages });
|
|
13974
14148
|
return;
|
|
13975
14149
|
}
|
|
13976
|
-
const messageList = new
|
|
14150
|
+
const messageList = new chunkCZ4NQANZ_cjs.MessageList();
|
|
13977
14151
|
for (const msg of messages) {
|
|
13978
14152
|
messageList.add(msg, "response");
|
|
13979
14153
|
}
|
|
@@ -15431,7 +15605,7 @@ async function networkLoop({
|
|
|
15431
15605
|
"resumeData": "string"
|
|
15432
15606
|
}
|
|
15433
15607
|
`;
|
|
15434
|
-
const messageList = new
|
|
15608
|
+
const messageList = new chunkCZ4NQANZ_cjs.MessageList();
|
|
15435
15609
|
messageList.addSystem(systemInstructions);
|
|
15436
15610
|
messageList.add(task, "user");
|
|
15437
15611
|
const result = llm.stream({
|
|
@@ -15662,37 +15836,39 @@ async function networkLoop({
|
|
|
15662
15836
|
});
|
|
15663
15837
|
}
|
|
15664
15838
|
const feedback = formatCompletionFeedback(completionResult, !!maxIterationReached);
|
|
15665
|
-
|
|
15666
|
-
|
|
15667
|
-
|
|
15668
|
-
|
|
15669
|
-
|
|
15670
|
-
|
|
15671
|
-
|
|
15672
|
-
|
|
15673
|
-
|
|
15674
|
-
|
|
15675
|
-
|
|
15676
|
-
|
|
15677
|
-
|
|
15678
|
-
|
|
15679
|
-
|
|
15680
|
-
|
|
15681
|
-
|
|
15682
|
-
|
|
15683
|
-
|
|
15684
|
-
|
|
15839
|
+
if (!validation?.suppressFeedback) {
|
|
15840
|
+
const memoryInstance = await routingAgent.getMemory({ requestContext });
|
|
15841
|
+
await saveMessagesWithProcessors(
|
|
15842
|
+
memoryInstance,
|
|
15843
|
+
[
|
|
15844
|
+
{
|
|
15845
|
+
id: generateId2(),
|
|
15846
|
+
type: "text",
|
|
15847
|
+
role: "assistant",
|
|
15848
|
+
content: {
|
|
15849
|
+
parts: [
|
|
15850
|
+
{
|
|
15851
|
+
type: "text",
|
|
15852
|
+
text: feedback
|
|
15853
|
+
}
|
|
15854
|
+
],
|
|
15855
|
+
format: 2,
|
|
15856
|
+
metadata: {
|
|
15857
|
+
mode: "network",
|
|
15858
|
+
completionResult: {
|
|
15859
|
+
passed: completionResult.complete
|
|
15860
|
+
}
|
|
15685
15861
|
}
|
|
15686
|
-
}
|
|
15687
|
-
|
|
15688
|
-
|
|
15689
|
-
|
|
15690
|
-
|
|
15691
|
-
|
|
15692
|
-
|
|
15693
|
-
|
|
15694
|
-
|
|
15695
|
-
|
|
15862
|
+
},
|
|
15863
|
+
createdAt: /* @__PURE__ */ new Date(),
|
|
15864
|
+
threadId: inputData.threadId || runIdToUse,
|
|
15865
|
+
resourceId: inputData.threadResourceId || networkName
|
|
15866
|
+
}
|
|
15867
|
+
],
|
|
15868
|
+
processorRunner,
|
|
15869
|
+
{ requestContext }
|
|
15870
|
+
);
|
|
15871
|
+
}
|
|
15696
15872
|
if (isComplete) {
|
|
15697
15873
|
return {
|
|
15698
15874
|
...inputData,
|
|
@@ -16067,7 +16243,7 @@ ${skillInstructions}`;
|
|
|
16067
16243
|
message: `Reference file "${referencePath}" not found in skill "${skillName}". Available references: ${availableRefs.join(", ") || "none"}`
|
|
16068
16244
|
};
|
|
16069
16245
|
}
|
|
16070
|
-
const result =
|
|
16246
|
+
const result = chunk4KFEMXTV_cjs.extractLines(fullContent, startLine, endLine);
|
|
16071
16247
|
return {
|
|
16072
16248
|
success: true,
|
|
16073
16249
|
content: result.content,
|
|
@@ -16113,7 +16289,7 @@ ${skillInstructions}`;
|
|
|
16113
16289
|
message: `Script file "${scriptPath}" not found in skill "${skillName}". Available scripts: ${availableScripts.join(", ") || "none"}`
|
|
16114
16290
|
};
|
|
16115
16291
|
}
|
|
16116
|
-
const result =
|
|
16292
|
+
const result = chunk4KFEMXTV_cjs.extractLines(fullContent, startLine, endLine);
|
|
16117
16293
|
return {
|
|
16118
16294
|
success: true,
|
|
16119
16295
|
content: result.content,
|
|
@@ -16223,9 +16399,9 @@ ${skillInstructions}`;
|
|
|
16223
16399
|
/**
|
|
16224
16400
|
* Process input step - inject available skills and provide skill tools
|
|
16225
16401
|
*/
|
|
16226
|
-
async processInputStep({ messageList, tools, stepNumber }) {
|
|
16402
|
+
async processInputStep({ messageList, tools, stepNumber, requestContext }) {
|
|
16227
16403
|
if (stepNumber === 0) {
|
|
16228
|
-
await this.skills?.maybeRefresh();
|
|
16404
|
+
await this.skills?.maybeRefresh({ requestContext });
|
|
16229
16405
|
}
|
|
16230
16406
|
const skillsList = await this.skills?.list();
|
|
16231
16407
|
const hasSkills = skillsList && skillsList.length > 0;
|
|
@@ -16358,7 +16534,7 @@ var AgentLegacyHandler = class {
|
|
|
16358
16534
|
methodType: methodType === "generate" ? "generateLegacy" : "streamLegacy",
|
|
16359
16535
|
memoryConfig
|
|
16360
16536
|
});
|
|
16361
|
-
let messageList = new
|
|
16537
|
+
let messageList = new chunkCZ4NQANZ_cjs.MessageList({
|
|
16362
16538
|
threadId,
|
|
16363
16539
|
resourceId,
|
|
16364
16540
|
generateMessageId: this.capabilities.mastra?.generateId?.bind(this.capabilities.mastra),
|
|
@@ -16489,7 +16665,7 @@ var AgentLegacyHandler = class {
|
|
|
16489
16665
|
result: resToLog,
|
|
16490
16666
|
threadId
|
|
16491
16667
|
});
|
|
16492
|
-
const messageListResponses = new
|
|
16668
|
+
const messageListResponses = new chunkCZ4NQANZ_cjs.MessageList({
|
|
16493
16669
|
threadId,
|
|
16494
16670
|
resourceId,
|
|
16495
16671
|
generateMessageId: this.capabilities.mastra?.generateId?.bind(this.capabilities.mastra),
|
|
@@ -17527,7 +17703,7 @@ var prepareToolsStepOutputSchema = z10.z.object({
|
|
|
17527
17703
|
var prepareMemoryStepOutputSchema = z10.z.object({
|
|
17528
17704
|
threadExists: z10.z.boolean(),
|
|
17529
17705
|
thread: storageThreadSchema.optional(),
|
|
17530
|
-
messageList: z10.z.instanceof(
|
|
17706
|
+
messageList: z10.z.instanceof(chunkCZ4NQANZ_cjs.MessageList),
|
|
17531
17707
|
/** Shared processor states map that persists across loop iterations for both input and output processors */
|
|
17532
17708
|
processorStates: z10.z.instanceof(Map),
|
|
17533
17709
|
/** Tripwire data when input processor triggered abort */
|
|
@@ -17567,7 +17743,7 @@ function createPrepareMemoryStep({
|
|
|
17567
17743
|
outputSchema: prepareMemoryStepOutputSchema,
|
|
17568
17744
|
execute: async ({ tracingContext }) => {
|
|
17569
17745
|
const thread = threadFromArgs;
|
|
17570
|
-
const messageList = new
|
|
17746
|
+
const messageList = new chunkCZ4NQANZ_cjs.MessageList({
|
|
17571
17747
|
threadId: thread?.id,
|
|
17572
17748
|
resourceId,
|
|
17573
17749
|
generateMessageId: capabilities.generateMessageId,
|
|
@@ -18041,7 +18217,7 @@ var Agent = class extends chunkRO47SMI7_cjs.MastraBase {
|
|
|
18041
18217
|
* Throws an error if validation fails.
|
|
18042
18218
|
*/
|
|
18043
18219
|
async #validateRequestContext(requestContext) {
|
|
18044
|
-
if (this.#requestContextSchema &&
|
|
18220
|
+
if (this.#requestContextSchema && chunk65PHUUMF_cjs.isZodType(this.#requestContextSchema)) {
|
|
18045
18221
|
const contextValues = requestContext?.all ?? {};
|
|
18046
18222
|
const validatedRequestContext = await this.#requestContextSchema.safeParseAsync(contextValues);
|
|
18047
18223
|
if (!validatedRequestContext.success) {
|
|
@@ -18767,7 +18943,7 @@ ${errorMessages}`,
|
|
|
18767
18943
|
*/
|
|
18768
18944
|
listTools({ requestContext = new chunkVDKWYUGC_cjs.RequestContext() } = {}) {
|
|
18769
18945
|
if (typeof this.#tools !== "function") {
|
|
18770
|
-
return
|
|
18946
|
+
return chunk65PHUUMF_cjs.ensureToolProperties(this.#tools);
|
|
18771
18947
|
}
|
|
18772
18948
|
const result = this.#tools({
|
|
18773
18949
|
requestContext,
|
|
@@ -18788,7 +18964,7 @@ ${errorMessages}`,
|
|
|
18788
18964
|
this.logger.error(mastraError.toString());
|
|
18789
18965
|
throw mastraError;
|
|
18790
18966
|
}
|
|
18791
|
-
return
|
|
18967
|
+
return chunk65PHUUMF_cjs.ensureToolProperties(tools);
|
|
18792
18968
|
});
|
|
18793
18969
|
}
|
|
18794
18970
|
/**
|
|
@@ -18820,7 +18996,7 @@ ${errorMessages}`,
|
|
|
18820
18996
|
});
|
|
18821
18997
|
});
|
|
18822
18998
|
} else {
|
|
18823
|
-
llm = new
|
|
18999
|
+
llm = new chunkHYRYTTMT_cjs.MastraLLMV1({
|
|
18824
19000
|
model: resolvedModel,
|
|
18825
19001
|
mastra: this.#mastra,
|
|
18826
19002
|
options: { tracingPolicy: this.#options?.tracingPolicy }
|
|
@@ -18845,7 +19021,7 @@ ${errorMessages}`,
|
|
|
18845
19021
|
*/
|
|
18846
19022
|
async resolveModelConfig(modelConfig, requestContext) {
|
|
18847
19023
|
try {
|
|
18848
|
-
return await
|
|
19024
|
+
return await chunkVD5YA6RH_cjs.resolveModelConfig(modelConfig, requestContext, this.#mastra);
|
|
18849
19025
|
} catch (error) {
|
|
18850
19026
|
const mastraError = new chunk4U7ZLI36_cjs.MastraError({
|
|
18851
19027
|
id: "AGENT_GET_MODEL_MISSING_MODEL_INSTANCE",
|
|
@@ -19056,7 +19232,7 @@ ${errorMessages}`,
|
|
|
19056
19232
|
instructions
|
|
19057
19233
|
}) {
|
|
19058
19234
|
const llm = await this.getLLM({ requestContext, model });
|
|
19059
|
-
const normMessage = new
|
|
19235
|
+
const normMessage = new chunkCZ4NQANZ_cjs.MessageList().add(message, "user").get.all.ui().at(-1);
|
|
19060
19236
|
if (!normMessage) {
|
|
19061
19237
|
throw new Error(`Could not generate title from input ${JSON.stringify(message)}`);
|
|
19062
19238
|
}
|
|
@@ -19079,7 +19255,7 @@ ${errorMessages}`,
|
|
|
19079
19255
|
const systemInstructions = await this.resolveTitleInstructions(requestContext, instructions);
|
|
19080
19256
|
let text = "";
|
|
19081
19257
|
if (isSupportedLanguageModel(llm.getModel())) {
|
|
19082
|
-
const messageList = new
|
|
19258
|
+
const messageList = new chunkCZ4NQANZ_cjs.MessageList().add(
|
|
19083
19259
|
[
|
|
19084
19260
|
{
|
|
19085
19261
|
role: "system",
|
|
@@ -19132,7 +19308,7 @@ ${errorMessages}`,
|
|
|
19132
19308
|
async genTitle(userMessage, requestContext, tracingContext, model, instructions) {
|
|
19133
19309
|
try {
|
|
19134
19310
|
if (userMessage) {
|
|
19135
|
-
const normMessage = new
|
|
19311
|
+
const normMessage = new chunkCZ4NQANZ_cjs.MessageList().add(userMessage, "user").get.all.ui().at(-1);
|
|
19136
19312
|
if (normMessage) {
|
|
19137
19313
|
return await this.generateTitleFromUserMessage({
|
|
19138
19314
|
message: normMessage,
|
|
@@ -19201,7 +19377,7 @@ ${errorMessages}`,
|
|
|
19201
19377
|
tracingPolicy: this.#options?.tracingPolicy,
|
|
19202
19378
|
requireApproval: toolObj.requireApproval
|
|
19203
19379
|
};
|
|
19204
|
-
const convertedToCoreTool =
|
|
19380
|
+
const convertedToCoreTool = chunk65PHUUMF_cjs.makeCoreTool(toolObj, options, void 0, autoResumeSuspendedTools);
|
|
19205
19381
|
convertedMemoryTools[toolName] = convertedToCoreTool;
|
|
19206
19382
|
}
|
|
19207
19383
|
}
|
|
@@ -19229,7 +19405,7 @@ ${errorMessages}`,
|
|
|
19229
19405
|
if (!workspace) {
|
|
19230
19406
|
return convertedWorkspaceTools;
|
|
19231
19407
|
}
|
|
19232
|
-
const workspaceTools =
|
|
19408
|
+
const workspaceTools = chunk4KFEMXTV_cjs.createWorkspaceTools(workspace);
|
|
19233
19409
|
if (Object.keys(workspaceTools).length > 0) {
|
|
19234
19410
|
this.logger.debug(`[Agent:${this.name}] - Adding workspace tools: ${Object.keys(workspaceTools).join(", ")}`, {
|
|
19235
19411
|
runId
|
|
@@ -19250,7 +19426,7 @@ ${errorMessages}`,
|
|
|
19250
19426
|
tracingPolicy: this.#options?.tracingPolicy,
|
|
19251
19427
|
requireApproval: toolObj.requireApproval
|
|
19252
19428
|
};
|
|
19253
|
-
const convertedToCoreTool =
|
|
19429
|
+
const convertedToCoreTool = chunk65PHUUMF_cjs.makeCoreTool(toolObj, options, void 0, autoResumeSuspendedTools);
|
|
19254
19430
|
convertedWorkspaceTools[toolName] = convertedToCoreTool;
|
|
19255
19431
|
}
|
|
19256
19432
|
}
|
|
@@ -19407,7 +19583,7 @@ ${errorMessages}`,
|
|
|
19407
19583
|
tracingPolicy: this.#options?.tracingPolicy,
|
|
19408
19584
|
requireApproval: tool2.requireApproval
|
|
19409
19585
|
};
|
|
19410
|
-
return [k,
|
|
19586
|
+
return [k, chunk65PHUUMF_cjs.makeCoreTool(tool2, options, void 0, autoResumeSuspendedTools)];
|
|
19411
19587
|
})
|
|
19412
19588
|
);
|
|
19413
19589
|
const assignedToolEntriesConverted = Object.fromEntries(
|
|
@@ -19457,7 +19633,7 @@ ${errorMessages}`,
|
|
|
19457
19633
|
tracingPolicy: this.#options?.tracingPolicy,
|
|
19458
19634
|
requireApproval: toolObj.requireApproval
|
|
19459
19635
|
};
|
|
19460
|
-
const convertedToCoreTool =
|
|
19636
|
+
const convertedToCoreTool = chunk65PHUUMF_cjs.makeCoreTool(toolObj, options, "toolset", autoResumeSuspendedTools);
|
|
19461
19637
|
toolsForRequest[toolName] = convertedToCoreTool;
|
|
19462
19638
|
}
|
|
19463
19639
|
}
|
|
@@ -19502,7 +19678,7 @@ ${errorMessages}`,
|
|
|
19502
19678
|
tracingPolicy: this.#options?.tracingPolicy,
|
|
19503
19679
|
requireApproval: tool2.requireApproval
|
|
19504
19680
|
};
|
|
19505
|
-
const convertedToCoreTool =
|
|
19681
|
+
const convertedToCoreTool = chunk65PHUUMF_cjs.makeCoreTool(rest, options, "client-tool", autoResumeSuspendedTools);
|
|
19506
19682
|
toolsForRequest[toolName] = convertedToCoreTool;
|
|
19507
19683
|
}
|
|
19508
19684
|
}
|
|
@@ -19736,7 +19912,7 @@ ${errorMessages}`,
|
|
|
19736
19912
|
tracingContext,
|
|
19737
19913
|
tracingPolicy: this.#options?.tracingPolicy
|
|
19738
19914
|
};
|
|
19739
|
-
convertedAgentTools[`agent-${agentName}`] =
|
|
19915
|
+
convertedAgentTools[`agent-${agentName}`] = chunk65PHUUMF_cjs.makeCoreTool(
|
|
19740
19916
|
toolObj,
|
|
19741
19917
|
options,
|
|
19742
19918
|
void 0,
|
|
@@ -19921,7 +20097,7 @@ ${errorMessages}`,
|
|
|
19921
20097
|
tracingContext,
|
|
19922
20098
|
tracingPolicy: this.#options?.tracingPolicy
|
|
19923
20099
|
};
|
|
19924
|
-
convertedWorkflowTools[`workflow-${workflowName}`] =
|
|
20100
|
+
convertedWorkflowTools[`workflow-${workflowName}`] = chunk65PHUUMF_cjs.makeCoreTool(
|
|
19925
20101
|
toolObj,
|
|
19926
20102
|
options,
|
|
19927
20103
|
void 0,
|
|
@@ -19951,7 +20127,7 @@ ${errorMessages}`,
|
|
|
19951
20127
|
let mastraProxy = void 0;
|
|
19952
20128
|
const logger = this.logger;
|
|
19953
20129
|
if (this.#mastra) {
|
|
19954
|
-
mastraProxy =
|
|
20130
|
+
mastraProxy = chunk65PHUUMF_cjs.createMastraProxy({ mastra: this.#mastra, logger });
|
|
19955
20131
|
}
|
|
19956
20132
|
const assignedTools = await this.listAssignedTools({
|
|
19957
20133
|
runId,
|
|
@@ -20201,7 +20377,7 @@ ${errorMessages}`,
|
|
|
20201
20377
|
throw mastraError;
|
|
20202
20378
|
}
|
|
20203
20379
|
let headers;
|
|
20204
|
-
if (resolvedModel instanceof
|
|
20380
|
+
if (resolvedModel instanceof chunkVD5YA6RH_cjs.ModelRouterLanguageModel) {
|
|
20205
20381
|
headers = resolvedModel.config?.headers;
|
|
20206
20382
|
}
|
|
20207
20383
|
return [
|
|
@@ -20247,7 +20423,7 @@ ${errorMessages}`,
|
|
|
20247
20423
|
throw mastraError;
|
|
20248
20424
|
}
|
|
20249
20425
|
let headers;
|
|
20250
|
-
if (model2 instanceof
|
|
20426
|
+
if (model2 instanceof chunkVD5YA6RH_cjs.ModelRouterLanguageModel) {
|
|
20251
20427
|
headers = model2.config?.headers;
|
|
20252
20428
|
}
|
|
20253
20429
|
return {
|
|
@@ -20305,7 +20481,7 @@ ${errorMessages}`,
|
|
|
20305
20481
|
const targetProvider = structuredOutputModel.provider;
|
|
20306
20482
|
const targetModelId = structuredOutputModel.modelId;
|
|
20307
20483
|
if (targetProvider.includes("openai") || targetModelId.includes("openai")) {
|
|
20308
|
-
if (
|
|
20484
|
+
if (chunk65PHUUMF_cjs.isZodType(options.structuredOutput.schema) && targetModelId) {
|
|
20309
20485
|
const modelInfo = {
|
|
20310
20486
|
provider: targetProvider,
|
|
20311
20487
|
modelId: targetModelId,
|
|
@@ -20712,7 +20888,7 @@ ${errorMessages}`,
|
|
|
20712
20888
|
const defaultOptions = await this.getDefaultOptions({
|
|
20713
20889
|
requestContext: options?.requestContext
|
|
20714
20890
|
});
|
|
20715
|
-
const mergedOptions =
|
|
20891
|
+
const mergedOptions = chunk65PHUUMF_cjs.deepMerge(
|
|
20716
20892
|
defaultOptions,
|
|
20717
20893
|
options ?? {}
|
|
20718
20894
|
);
|
|
@@ -20776,7 +20952,7 @@ ${errorMessages}`,
|
|
|
20776
20952
|
const defaultOptions = await this.getDefaultOptions({
|
|
20777
20953
|
requestContext: streamOptions?.requestContext
|
|
20778
20954
|
});
|
|
20779
|
-
const mergedOptions =
|
|
20955
|
+
const mergedOptions = chunk65PHUUMF_cjs.deepMerge(
|
|
20780
20956
|
defaultOptions,
|
|
20781
20957
|
streamOptions ?? {}
|
|
20782
20958
|
);
|
|
@@ -20834,7 +21010,7 @@ ${errorMessages}`,
|
|
|
20834
21010
|
const defaultOptions = await this.getDefaultOptions({
|
|
20835
21011
|
requestContext: streamOptions?.requestContext
|
|
20836
21012
|
});
|
|
20837
|
-
let mergedStreamOptions =
|
|
21013
|
+
let mergedStreamOptions = chunk65PHUUMF_cjs.deepMerge(
|
|
20838
21014
|
defaultOptions,
|
|
20839
21015
|
streamOptions ?? {}
|
|
20840
21016
|
);
|
|
@@ -20908,7 +21084,7 @@ ${errorMessages}`,
|
|
|
20908
21084
|
const defaultOptions = await this.getDefaultOptions({
|
|
20909
21085
|
requestContext: options?.requestContext
|
|
20910
21086
|
});
|
|
20911
|
-
const mergedOptions =
|
|
21087
|
+
const mergedOptions = chunk65PHUUMF_cjs.deepMerge(
|
|
20912
21088
|
defaultOptions,
|
|
20913
21089
|
options ?? {}
|
|
20914
21090
|
);
|
|
@@ -23113,7 +23289,7 @@ var ToolSearchProcessor = class {
|
|
|
23113
23289
|
minScore: options.search?.minScore ?? 0
|
|
23114
23290
|
};
|
|
23115
23291
|
this.ttl = options.ttl ?? 36e5;
|
|
23116
|
-
this.bm25Index = new
|
|
23292
|
+
this.bm25Index = new chunk4KFEMXTV_cjs.BM25Index({}, TOOL_SEARCH_TOKENIZE_OPTIONS);
|
|
23117
23293
|
this.indexTools();
|
|
23118
23294
|
if (this.ttl > 0) {
|
|
23119
23295
|
this.scheduleCleanup();
|
|
@@ -23860,7 +24036,7 @@ var SemanticRecall = class {
|
|
|
23860
24036
|
*/
|
|
23861
24037
|
formatCrossThreadMessages(messages, currentThreadId) {
|
|
23862
24038
|
let result = ``;
|
|
23863
|
-
const v1Messages = new
|
|
24039
|
+
const v1Messages = new chunkCZ4NQANZ_cjs.MessageList().add(messages, "memory").get.all.v1();
|
|
23864
24040
|
let lastYmd = null;
|
|
23865
24041
|
for (const msg of v1Messages) {
|
|
23866
24042
|
const date = msg.createdAt;
|
|
@@ -24198,6 +24374,14 @@ function augmentWithInit(storage) {
|
|
|
24198
24374
|
}
|
|
24199
24375
|
|
|
24200
24376
|
// src/memory/memory.ts
|
|
24377
|
+
function extractModelIdString(model) {
|
|
24378
|
+
if (typeof model === "string") return model;
|
|
24379
|
+
if (typeof model === "function") return void 0;
|
|
24380
|
+
if (model && typeof model === "object" && "id" in model && typeof model.id === "string") {
|
|
24381
|
+
return model.id;
|
|
24382
|
+
}
|
|
24383
|
+
return void 0;
|
|
24384
|
+
}
|
|
24201
24385
|
var MemoryProcessor = class extends chunkRO47SMI7_cjs.MastraBase {
|
|
24202
24386
|
/**
|
|
24203
24387
|
* Process a list of messages and return a filtered or transformed list.
|
|
@@ -24294,7 +24478,7 @@ https://mastra.ai/en/docs/memory/semantic-recall`
|
|
|
24294
24478
|
);
|
|
24295
24479
|
}
|
|
24296
24480
|
if (typeof config.embedder === "string") {
|
|
24297
|
-
this.embedder = new
|
|
24481
|
+
this.embedder = new chunkVD5YA6RH_cjs.ModelRouterEmbeddingModel(config.embedder);
|
|
24298
24482
|
} else {
|
|
24299
24483
|
this.embedder = config.embedder;
|
|
24300
24484
|
}
|
|
@@ -24333,7 +24517,7 @@ https://mastra.ai/en/docs/memory/overview`
|
|
|
24333
24517
|
}
|
|
24334
24518
|
setEmbedder(embedder, embedderOptions) {
|
|
24335
24519
|
if (typeof embedder === "string") {
|
|
24336
|
-
this.embedder = new
|
|
24520
|
+
this.embedder = new chunkVD5YA6RH_cjs.ModelRouterEmbeddingModel(embedder);
|
|
24337
24521
|
} else {
|
|
24338
24522
|
this.embedder = embedder;
|
|
24339
24523
|
}
|
|
@@ -24400,7 +24584,7 @@ https://mastra.ai/en/docs/memory/overview`
|
|
|
24400
24584
|
"The threads.generateTitle option has been moved. Use the top-level generateTitle option instead."
|
|
24401
24585
|
);
|
|
24402
24586
|
}
|
|
24403
|
-
const mergedConfig =
|
|
24587
|
+
const mergedConfig = chunk65PHUUMF_cjs.deepMerge(this.threadConfig, config || {});
|
|
24404
24588
|
if (typeof config?.workingMemory === "object" && config.workingMemory?.schema && typeof mergedConfig.workingMemory === "object") {
|
|
24405
24589
|
mergedConfig.workingMemory.schema = config.workingMemory.schema;
|
|
24406
24590
|
}
|
|
@@ -24644,7 +24828,7 @@ https://mastra.ai/en/docs/memory/overview`
|
|
|
24644
24828
|
* @returns Serializable memory configuration
|
|
24645
24829
|
*/
|
|
24646
24830
|
getConfig() {
|
|
24647
|
-
const { generateTitle, workingMemory, threads, ...restConfig } = this.threadConfig;
|
|
24831
|
+
const { generateTitle, workingMemory, threads, observationalMemory, ...restConfig } = this.threadConfig;
|
|
24648
24832
|
const config = {
|
|
24649
24833
|
vector: this.vector?.id,
|
|
24650
24834
|
options: {
|
|
@@ -24681,8 +24865,62 @@ https://mastra.ai/en/docs/memory/overview`
|
|
|
24681
24865
|
const { telemetry, ...rest } = this.embedderOptions;
|
|
24682
24866
|
config.embedderOptions = rest;
|
|
24683
24867
|
}
|
|
24868
|
+
if (observationalMemory !== void 0) {
|
|
24869
|
+
config.observationalMemory = this.serializeObservationalMemory(observationalMemory);
|
|
24870
|
+
}
|
|
24684
24871
|
return config;
|
|
24685
24872
|
}
|
|
24873
|
+
/**
|
|
24874
|
+
* Serialize observational memory config to a JSON-safe representation.
|
|
24875
|
+
* Model references that aren't string IDs are dropped (non-serializable).
|
|
24876
|
+
*/
|
|
24877
|
+
serializeObservationalMemory(om) {
|
|
24878
|
+
if (typeof om === "boolean") {
|
|
24879
|
+
return om;
|
|
24880
|
+
}
|
|
24881
|
+
if (om.enabled === false) {
|
|
24882
|
+
return false;
|
|
24883
|
+
}
|
|
24884
|
+
const result = {
|
|
24885
|
+
scope: om.scope,
|
|
24886
|
+
shareTokenBudget: om.shareTokenBudget
|
|
24887
|
+
};
|
|
24888
|
+
const topModelId = extractModelIdString(om.model);
|
|
24889
|
+
if (topModelId) {
|
|
24890
|
+
result.model = topModelId;
|
|
24891
|
+
}
|
|
24892
|
+
if (om.observation) {
|
|
24893
|
+
const obs = om.observation;
|
|
24894
|
+
result.observation = {
|
|
24895
|
+
messageTokens: obs.messageTokens,
|
|
24896
|
+
modelSettings: obs.modelSettings,
|
|
24897
|
+
providerOptions: obs.providerOptions,
|
|
24898
|
+
maxTokensPerBatch: obs.maxTokensPerBatch,
|
|
24899
|
+
bufferTokens: obs.bufferTokens,
|
|
24900
|
+
bufferActivation: obs.bufferActivation,
|
|
24901
|
+
blockAfter: obs.blockAfter
|
|
24902
|
+
};
|
|
24903
|
+
const obsModelId = extractModelIdString(obs.model);
|
|
24904
|
+
if (obsModelId) {
|
|
24905
|
+
result.observation.model = obsModelId;
|
|
24906
|
+
}
|
|
24907
|
+
}
|
|
24908
|
+
if (om.reflection) {
|
|
24909
|
+
const ref = om.reflection;
|
|
24910
|
+
result.reflection = {
|
|
24911
|
+
observationTokens: ref.observationTokens,
|
|
24912
|
+
modelSettings: ref.modelSettings,
|
|
24913
|
+
providerOptions: ref.providerOptions,
|
|
24914
|
+
blockAfter: ref.blockAfter,
|
|
24915
|
+
bufferActivation: ref.bufferActivation
|
|
24916
|
+
};
|
|
24917
|
+
const refModelId = extractModelIdString(ref.model);
|
|
24918
|
+
if (refModelId) {
|
|
24919
|
+
result.reflection.model = refModelId;
|
|
24920
|
+
}
|
|
24921
|
+
}
|
|
24922
|
+
return result;
|
|
24923
|
+
}
|
|
24686
24924
|
};
|
|
24687
24925
|
var isZodObject = (v) => v instanceof z10.ZodObject;
|
|
24688
24926
|
var MockMemory = class extends MastraMemory {
|
|
@@ -24694,7 +24932,7 @@ var MockMemory = class extends MastraMemory {
|
|
|
24694
24932
|
} = {}) {
|
|
24695
24933
|
super({
|
|
24696
24934
|
name: "mock",
|
|
24697
|
-
storage: storage || new
|
|
24935
|
+
storage: storage || new chunkBP7VYTOP_cjs.InMemoryStore(),
|
|
24698
24936
|
options: {
|
|
24699
24937
|
workingMemory: enableWorkingMemory ? { enabled: true, template: workingMemoryTemplate } : void 0,
|
|
24700
24938
|
lastMessages: enableMessageHistory ? 10 : void 0
|
|
@@ -25002,5 +25240,5 @@ exports.validateStepRequestContext = validateStepRequestContext;
|
|
|
25002
25240
|
exports.validateStepResumeData = validateStepResumeData;
|
|
25003
25241
|
exports.validateStepStateData = validateStepStateData;
|
|
25004
25242
|
exports.validateStepSuspendData = validateStepSuspendData;
|
|
25005
|
-
//# sourceMappingURL=chunk-
|
|
25006
|
-
//# sourceMappingURL=chunk-
|
|
25243
|
+
//# sourceMappingURL=chunk-UQ4SRS66.cjs.map
|
|
25244
|
+
//# sourceMappingURL=chunk-UQ4SRS66.cjs.map
|