@mastra/server 1.67.0-alpha.3 → 1.67.0-alpha.6
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/dist/_types/@mastra_schema-compat/dist/schema.types.d.ts +20 -1
- package/dist/a2a-DQ8GeDz4.cjs.map +1 -1
- package/dist/a2a-DUBjstWk.js.map +1 -1
- package/dist/{agent-builder-DUM8fGTt.js → agent-builder-k5ALpndR.js} +2 -2
- package/dist/{agent-builder-DUM8fGTt.js.map → agent-builder-k5ALpndR.js.map} +1 -1
- package/dist/{agent-builder-B2GCn_tS.cjs → agent-builder-k72O4OB9.cjs} +2 -2
- package/dist/{agent-builder-B2GCn_tS.cjs.map → agent-builder-k72O4OB9.cjs.map} +1 -1
- package/dist/{agent-versions-MYjO6Wl1.cjs → agent-versions-D99q4Gos.cjs} +3 -3
- package/dist/{agent-versions-MYjO6Wl1.cjs.map → agent-versions-D99q4Gos.cjs.map} +1 -1
- package/dist/{agent-versions-mFXaw5ma.js → agent-versions-NGajm4l5.js} +3 -3
- package/dist/{agent-versions-mFXaw5ma.js.map → agent-versions-NGajm4l5.js.map} +1 -1
- package/dist/{agents-C3k-sZBO.cjs → agents-CZE_MSQE.cjs} +2 -2
- package/dist/{agents-C3k-sZBO.cjs.map → agents-CZE_MSQE.cjs.map} +1 -1
- package/dist/{agents-AMeMJBI1.js → agents-ssoMemNs.js} +2 -2
- package/dist/{agents-AMeMJBI1.js.map → agents-ssoMemNs.js.map} +1 -1
- package/dist/{api-schema-manifest-DNk8B4kw.js → api-schema-manifest-CeREx1dB.js} +2 -2
- package/dist/{api-schema-manifest-DNk8B4kw.js.map → api-schema-manifest-CeREx1dB.js.map} +1 -1
- package/dist/{api-schema-manifest-1LriOYQM.cjs → api-schema-manifest-DzWP4nLu.cjs} +2 -2
- package/dist/{api-schema-manifest-1LriOYQM.cjs.map → api-schema-manifest-DzWP4nLu.cjs.map} +1 -1
- package/dist/{background-tasks-BarPeyNJ.cjs → background-tasks-CFJ0vNgp.cjs} +4 -3
- package/dist/background-tasks-CFJ0vNgp.cjs.map +1 -0
- package/dist/{background-tasks-B4yoNDY_.js → background-tasks-kXPoCvgG.js} +4 -3
- package/dist/background-tasks-kXPoCvgG.js.map +1 -0
- package/dist/{common-DQn8jX5T.cjs → common-BPjna_b6.cjs} +7 -1
- package/dist/common-BPjna_b6.cjs.map +1 -0
- package/dist/{common-5ZZuR6wj.js → common-C7NBaaQu.js} +2 -2
- package/dist/common-C7NBaaQu.js.map +1 -0
- package/dist/{conversations-o3AEJjRo.cjs → conversations-DstENx2x.cjs} +2 -2
- package/dist/{conversations-o3AEJjRo.cjs.map → conversations-DstENx2x.cjs.map} +1 -1
- package/dist/{conversations-Bs-k9f9N.js → conversations-b3vJRHF3.js} +2 -2
- package/dist/{conversations-Bs-k9f9N.js.map → conversations-b3vJRHF3.js.map} +1 -1
- package/dist/{datasets-B4qPHzEy.js → datasets-CCC2huR0.js} +23 -11
- package/dist/datasets-CCC2huR0.js.map +1 -0
- package/dist/{datasets-C-_ZWnxR.cjs → datasets-zlaJQ9D0.cjs} +28 -10
- package/dist/datasets-zlaJQ9D0.cjs.map +1 -0
- package/dist/{dist-Du9y2ur5.cjs → dist-BKxbtiJd.cjs} +112 -37
- package/dist/dist-BKxbtiJd.cjs.map +1 -0
- package/dist/{dist-Bw-Zrv4_.js → dist-DOpm-tIl.js} +112 -37
- package/dist/{dist-Bw-Zrv4_.js.map → dist-DOpm-tIl.js.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/{editor-builder-WLxTW05v.cjs → editor-builder-BHf-g7q9.cjs} +2 -2
- package/dist/{editor-builder-WLxTW05v.cjs.map → editor-builder-BHf-g7q9.cjs.map} +1 -1
- package/dist/{editor-builder-QRcP8-SQ.js → editor-builder-BI5yHrbT.js} +2 -2
- package/dist/{editor-builder-QRcP8-SQ.js.map → editor-builder-BI5yHrbT.js.map} +1 -1
- package/dist/{editor-builder-DFh_-7Id.cjs → editor-builder-CKAeON9r.cjs} +2 -2
- package/dist/{editor-builder-DFh_-7Id.cjs.map → editor-builder-CKAeON9r.cjs.map} +1 -1
- package/dist/{editor-builder-BmEpZsqX.js → editor-builder-D6P_hq7c.js} +2 -2
- package/dist/{editor-builder-BmEpZsqX.js.map → editor-builder-D6P_hq7c.js.map} +1 -1
- package/dist/{logs-Cz5NiwGP.js → logs-Cbz2Nxm2.js} +2 -2
- package/dist/{logs-Cz5NiwGP.js.map → logs-Cbz2Nxm2.js.map} +1 -1
- package/dist/{logs-BDuGFqxu.cjs → logs-LBot9fsG.cjs} +2 -2
- package/dist/{logs-BDuGFqxu.cjs.map → logs-LBot9fsG.cjs.map} +1 -1
- package/dist/{mcp-Buvksst5.cjs → mcp-BPmrXX9r.cjs} +2 -2
- package/dist/{mcp-Buvksst5.cjs.map → mcp-BPmrXX9r.cjs.map} +1 -1
- package/dist/{mcp-oOFVSK8L.js → mcp-B_OMG3Ol.js} +2 -2
- package/dist/{mcp-oOFVSK8L.js.map → mcp-B_OMG3Ol.js.map} +1 -1
- package/dist/{mcp-client-versions-CG7po4hq.cjs → mcp-client-versions-DoGlpOEW.cjs} +2 -2
- package/dist/{mcp-client-versions-CG7po4hq.cjs.map → mcp-client-versions-DoGlpOEW.cjs.map} +1 -1
- package/dist/{mcp-client-versions-Co8d39A6.js → mcp-client-versions-Dpk4z-zx.js} +2 -2
- package/dist/{mcp-client-versions-Co8d39A6.js.map → mcp-client-versions-Dpk4z-zx.js.map} +1 -1
- package/dist/{memory-Cp3Yo-OX.js → memory-BvKPIpyH.js} +2 -2
- package/dist/{memory-Cp3Yo-OX.js.map → memory-BvKPIpyH.js.map} +1 -1
- package/dist/{memory-CE6rUGmo.cjs → memory-CDYtqQnE.cjs} +2 -2
- package/dist/{memory-CE6rUGmo.cjs.map → memory-CDYtqQnE.cjs.map} +1 -1
- package/dist/{prompt-block-versions-Cgt_Grk2.cjs → prompt-block-versions-ChvK-DMW.cjs} +2 -2
- package/dist/{prompt-block-versions-Cgt_Grk2.cjs.map → prompt-block-versions-ChvK-DMW.cjs.map} +1 -1
- package/dist/{prompt-block-versions-CBjHhMVK.js → prompt-block-versions-DU0xf_a5.js} +2 -2
- package/dist/{prompt-block-versions-CBjHhMVK.js.map → prompt-block-versions-DU0xf_a5.js.map} +1 -1
- package/dist/{routes-DXUcYEc6.js → routes-BJZtqLVx.js} +6 -3
- package/dist/routes-BJZtqLVx.js.map +1 -0
- package/dist/{routes-9i4gAixo.cjs → routes-PJ3eKHbs.cjs} +6 -3
- package/dist/routes-PJ3eKHbs.cjs.map +1 -0
- package/dist/{scorer-versions-mL--H4LL.cjs → scorer-versions-B6U7batJ.cjs} +3 -3
- package/dist/{scorer-versions-mL--H4LL.cjs.map → scorer-versions-B6U7batJ.cjs.map} +1 -1
- package/dist/{scorer-versions-D0_KP67E.js → scorer-versions-Dh2iaz4Y.js} +3 -3
- package/dist/{scorer-versions-D0_KP67E.js.map → scorer-versions-Dh2iaz4Y.js.map} +1 -1
- package/dist/{scores-C_Au9jSw.cjs → scores-5aHyxHos.cjs} +5 -13
- package/dist/scores-5aHyxHos.cjs.map +1 -0
- package/dist/{scores-B1IdMcDj.js → scores-BjcbsulG.js} +5 -13
- package/dist/scores-BjcbsulG.js.map +1 -0
- package/dist/server/handlers/agent-builder.cjs +5 -5
- package/dist/server/handlers/agent-builder.js +5 -5
- package/dist/server/handlers/agent-controller.cjs +2 -2
- package/dist/server/handlers/agent-controller.js +2 -2
- package/dist/server/handlers/agent-versions.cjs +2 -2
- package/dist/server/handlers/agent-versions.js +2 -2
- package/dist/server/handlers/agents.cjs +11 -18
- package/dist/server/handlers/agents.cjs.map +1 -1
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +4 -11
- package/dist/server/handlers/agents.js.map +1 -1
- package/dist/server/handlers/background-tasks.cjs +1 -1
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/conversations.cjs +2 -2
- package/dist/server/handlers/conversations.js +2 -2
- package/dist/server/handlers/datasets.cjs +18 -9
- package/dist/server/handlers/datasets.cjs.map +1 -1
- package/dist/server/handlers/datasets.d.ts +186 -44
- package/dist/server/handlers/datasets.d.ts.map +1 -1
- package/dist/server/handlers/datasets.js +18 -9
- package/dist/server/handlers/datasets.js.map +1 -1
- package/dist/server/handlers/editor-builder.cjs +1 -1
- package/dist/server/handlers/editor-builder.js +1 -1
- package/dist/server/handlers/favorites-enrichment.cjs +1 -1
- package/dist/server/handlers/favorites-enrichment.js +1 -1
- package/dist/server/handlers/logs.cjs +3 -3
- package/dist/server/handlers/logs.js +3 -3
- package/dist/server/handlers/mcp-client-versions.cjs +1 -1
- package/dist/server/handlers/mcp-client-versions.js +1 -1
- package/dist/server/handlers/mcp.cjs +1 -1
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +2 -2
- package/dist/server/handlers/memory.js +2 -2
- package/dist/server/handlers/plans.cjs +2 -2
- package/dist/server/handlers/plans.js +2 -2
- package/dist/server/handlers/prompt-block-versions.cjs +1 -1
- package/dist/server/handlers/prompt-block-versions.js +1 -1
- package/dist/server/handlers/responses.cjs +1 -1
- package/dist/server/handlers/responses.d.ts +11 -11
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/responses.storage.cjs +1 -1
- package/dist/server/handlers/responses.storage.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +1 -1
- package/dist/server/handlers/scorer-versions.js +1 -1
- package/dist/server/handlers/scores.cjs +2 -2
- package/dist/server/handlers/scores.d.ts +43 -21
- package/dist/server/handlers/scores.d.ts.map +1 -1
- package/dist/server/handlers/scores.js +2 -2
- package/dist/server/handlers/stored-agent-favorites.cjs +2 -2
- package/dist/server/handlers/stored-agent-favorites.js +2 -2
- package/dist/server/handlers/stored-agents.cjs +3 -3
- package/dist/server/handlers/stored-agents.js +3 -3
- package/dist/server/handlers/stored-mcp-clients.cjs +2 -2
- package/dist/server/handlers/stored-mcp-clients.js +2 -2
- package/dist/server/handlers/stored-prompt-blocks.cjs +2 -2
- package/dist/server/handlers/stored-prompt-blocks.js +2 -2
- package/dist/server/handlers/stored-scorers.cjs +2 -2
- package/dist/server/handlers/stored-scorers.js +2 -2
- package/dist/server/handlers/stored-skill-favorites.cjs +2 -2
- package/dist/server/handlers/stored-skill-favorites.js +2 -2
- package/dist/server/handlers/stored-skills.cjs +2 -2
- package/dist/server/handlers/stored-skills.js +2 -2
- package/dist/server/handlers/stored-workspaces.cjs +1 -1
- package/dist/server/handlers/stored-workspaces.js +1 -1
- package/dist/server/handlers/system.cjs +1 -1
- package/dist/server/handlers/system.js +1 -1
- package/dist/server/handlers/tools.cjs +3 -3
- package/dist/server/handlers/tools.js +3 -3
- package/dist/server/handlers/utils.cjs +2 -1
- package/dist/server/handlers/utils.d.ts +6 -0
- package/dist/server/handlers/utils.d.ts.map +1 -1
- package/dist/server/handlers/utils.js +2 -2
- package/dist/server/handlers/vector.cjs +1 -1
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/workflow-builder.cjs +5 -0
- package/dist/server/handlers/workflow-builder.d.ts +322 -0
- package/dist/server/handlers/workflow-builder.d.ts.map +1 -0
- package/dist/server/handlers/workflow-builder.js +2 -0
- package/dist/server/handlers/workflows.cjs +4 -4
- package/dist/server/handlers/workflows.js +4 -4
- package/dist/server/schemas/background-tasks.d.ts.map +1 -1
- package/dist/server/schemas/common.d.ts +11 -0
- package/dist/server/schemas/common.d.ts.map +1 -1
- package/dist/server/schemas/datasets.d.ts +54 -0
- package/dist/server/schemas/datasets.d.ts.map +1 -1
- package/dist/server/schemas/index.cjs +25 -23
- package/dist/server/schemas/index.js +24 -24
- package/dist/server/schemas/scores.d.ts +11 -0
- package/dist/server/schemas/scores.d.ts.map +1 -1
- package/dist/server/schemas/workflow-builder.d.ts +26 -0
- package/dist/server/schemas/workflow-builder.d.ts.map +1 -0
- package/dist/server/server-adapter/index.cjs +11 -1
- package/dist/server/server-adapter/index.cjs.map +1 -1
- package/dist/server/server-adapter/index.d.ts.map +1 -1
- package/dist/server/server-adapter/index.js +11 -1
- package/dist/server/server-adapter/index.js.map +1 -1
- package/dist/server/server-adapter/routes/conversations.d.ts +3 -3
- package/dist/server/server-adapter/routes/datasets.d.ts +186 -44
- package/dist/server/server-adapter/routes/datasets.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/editor-builder.d.ts +319 -0
- package/dist/server/server-adapter/routes/editor-builder.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/scorers.d.ts +43 -21
- package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/workspace.d.ts +23 -23
- package/dist/{stored-agents-DMW5wrF7.js → stored-agents-AC0najKd.js} +3 -3
- package/dist/{stored-agents-DMW5wrF7.js.map → stored-agents-AC0najKd.js.map} +1 -1
- package/dist/{stored-agents-D6JEb3zN.cjs → stored-agents-BJMM5f9A.cjs} +3 -3
- package/dist/{stored-agents-D6JEb3zN.cjs.map → stored-agents-BJMM5f9A.cjs.map} +1 -1
- package/dist/{stored-mcp-clients-CoCfZRhw.js → stored-mcp-clients-BEcB720j.js} +2 -2
- package/dist/{stored-mcp-clients-CoCfZRhw.js.map → stored-mcp-clients-BEcB720j.js.map} +1 -1
- package/dist/{stored-mcp-clients-CJJPe_09.cjs → stored-mcp-clients-Bh7nQkqD.cjs} +2 -2
- package/dist/{stored-mcp-clients-CJJPe_09.cjs.map → stored-mcp-clients-Bh7nQkqD.cjs.map} +1 -1
- package/dist/{stored-prompt-blocks-DcmkZaCm.js → stored-prompt-blocks-CRGk4tz5.js} +2 -2
- package/dist/{stored-prompt-blocks-DcmkZaCm.js.map → stored-prompt-blocks-CRGk4tz5.js.map} +1 -1
- package/dist/{stored-prompt-blocks-XI4frgZv.cjs → stored-prompt-blocks-CyL4SKVR.cjs} +2 -2
- package/dist/{stored-prompt-blocks-XI4frgZv.cjs.map → stored-prompt-blocks-CyL4SKVR.cjs.map} +1 -1
- package/dist/{stored-scorers-BA4suzgn.js → stored-scorers-B8QVQCCs.js} +3 -3
- package/dist/{stored-scorers-BA4suzgn.js.map → stored-scorers-B8QVQCCs.js.map} +1 -1
- package/dist/{stored-scorers-D8IwVM0S.cjs → stored-scorers-CWxW1_mY.cjs} +3 -3
- package/dist/{stored-scorers-D8IwVM0S.cjs.map → stored-scorers-CWxW1_mY.cjs.map} +1 -1
- package/dist/{stored-skills-BqNK0ssS.cjs → stored-skills-CkA2oWJJ.cjs} +2 -2
- package/dist/{stored-skills-BqNK0ssS.cjs.map → stored-skills-CkA2oWJJ.cjs.map} +1 -1
- package/dist/{stored-skills-JTWbMybs.js → stored-skills-DlNmwsTl.js} +2 -2
- package/dist/{stored-skills-JTWbMybs.js.map → stored-skills-DlNmwsTl.js.map} +1 -1
- package/dist/{stored-workspaces-6PYE4Y3m.js → stored-workspaces-B0p0wPGV.js} +2 -2
- package/dist/{stored-workspaces-6PYE4Y3m.js.map → stored-workspaces-B0p0wPGV.js.map} +1 -1
- package/dist/{stored-workspaces-Dl8B20LD.cjs → stored-workspaces-epewrppK.cjs} +2 -2
- package/dist/{stored-workspaces-Dl8B20LD.cjs.map → stored-workspaces-epewrppK.cjs.map} +1 -1
- package/dist/{utils-CMWGBd0O.js → utils-KsERfbhc.js} +15 -3
- package/dist/utils-KsERfbhc.js.map +1 -0
- package/dist/{utils-BtkczLrA.cjs → utils-aIu3gkhJ.cjs} +19 -1
- package/dist/utils-aIu3gkhJ.cjs.map +1 -0
- package/dist/{vectors-D6uZn2f1.cjs → vectors-DlW_SU5m.cjs} +2 -2
- package/dist/{vectors-D6uZn2f1.cjs.map → vectors-DlW_SU5m.cjs.map} +1 -1
- package/dist/{vectors-Ck7Qu6yz.js → vectors-DqRRlfF0.js} +2 -2
- package/dist/{vectors-Ck7Qu6yz.js.map → vectors-DqRRlfF0.js.map} +1 -1
- package/dist/{version-common-AtNRQ5xH.cjs → version-common-CxQdBbPm.cjs} +2 -2
- package/dist/{version-common-AtNRQ5xH.cjs.map → version-common-CxQdBbPm.cjs.map} +1 -1
- package/dist/{version-common-CudZ_WuW.js → version-common-cEBltPQN.js} +2 -2
- package/dist/{version-common-CudZ_WuW.js.map → version-common-cEBltPQN.js.map} +1 -1
- package/dist/workflow-builder-D5dPsrog.cjs +115 -0
- package/dist/workflow-builder-D5dPsrog.cjs.map +1 -0
- package/dist/workflow-builder-Eape8SyU.js +102 -0
- package/dist/workflow-builder-Eape8SyU.js.map +1 -0
- package/dist/{workflows-BNnfyZhn.cjs → workflows-CvYeyvIc.cjs} +2 -2
- package/dist/{workflows-BNnfyZhn.cjs.map → workflows-CvYeyvIc.cjs.map} +1 -1
- package/dist/{workflows-CUgR3bTL.js → workflows-Z8FHqT4y.js} +2 -2
- package/dist/{workflows-CUgR3bTL.js.map → workflows-Z8FHqT4y.js.map} +1 -1
- package/package.json +7 -7
- package/dist/background-tasks-B4yoNDY_.js.map +0 -1
- package/dist/background-tasks-BarPeyNJ.cjs.map +0 -1
- package/dist/common-5ZZuR6wj.js.map +0 -1
- package/dist/common-DQn8jX5T.cjs.map +0 -1
- package/dist/datasets-B4qPHzEy.js.map +0 -1
- package/dist/datasets-C-_ZWnxR.cjs.map +0 -1
- package/dist/dist-Du9y2ur5.cjs.map +0 -1
- package/dist/routes-9i4gAixo.cjs.map +0 -1
- package/dist/routes-DXUcYEc6.js.map +0 -1
- package/dist/scores-B1IdMcDj.js.map +0 -1
- package/dist/scores-C_Au9jSw.cjs.map +0 -1
- package/dist/utils-BtkczLrA.cjs.map +0 -1
- package/dist/utils-CMWGBd0O.js.map +0 -1
|
@@ -4693,7 +4693,7 @@ function splitLines(text) {
|
|
|
4693
4693
|
return result;
|
|
4694
4694
|
}
|
|
4695
4695
|
//#endregion
|
|
4696
|
-
//#region ../memory/dist/src-
|
|
4696
|
+
//#region ../memory/dist/src-Dt8oPiQN.js
|
|
4697
4697
|
var __defProp$3 = Object.defineProperty;
|
|
4698
4698
|
var __exportAll = (all, no_symbols) => {
|
|
4699
4699
|
let target = {};
|
|
@@ -24360,19 +24360,28 @@ const PHASE_CONFIG = {
|
|
|
24360
24360
|
};
|
|
24361
24361
|
async function withOmTracingSpan({ phase, model, inputTokens, requestContext, observabilityContext, metadata, callback }) {
|
|
24362
24362
|
const config = PHASE_CONFIG[phase];
|
|
24363
|
+
const tracingContext = observabilityContext?.tracingContext ?? observabilityContext?.tracing;
|
|
24364
|
+
const callerMetadata = tracingContext?.currentSpan?.metadata;
|
|
24365
|
+
const inheritedCallerThreadId = callerMetadata?.__mastraObservationalMemoryCallerThreadId;
|
|
24366
|
+
const callerThreadId = callerMetadata?.threadId;
|
|
24367
|
+
const requestThreadId = requestContext?.get(MASTRA_THREAD_ID_KEY);
|
|
24368
|
+
const omCallerThreadId = typeof inheritedCallerThreadId === "string" && inheritedCallerThreadId ? inheritedCallerThreadId : typeof callerThreadId === "string" && callerThreadId ? callerThreadId : typeof requestThreadId === "string" && requestThreadId ? requestThreadId : void 0;
|
|
24363
24369
|
const span = getOrCreateSpan({
|
|
24364
24370
|
type: SpanType.MEMORY_OPERATION,
|
|
24365
24371
|
name: config.name,
|
|
24366
24372
|
entityType: EntityType.MEMORY,
|
|
24367
24373
|
entityName: config.entityName,
|
|
24368
|
-
tracingContext
|
|
24374
|
+
tracingContext,
|
|
24369
24375
|
attributes: {
|
|
24370
24376
|
operationType: config.operationType,
|
|
24371
24377
|
inputTokens,
|
|
24372
24378
|
selectedModel: typeof model === "string" ? model : "(dynamic-model)",
|
|
24373
24379
|
...config.multiThread ? { multiThread: true } : {}
|
|
24374
24380
|
},
|
|
24375
|
-
metadata
|
|
24381
|
+
metadata: omCallerThreadId !== void 0 ? {
|
|
24382
|
+
...metadata,
|
|
24383
|
+
__mastraObservationalMemoryCallerThreadId: omCallerThreadId
|
|
24384
|
+
} : metadata,
|
|
24376
24385
|
requestContext
|
|
24377
24386
|
});
|
|
24378
24387
|
const childObservabilityContext = createObservabilityContext({ currentSpan: span });
|
|
@@ -29772,9 +29781,58 @@ async function loadMemoryContextMessages({ memory, messageList, threadId, resour
|
|
|
29772
29781
|
resourceId,
|
|
29773
29782
|
runState
|
|
29774
29783
|
});
|
|
29775
|
-
|
|
29784
|
+
const existingIds = new Set(messageList.get.all.db().map((message) => message.id));
|
|
29785
|
+
for (const msg of ctx.messages) if (msg.role !== "system" && !existingIds.has(msg.id)) messageList.add(msg, "memory");
|
|
29776
29786
|
return ctx;
|
|
29777
29787
|
}
|
|
29788
|
+
function hasPendingToolCall(message) {
|
|
29789
|
+
return message.content.parts?.some((part) => part.type === "tool-invocation" && part.toolInvocation.state === "call") ?? false;
|
|
29790
|
+
}
|
|
29791
|
+
/**
|
|
29792
|
+
* Selects the unobserved messages that are safe to buffer while a tool call
|
|
29793
|
+
* may still be in flight.
|
|
29794
|
+
*
|
|
29795
|
+
* Only the chronologically last candidate can hold a live pending call: a
|
|
29796
|
+
* `tool-invocation` still in state `call` (client- or provider-executed) on the
|
|
29797
|
+
* newest message means the request ended waiting for its result. Any earlier
|
|
29798
|
+
* `call` is an orphan — the conversation already continued past it, and core's
|
|
29799
|
+
* output converter drops or placeholder-pairs it before the prompt reaches a
|
|
29800
|
+
* provider — so it is buffered like any other message.
|
|
29801
|
+
*
|
|
29802
|
+
* When the last candidate is pending, the prefix before it is buffered, but only
|
|
29803
|
+
* when the cut is clean. The cut is unsafe — and the whole attempt is deferred —
|
|
29804
|
+
* when:
|
|
29805
|
+
*
|
|
29806
|
+
* - Cursor collision: buffering advances the persisted cursor to
|
|
29807
|
+
* `max(buffered.createdAt) + 1ms`, and later candidate selection requires
|
|
29808
|
+
* `createdAt > cursor`. If the retained message sits at the same or +1ms
|
|
29809
|
+
* timestamp, the cursor would permanently hide it even after its result
|
|
29810
|
+
* arrives.
|
|
29811
|
+
* - Split tool exchange: a `toolCallId` appears on both sides of the cut, so
|
|
29812
|
+
* the observer would see half of a tool exchange.
|
|
29813
|
+
* - Ambiguous tail: several candidates share the newest timestamp and one of
|
|
29814
|
+
* them holds a pending call. `createdAt` alone cannot say which is really
|
|
29815
|
+
* last, so the pending call is treated as the tail and the attempt deferred.
|
|
29816
|
+
*
|
|
29817
|
+
* The result is always in chronological order. When the tail has no pending
|
|
29818
|
+
* call, every message is returned. An empty result means "defer this buffering
|
|
29819
|
+
* attempt" — callers must skip buffering entirely. Raw message persistence is
|
|
29820
|
+
* unaffected and happens elsewhere; the retained message becomes eligible again
|
|
29821
|
+
* once its tool call completes.
|
|
29822
|
+
*/
|
|
29823
|
+
function selectSafeBufferPrefix(messages) {
|
|
29824
|
+
const chronological = [...messages].sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
|
|
29825
|
+
const last = chronological[chronological.length - 1];
|
|
29826
|
+
if (!last) return chronological;
|
|
29827
|
+
const newestTime = new Date(last.createdAt).getTime();
|
|
29828
|
+
const newestGroup = chronological.filter((message) => new Date(message.createdAt).getTime() === newestTime);
|
|
29829
|
+
if (!newestGroup.some(hasPendingToolCall)) return chronological;
|
|
29830
|
+
if (newestGroup.length > 1) return [];
|
|
29831
|
+
const prefix = chronological.slice(0, -1);
|
|
29832
|
+
const retainedTime = new Date(last.createdAt).getTime();
|
|
29833
|
+
const retainedToolIds = new Set((last.content.parts ?? []).flatMap((part) => part.type === "tool-invocation" ? [part.toolInvocation.toolCallId] : []));
|
|
29834
|
+
return prefix.some((message) => new Date(message.createdAt).getTime() + 1 >= retainedTime || message.content.parts?.some((part) => part.type === "tool-invocation" && retainedToolIds.has(part.toolInvocation.toolCallId))) ? [] : prefix;
|
|
29835
|
+
}
|
|
29778
29836
|
/**
|
|
29779
29837
|
* Represents a single step in the agentic loop within an observation turn.
|
|
29780
29838
|
*
|
|
@@ -29896,37 +29954,41 @@ var ObservationStep = class {
|
|
|
29896
29954
|
record: this.turn.record,
|
|
29897
29955
|
messages: getObservableMessages(messageList)
|
|
29898
29956
|
});
|
|
29899
|
-
if (statusSnapshot.shouldBuffer
|
|
29957
|
+
if (statusSnapshot.shouldBuffer) {
|
|
29900
29958
|
const allMessages = getObservableMessages(messageList);
|
|
29901
29959
|
const unobservedMessages = om.getUnobservedMessages(allMessages, statusSnapshot.record);
|
|
29902
29960
|
const candidates = om.getUnobservedMessages(unobservedMessages, statusSnapshot.record, { excludeBuffered: true });
|
|
29903
|
-
|
|
29904
|
-
|
|
29961
|
+
const safeCandidates = selectSafeBufferPrefix(candidates);
|
|
29962
|
+
const deferred = candidates.length > 0 && safeCandidates.length === 0;
|
|
29963
|
+
if (safeCandidates.length > 0) {
|
|
29964
|
+
om.sealMessagesForBuffering(safeCandidates);
|
|
29905
29965
|
try {
|
|
29906
29966
|
await this.turn.hooks?.onBufferChunkSealed?.();
|
|
29907
29967
|
} catch (error) {
|
|
29908
29968
|
omDebug(`[OM:buffer] onBufferChunkSealed hook failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
29909
29969
|
}
|
|
29910
|
-
if (this.turn.memory) await this.turn.memory.persistMessages(
|
|
29911
|
-
messageList.removeByIds(
|
|
29912
|
-
for (const msg of
|
|
29970
|
+
if (this.turn.memory) await this.turn.memory.persistMessages(safeCandidates);
|
|
29971
|
+
messageList.removeByIds(safeCandidates.map((msg) => msg.id));
|
|
29972
|
+
for (const msg of safeCandidates) messageList.add(msg, "memory");
|
|
29973
|
+
}
|
|
29974
|
+
if (!deferred) {
|
|
29975
|
+
om.trackBackgroundWork(om.buffer({
|
|
29976
|
+
threadId,
|
|
29977
|
+
resourceId,
|
|
29978
|
+
messages: safeCandidates,
|
|
29979
|
+
pendingTokens: statusSnapshot.pendingTokens,
|
|
29980
|
+
record: statusSnapshot.record,
|
|
29981
|
+
writer: this.turn.writer,
|
|
29982
|
+
agent: this.turn.agent,
|
|
29983
|
+
sendSignal: this.turn.sendSignal,
|
|
29984
|
+
sendStateSignal: this.turn.sendStateSignal,
|
|
29985
|
+
requestContext: this.turn.requestContext,
|
|
29986
|
+
observabilityContext: this.turn.observabilityContext
|
|
29987
|
+
}).catch((err) => {
|
|
29988
|
+
omDebug(`[OM:buffer] fire-and-forget buffer failed: ${err?.message}`);
|
|
29989
|
+
}));
|
|
29990
|
+
buffered = true;
|
|
29913
29991
|
}
|
|
29914
|
-
om.trackBackgroundWork(om.buffer({
|
|
29915
|
-
threadId,
|
|
29916
|
-
resourceId,
|
|
29917
|
-
messages: unobservedMessages,
|
|
29918
|
-
pendingTokens: statusSnapshot.pendingTokens,
|
|
29919
|
-
record: statusSnapshot.record,
|
|
29920
|
-
writer: this.turn.writer,
|
|
29921
|
-
agent: this.turn.agent,
|
|
29922
|
-
sendSignal: this.turn.sendSignal,
|
|
29923
|
-
sendStateSignal: this.turn.sendStateSignal,
|
|
29924
|
-
requestContext: this.turn.requestContext,
|
|
29925
|
-
observabilityContext: this.turn.observabilityContext
|
|
29926
|
-
}).catch((err) => {
|
|
29927
|
-
omDebug(`[OM:buffer] fire-and-forget buffer failed: ${err?.message}`);
|
|
29928
|
-
}));
|
|
29929
|
-
buffered = true;
|
|
29930
29992
|
}
|
|
29931
29993
|
const willObserveNow = statusSnapshot.shouldObserve && !hasIncompleteToolCalls;
|
|
29932
29994
|
/** In-flight message ids the step-0 cleanup must never remove from live context. */
|
|
@@ -30299,11 +30361,11 @@ var ObservationTurn = class {
|
|
|
30299
30361
|
if (asyncObservationEnabled && bufferOnIdle) {
|
|
30300
30362
|
const allMessages = getObservableMessages(this.messageList);
|
|
30301
30363
|
const record = this._record;
|
|
30302
|
-
const
|
|
30303
|
-
if (
|
|
30364
|
+
const idleMessages = selectSafeBufferPrefix(this.om.getUnobservedMessages(allMessages, record));
|
|
30365
|
+
if (idleMessages.length > 0) this.om.trackBackgroundWork(this.om.buffer({
|
|
30304
30366
|
threadId: this.threadId,
|
|
30305
30367
|
resourceId: this.resourceId,
|
|
30306
|
-
messages:
|
|
30368
|
+
messages: idleMessages,
|
|
30307
30369
|
record,
|
|
30308
30370
|
writer: this.writer,
|
|
30309
30371
|
agent: this.agent,
|
|
@@ -32023,15 +32085,18 @@ var ObservationalMemory = class ObservationalMemory {
|
|
|
32023
32085
|
this.hookExecution = config.hookExecution ?? "non-blocking";
|
|
32024
32086
|
this.mastra = config.mastra;
|
|
32025
32087
|
this.memory = config.memory;
|
|
32088
|
+
const topLevelModel = config.model;
|
|
32089
|
+
const observationConfigModel = config.observation?.model;
|
|
32090
|
+
const reflectionConfigModel = config.reflection?.model;
|
|
32026
32091
|
const resolveModel = (model, defaultModel) => model === "default" ? defaultModel : model;
|
|
32027
|
-
const observationModel = resolveModel(
|
|
32028
|
-
const reflectionModel = resolveModel(
|
|
32092
|
+
const observationModel = resolveModel(topLevelModel, OBSERVATIONAL_MEMORY_DEFAULTS.observation.model) ?? resolveModel(observationConfigModel, OBSERVATIONAL_MEMORY_DEFAULTS.observation.model) ?? resolveModel(reflectionConfigModel, OBSERVATIONAL_MEMORY_DEFAULTS.observation.model) ?? OBSERVATIONAL_MEMORY_DEFAULTS.observation.model;
|
|
32093
|
+
const reflectionModel = resolveModel(topLevelModel, OBSERVATIONAL_MEMORY_DEFAULTS.reflection.model) ?? resolveModel(reflectionConfigModel, OBSERVATIONAL_MEMORY_DEFAULTS.reflection.model) ?? resolveModel(observationConfigModel, OBSERVATIONAL_MEMORY_DEFAULTS.reflection.model) ?? OBSERVATIONAL_MEMORY_DEFAULTS.reflection.model;
|
|
32029
32094
|
const messageTokens = config.observation?.messageTokens ?? OBSERVATIONAL_MEMORY_DEFAULTS.observation.messageTokens;
|
|
32030
32095
|
const observationTokens = config.reflection?.observationTokens ?? OBSERVATIONAL_MEMORY_DEFAULTS.reflection.observationTokens;
|
|
32031
32096
|
const isSharedBudget = config.shareTokenBudget ?? false;
|
|
32032
32097
|
const isDefaultModelSelection = (model) => model === void 0 || model === "default" || model instanceof ModelByInputTokens;
|
|
32033
|
-
const observationSelectedModel =
|
|
32034
|
-
const reflectionSelectedModel =
|
|
32098
|
+
const observationSelectedModel = topLevelModel ?? observationConfigModel ?? reflectionConfigModel;
|
|
32099
|
+
const reflectionSelectedModel = topLevelModel ?? reflectionConfigModel ?? observationConfigModel;
|
|
32035
32100
|
const observationDefaultMaxOutputTokens = config.observation?.modelSettings?.maxOutputTokens ?? (isDefaultModelSelection(observationSelectedModel) ? OBSERVATIONAL_MEMORY_DEFAULTS.observation.modelSettings.maxOutputTokens : void 0);
|
|
32036
32101
|
const reflectionDefaultMaxOutputTokens = config.reflection?.modelSettings?.maxOutputTokens ?? (isDefaultModelSelection(reflectionSelectedModel) ? OBSERVATIONAL_MEMORY_DEFAULTS.reflection.modelSettings.maxOutputTokens : void 0);
|
|
32037
32102
|
const totalBudget = messageTokens + observationTokens;
|
|
@@ -32994,7 +33059,7 @@ ${formattedMessages}
|
|
|
32994
33059
|
if (!this.buffering.isAsyncObservationEnabled()) return false;
|
|
32995
33060
|
const lockKey = this.buffering.getLockKey(opts.threadId, opts.resourceId);
|
|
32996
33061
|
const shouldTrigger = this.buffering.shouldTriggerAsyncObservation(opts.pendingTokens, lockKey, opts.record, this.storage, opts.threshold);
|
|
32997
|
-
if (shouldTrigger) this.trackBackgroundWork(this.startAsyncBufferedObservation(opts.record, opts.threadId, opts.unobservedMessages, lockKey, opts.writer, opts.unbufferedPendingTokens, opts.requestContext));
|
|
33062
|
+
if (shouldTrigger) this.trackBackgroundWork(this.startAsyncBufferedObservation(opts.record, opts.threadId, opts.unobservedMessages, lockKey, opts.writer, opts.unbufferedPendingTokens, opts.requestContext, opts.observabilityContext));
|
|
32998
33063
|
return shouldTrigger;
|
|
32999
33064
|
}
|
|
33000
33065
|
isMessageList(value) {
|
|
@@ -34726,6 +34791,16 @@ function normalizeObservationalMemoryConfig(config) {
|
|
|
34726
34791
|
if (typeof config === "object" && config.enabled === false) return void 0;
|
|
34727
34792
|
return config;
|
|
34728
34793
|
}
|
|
34794
|
+
/**
|
|
34795
|
+
* Observer model selection (`observation.model`, else top-level `model`), read into the widened
|
|
34796
|
+
* model type first: combining values of the public type makes TS subtype-reduce the model-id
|
|
34797
|
+
* literal union, which fails with TS2590 once the provider registry is large enough.
|
|
34798
|
+
*/
|
|
34799
|
+
function selectObserverModel(omConfig) {
|
|
34800
|
+
const observationModel = omConfig.observation?.model;
|
|
34801
|
+
const topLevelModel = omConfig.model;
|
|
34802
|
+
return observationModel ?? topLevelModel;
|
|
34803
|
+
}
|
|
34729
34804
|
function hasWorkingMemoryExtractor(extractors) {
|
|
34730
34805
|
return !!extractors?.some((extractor) => extractor.slug === "working-memory");
|
|
34731
34806
|
}
|
|
@@ -34843,7 +34918,7 @@ var Memory = class Memory extends MastraMemory {
|
|
|
34843
34918
|
const extract = observation.extract ?? [];
|
|
34844
34919
|
const existingSlugs = new Set(extract.map((extractor) => extractor.slug));
|
|
34845
34920
|
let curatorMemory;
|
|
34846
|
-
const subconsciousExtractors = omConfig.experimental_subconscious.createObservationExtractors(
|
|
34921
|
+
const subconsciousExtractors = omConfig.experimental_subconscious.createObservationExtractors(selectObserverModel(omConfig), () => curatorMemory ??= new Memory({
|
|
34847
34922
|
storage: this.storage,
|
|
34848
34923
|
options: { observationalMemory: false }
|
|
34849
34924
|
})).filter((extractor) => !existingSlugs.has(extractor.slug));
|
|
@@ -36149,7 +36224,7 @@ Notes:
|
|
|
36149
36224
|
if (remind && "builtIn" in remind) tools.ask_memory = createAskMemoryTool({
|
|
36150
36225
|
memory: this,
|
|
36151
36226
|
config: remind,
|
|
36152
|
-
omModel: omConfig
|
|
36227
|
+
omModel: selectObserverModel(omConfig),
|
|
36153
36228
|
getParentAgent: (agentId) => this._mastraInstance?.getAgentById(agentId)
|
|
36154
36229
|
});
|
|
36155
36230
|
}
|
|
@@ -47208,4 +47283,4 @@ const agentBuilderWorkflows = {
|
|
|
47208
47283
|
//#endregion
|
|
47209
47284
|
export { agentBuilderWorkflows };
|
|
47210
47285
|
|
|
47211
|
-
//# sourceMappingURL=dist-
|
|
47286
|
+
//# sourceMappingURL=dist-DOpm-tIl.js.map
|