@mastra/server 1.82.0 → 1.83.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_types/@internal_core@0.1.4/dist/storage/index.d.ts +24 -2
- package/dist/_types/@mastra_schema-compat@1.3.17/dist/_types/@internal_ai-v6@0.0.95/dist/index.d.ts +96 -15
- package/dist/{a2a-CoiG3TAj.js → a2a-CQlJ-SZr.js} +4 -4
- package/dist/{a2a-CoiG3TAj.js.map → a2a-CQlJ-SZr.js.map} +1 -1
- package/dist/{a2a-DvqRdny6.cjs → a2a-mDspNbWX.cjs} +4 -4
- package/dist/{a2a-DvqRdny6.cjs.map → a2a-mDspNbWX.cjs.map} +1 -1
- package/dist/{agent-builder-D0Up9Fw1.cjs → agent-builder-B9gEkbch.cjs} +8 -8
- package/dist/{agent-builder-D0Up9Fw1.cjs.map → agent-builder-B9gEkbch.cjs.map} +1 -1
- package/dist/{agent-builder-C_L1i2eE.js → agent-builder-BF7OAl_R.js} +8 -8
- package/dist/{agent-builder-C_L1i2eE.js.map → agent-builder-BF7OAl_R.js.map} +1 -1
- package/dist/{agent-versions-BccL4mEW.cjs → agent-versions-CwWhEoU5.cjs} +2 -2
- package/dist/{agent-versions-BccL4mEW.cjs.map → agent-versions-CwWhEoU5.cjs.map} +1 -1
- package/dist/{agent-versions-DFJyxWY1.js → agent-versions-DfcKpYNW.js} +2 -2
- package/dist/{agent-versions-DFJyxWY1.js.map → agent-versions-DfcKpYNW.js.map} +1 -1
- package/dist/{agents-BXqMKoOz.js → agents-BCgiMlDq.js} +2 -2
- package/dist/{agents-BXqMKoOz.js.map → agents-BCgiMlDq.js.map} +1 -1
- package/dist/{agents-DOHGWXDa.cjs → agents-CMEeZr5y.cjs} +223 -63
- package/dist/agents-CMEeZr5y.cjs.map +1 -0
- package/dist/{agents-DbnPZXIN.cjs → agents-CjcvdF2e.cjs} +2 -2
- package/dist/{agents-DbnPZXIN.cjs.map → agents-CjcvdF2e.cjs.map} +1 -1
- package/dist/{agents-CgcW6lHt.js → agents-DXlVewzD.js} +223 -63
- package/dist/agents-DXlVewzD.js.map +1 -0
- package/dist/{api-schema-manifest-DCHOlOuJ.cjs → api-schema-manifest-BKnghL_k.cjs} +3 -3
- package/dist/{api-schema-manifest-DCHOlOuJ.cjs.map → api-schema-manifest-BKnghL_k.cjs.map} +1 -1
- package/dist/{api-schema-manifest-Ci2qUYHc.js → api-schema-manifest-DOuSq4rG.js} +3 -3
- package/dist/{api-schema-manifest-Ci2qUYHc.js.map → api-schema-manifest-DOuSq4rG.js.map} +1 -1
- package/dist/{background-tasks-BHhn4YZA.js → background-tasks-BIuEr2of.js} +3 -3
- package/dist/{background-tasks-BHhn4YZA.js.map → background-tasks-BIuEr2of.js.map} +1 -1
- package/dist/{background-tasks-Ci2tlxJC.cjs → background-tasks-BXTIp0QV.cjs} +3 -3
- package/dist/{background-tasks-Ci2tlxJC.cjs.map → background-tasks-BXTIp0QV.cjs.map} +1 -1
- package/dist/{builder-registry-m_gHCe12.js → builder-registry-Dd7pbJ5A.js} +4 -4
- package/dist/{builder-registry-m_gHCe12.js.map → builder-registry-Dd7pbJ5A.js.map} +1 -1
- package/dist/{builder-registry-D1_hGKCJ.cjs → builder-registry-DrBUA6EZ.cjs} +4 -4
- package/dist/{builder-registry-D1_hGKCJ.cjs.map → builder-registry-DrBUA6EZ.cjs.map} +1 -1
- package/dist/{channels-hhQ3vD30.js → channels-B6hwVMbV.js} +4 -4
- package/dist/{channels-hhQ3vD30.js.map → channels-B6hwVMbV.js.map} +1 -1
- package/dist/{channels-Bfkp5vYI.cjs → channels-DbfSH5O2.cjs} +4 -4
- package/dist/{channels-Bfkp5vYI.cjs.map → channels-DbfSH5O2.cjs.map} +1 -1
- package/dist/{conversations-Ch_VuVwY.cjs → conversations-CFj4BnNb.cjs} +5 -5
- package/dist/{conversations-Ch_VuVwY.cjs.map → conversations-CFj4BnNb.cjs.map} +1 -1
- package/dist/{conversations-xS7yHuG1.js → conversations-DjTKtaUi.js} +5 -5
- package/dist/{conversations-xS7yHuG1.js.map → conversations-DjTKtaUi.js.map} +1 -1
- package/dist/{dist-BKNKucT9.cjs → dist-Ctfk9X6u.cjs} +208 -247
- package/dist/dist-Ctfk9X6u.cjs.map +1 -0
- package/dist/dist-DJjVMQiv.js +1 -0
- package/dist/{dist-CIYZuix4.js → dist-OKFDPspq.js} +208 -247
- package/dist/dist-OKFDPspq.js.map +1 -0
- package/dist/{dist-DgKeISkr.cjs → dist-ZYvqJK9p.cjs} +1 -1
- package/dist/docs/SKILL.md +5 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-agents-resumable-streams.md +140 -0
- package/dist/docs/references/docs-knowledge-overview.md +106 -0
- package/dist/docs/references/docs-server-custom-adapters.md +4 -0
- package/dist/docs/references/docs-server-server-adapters.md +679 -0
- package/dist/docs/references/docs-studio-knowledge.md +45 -24
- package/dist/docs/references/reference-observability-tracing-advanced-queries.md +47 -58
- package/dist/docs/references/reference-server-invoke-route.md +86 -0
- package/dist/docs/references/reference-server-routes.md +63 -0
- package/dist/{dynamic-workflows-DDauBnDt.js → dynamic-workflows-CyaZLmHX.js} +2 -2
- package/dist/{dynamic-workflows-DDauBnDt.js.map → dynamic-workflows-CyaZLmHX.js.map} +1 -1
- package/dist/{dynamic-workflows-CpCkqM1g.cjs → dynamic-workflows-ZmzWJXxG.cjs} +2 -2
- package/dist/{dynamic-workflows-CpCkqM1g.cjs.map → dynamic-workflows-ZmzWJXxG.cjs.map} +1 -1
- package/dist/{editor-builder-CKfy5eZY.cjs → editor-builder-CBBZxQhO.cjs} +4 -4
- package/dist/{editor-builder-CKfy5eZY.cjs.map → editor-builder-CBBZxQhO.cjs.map} +1 -1
- package/dist/{editor-builder-Bln4Pg1U.js → editor-builder-fe70YP8g.js} +2 -2
- package/dist/{editor-builder-Bln4Pg1U.js.map → editor-builder-fe70YP8g.js.map} +1 -1
- package/dist/{editor-builder-Ceen28s8.js → editor-builder-o9xJHa96.js} +4 -4
- package/dist/{editor-builder-Ceen28s8.js.map → editor-builder-o9xJHa96.js.map} +1 -1
- package/dist/{editor-builder-BaI8pttR.cjs → editor-builder-xQmDgVgJ.cjs} +2 -2
- package/dist/{editor-builder-BaI8pttR.cjs.map → editor-builder-xQmDgVgJ.cjs.map} +1 -1
- package/dist/{helpers-DNq3LtLq.js → helpers-B29a1nM3.js} +51 -48
- package/dist/helpers-B29a1nM3.js.map +1 -0
- package/dist/{helpers-BKtUXhz2.cjs → helpers-CylvUIZm.cjs} +56 -47
- package/dist/helpers-CylvUIZm.cjs.map +1 -0
- package/dist/{knowledge-Ba74qr0v.js → knowledge-Cd2cCq-Y.js} +4 -4
- package/dist/{knowledge-Ba74qr0v.js.map → knowledge-Cd2cCq-Y.js.map} +1 -1
- package/dist/{knowledge-urR7FFG8.cjs → knowledge-Q_SCnD9m.cjs} +4 -4
- package/dist/{knowledge-urR7FFG8.cjs.map → knowledge-Q_SCnD9m.cjs.map} +1 -1
- package/dist/{logs-B57_NKDn.js → logs-C5L6gRGr.js} +4 -4
- package/dist/{logs-B57_NKDn.js.map → logs-C5L6gRGr.js.map} +1 -1
- package/dist/{logs-BJN3M88A.cjs → logs-DWIbFIw6.cjs} +4 -4
- package/dist/{logs-BJN3M88A.cjs.map → logs-DWIbFIw6.cjs.map} +1 -1
- package/dist/{mcp-B9BILfJP.cjs → mcp-CKvOVfHn.cjs} +3 -3
- package/dist/{mcp-B9BILfJP.cjs.map → mcp-CKvOVfHn.cjs.map} +1 -1
- package/dist/{mcp-BkmWZD6M.js → mcp-CntC59iU.js} +3 -3
- package/dist/{mcp-BkmWZD6M.js.map → mcp-CntC59iU.js.map} +1 -1
- package/dist/{memory-Dqod_AK9.cjs → memory-DIos0BE-.cjs} +57 -15
- package/dist/{memory-Dqod_AK9.cjs.map → memory-DIos0BE-.cjs.map} +1 -1
- package/dist/{memory-ipOCmg0C.js → memory-JzgWJevA.js} +57 -15
- package/dist/{memory-ipOCmg0C.js.map → memory-JzgWJevA.js.map} +1 -1
- package/dist/{observability-BtdW6mjq.cjs → observability-BB0DeGo4.cjs} +4 -3
- package/dist/{observability-BtdW6mjq.cjs.map → observability-BB0DeGo4.cjs.map} +1 -1
- package/dist/{observability-DBtyAJnb.js → observability-Cl3qZKTD.js} +4 -3
- package/dist/{observability-DBtyAJnb.js.map → observability-Cl3qZKTD.js.map} +1 -1
- package/dist/{observability-new-endpoints-jjCgXuTF.cjs → observability-new-endpoints-DugFsWBU.cjs} +154 -956
- package/dist/observability-new-endpoints-DugFsWBU.cjs.map +1 -0
- package/dist/{observability-new-endpoints-Di7m_-xc.js → observability-new-endpoints-qE2NutZ1.js} +72 -880
- package/dist/observability-new-endpoints-qE2NutZ1.js.map +1 -0
- package/dist/observability-signal-context-BYOFtbM_.cjs +1317 -0
- package/dist/observability-signal-context-BYOFtbM_.cjs.map +1 -0
- package/dist/observability-signal-context-CL5-rCWM.js +952 -0
- package/dist/observability-signal-context-CL5-rCWM.js.map +1 -0
- package/dist/{plans-Djcp3C0d.cjs → plans-CQijj_Am.cjs} +5 -5
- package/dist/{plans-Djcp3C0d.cjs.map → plans-CQijj_Am.cjs.map} +1 -1
- package/dist/{plans-nHOnlGzr.js → plans-DVx9N2re.js} +5 -5
- package/dist/{plans-nHOnlGzr.js.map → plans-DVx9N2re.js.map} +1 -1
- package/dist/{probe-image-size-DGTRKrgq.js → probe-image-size-Cxm5QtwO.js} +2 -2
- package/dist/{probe-image-size-DGTRKrgq.js.map → probe-image-size-Cxm5QtwO.js.map} +1 -1
- package/dist/{probe-image-size-BAwk1h6w.cjs → probe-image-size-bDuzMW0E.cjs} +2 -2
- package/dist/{probe-image-size-BAwk1h6w.cjs.map → probe-image-size-bDuzMW0E.cjs.map} +1 -1
- package/dist/{responses-BdOStKtX.cjs → responses-DYGS0aiI.cjs} +5 -5
- package/dist/{responses-BdOStKtX.cjs.map → responses-DYGS0aiI.cjs.map} +1 -1
- package/dist/{responses-CEet9y8G.js → responses-NM-kLq8b.js} +5 -5
- package/dist/{responses-CEet9y8G.js.map → responses-NM-kLq8b.js.map} +1 -1
- package/dist/{route-builder-BxPrwNog.js → route-builder-BKEzjw_M.js} +2 -2
- package/dist/{route-builder-BxPrwNog.js.map → route-builder-BKEzjw_M.js.map} +1 -1
- package/dist/{route-builder-CvARmqnA.cjs → route-builder-DHqDrSSy.cjs} +2 -2
- package/dist/{route-builder-CvARmqnA.cjs.map → route-builder-DHqDrSSy.cjs.map} +1 -1
- package/dist/{routes-5FpkkzND.js → routes-B2XGdvlv.js} +33 -32
- package/dist/routes-B2XGdvlv.js.map +1 -0
- package/dist/{routes-DU_FlwJP.cjs → routes-CWrdLnBc.cjs} +33 -32
- package/dist/routes-CWrdLnBc.cjs.map +1 -0
- package/dist/{schedules-D8ShgpY3.cjs → schedules-CvWX2yKR.cjs} +3 -3
- package/dist/{schedules-D8ShgpY3.cjs.map → schedules-CvWX2yKR.cjs.map} +1 -1
- package/dist/{schedules-CGViSLZC.js → schedules-D9CKB18-.js} +3 -3
- package/dist/{schedules-CGViSLZC.js.map → schedules-D9CKB18-.js.map} +1 -1
- package/dist/{schema-Bf12g7KC-DBc4NSds.js → schema-Bf12g7KC-5EUrrnSf.js} +96 -96
- package/dist/{schema-Bf12g7KC-DBc4NSds.js.map → schema-Bf12g7KC-5EUrrnSf.js.map} +1 -1
- package/dist/{schema-Bf12g7KC-plP4Ir6h.cjs → schema-Bf12g7KC-C5XzpQxe.cjs} +96 -96
- package/dist/{schema-Bf12g7KC-plP4Ir6h.cjs.map → schema-Bf12g7KC-C5XzpQxe.cjs.map} +1 -1
- package/dist/{scorer-versions-vQVWyYWA.cjs → scorer-versions-Bhdvt-cX.cjs} +2 -2
- package/dist/{scorer-versions-vQVWyYWA.cjs.map → scorer-versions-Bhdvt-cX.cjs.map} +1 -1
- package/dist/{scorer-versions-BZ58s09W.js → scorer-versions-DhT7Lj33.js} +2 -2
- package/dist/{scorer-versions-BZ58s09W.js.map → scorer-versions-DhT7Lj33.js.map} +1 -1
- package/dist/{scores-Bw6Tuga5.cjs → scores-CWx6H3Z8.cjs} +4 -4
- package/dist/{scores-Bw6Tuga5.cjs.map → scores-CWx6H3Z8.cjs.map} +1 -1
- package/dist/{scores-BaDFGpmr.js → scores-DTVV_OaX.js} +4 -4
- package/dist/{scores-BaDFGpmr.js.map → scores-DTVV_OaX.js.map} +1 -1
- package/dist/server/auth/helpers.d.ts +20 -0
- package/dist/server/auth/helpers.d.ts.map +1 -1
- package/dist/server/auth/index.cjs +2 -1
- package/dist/server/auth/index.js +2 -2
- package/dist/server/handlers/a2a.cjs +1 -1
- package/dist/server/handlers/a2a.js +1 -1
- package/dist/server/handlers/agent-builder.cjs +1 -1
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-controller.cjs +17 -6
- package/dist/server/handlers/agent-controller.cjs.map +1 -1
- package/dist/server/handlers/agent-controller.d.ts.map +1 -1
- package/dist/server/handlers/agent-controller.js +17 -6
- package/dist/server/handlers/agent-controller.js.map +1 -1
- package/dist/server/handlers/agent-versions.cjs +4 -4
- package/dist/server/handlers/agent-versions.js +4 -4
- package/dist/server/handlers/agents.cjs +1 -1
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +4 -4
- package/dist/server/handlers/auth.js +4 -4
- package/dist/server/handlers/authorship.cjs +1 -1
- package/dist/server/handlers/authorship.js +1 -1
- package/dist/server/handlers/background-tasks.cjs +1 -1
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/builder-registry.cjs +1 -1
- package/dist/server/handlers/builder-registry.js +1 -1
- package/dist/server/handlers/channels.cjs +1 -1
- package/dist/server/handlers/channels.js +1 -1
- package/dist/server/handlers/conversations.cjs +1 -1
- package/dist/server/handlers/conversations.js +1 -1
- package/dist/server/handlers/datasets.cjs +7 -5
- package/dist/server/handlers/datasets.cjs.map +1 -1
- package/dist/server/handlers/datasets.d.ts.map +1 -1
- package/dist/server/handlers/datasets.js +7 -5
- package/dist/server/handlers/datasets.js.map +1 -1
- package/dist/server/handlers/dynamic-workflows.cjs +1 -1
- package/dist/server/handlers/dynamic-workflows.js +1 -1
- package/dist/server/handlers/editor-builder.cjs +1 -1
- package/dist/server/handlers/editor-builder.js +1 -1
- package/dist/server/handlers/error.cjs +1 -0
- package/dist/server/handlers/error.cjs.map +1 -1
- package/dist/server/handlers/error.d.ts.map +1 -1
- package/dist/server/handlers/error.js +1 -0
- package/dist/server/handlers/error.js.map +1 -1
- package/dist/server/handlers/favorites-enrichment.cjs +1 -1
- package/dist/server/handlers/favorites-enrichment.js +1 -1
- package/dist/server/handlers/gateway-memory-client.cjs +4 -1
- package/dist/server/handlers/gateway-memory-client.cjs.map +1 -1
- package/dist/server/handlers/gateway-memory-client.d.ts.map +1 -1
- package/dist/server/handlers/gateway-memory-client.js +4 -1
- package/dist/server/handlers/gateway-memory-client.js.map +1 -1
- package/dist/server/handlers/knowledge.cjs +1 -1
- package/dist/server/handlers/knowledge.js +1 -1
- package/dist/server/handlers/logs.cjs +1 -1
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/mcp-client-versions.cjs +3 -3
- package/dist/server/handlers/mcp-client-versions.js +3 -3
- package/dist/server/handlers/mcp.cjs +1 -1
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +1 -1
- package/dist/server/handlers/memory.d.ts.map +1 -1
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/observability-new-endpoints.cjs +2 -1
- package/dist/server/handlers/observability-new-endpoints.d.ts +328 -8
- package/dist/server/handlers/observability-new-endpoints.d.ts.map +1 -1
- package/dist/server/handlers/observability-new-endpoints.js +1 -1
- package/dist/server/handlers/observability-shared.cjs +7 -1
- package/dist/server/handlers/observability-shared.cjs.map +1 -1
- package/dist/server/handlers/observability-shared.d.ts +6 -0
- package/dist/server/handlers/observability-shared.d.ts.map +1 -1
- package/dist/server/handlers/observability-shared.js +7 -1
- package/dist/server/handlers/observability-shared.js.map +1 -1
- package/dist/server/handlers/observability-signal-context.cjs +4 -0
- package/dist/server/handlers/observability-signal-context.d.ts +42 -0
- package/dist/server/handlers/observability-signal-context.d.ts.map +1 -0
- package/dist/server/handlers/observability-signal-context.js +1 -0
- package/dist/server/handlers/observability.cjs +3 -2
- package/dist/server/handlers/observability.js +3 -3
- package/dist/server/handlers/plans.cjs +1 -1
- package/dist/server/handlers/plans.js +1 -1
- package/dist/server/handlers/processor-providers.cjs +2 -2
- package/dist/server/handlers/processor-providers.js +2 -2
- package/dist/server/handlers/processors.cjs +2 -2
- package/dist/server/handlers/processors.js +2 -2
- package/dist/server/handlers/prompt-block-versions.cjs +3 -3
- package/dist/server/handlers/prompt-block-versions.js +3 -3
- package/dist/server/handlers/responses.cjs +1 -1
- 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/schedules.cjs +1 -1
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +3 -3
- package/dist/server/handlers/scorer-versions.js +3 -3
- package/dist/server/handlers/scores.cjs +1 -1
- package/dist/server/handlers/scores.js +1 -1
- package/dist/server/handlers/stored-agent-favorites.cjs +6 -6
- package/dist/server/handlers/stored-agent-favorites.js +6 -6
- package/dist/server/handlers/stored-agents.cjs +10 -9
- package/dist/server/handlers/stored-agents.cjs.map +1 -1
- package/dist/server/handlers/stored-agents.d.ts +2 -6
- package/dist/server/handlers/stored-agents.d.ts.map +1 -1
- package/dist/server/handlers/stored-agents.js +10 -9
- package/dist/server/handlers/stored-agents.js.map +1 -1
- package/dist/server/handlers/stored-mcp-clients.cjs +3 -3
- package/dist/server/handlers/stored-mcp-clients.js +3 -3
- package/dist/server/handlers/stored-prompt-blocks.cjs +3 -3
- package/dist/server/handlers/stored-prompt-blocks.js +3 -3
- package/dist/server/handlers/stored-scorers.cjs +3 -3
- package/dist/server/handlers/stored-scorers.js +3 -3
- package/dist/server/handlers/stored-skill-favorites.cjs +5 -5
- package/dist/server/handlers/stored-skill-favorites.js +5 -5
- package/dist/server/handlers/stored-skills.cjs +5 -5
- package/dist/server/handlers/stored-skills.js +5 -5
- package/dist/server/handlers/stored-workspaces.cjs +3 -3
- package/dist/server/handlers/stored-workspaces.js +3 -3
- package/dist/server/handlers/system.cjs +3 -3
- package/dist/server/handlers/system.js +3 -3
- package/dist/server/handlers/tool-providers.cjs +3 -3
- package/dist/server/handlers/tool-providers.js +3 -3
- package/dist/server/handlers/tools.cjs +1 -1
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/utils.cjs +1 -1
- package/dist/server/handlers/utils.js +1 -1
- package/dist/server/handlers/validate-agent-instructions.cjs +1 -1
- package/dist/server/handlers/validate-agent-instructions.js +1 -1
- package/dist/server/handlers/vector.cjs +1 -1
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/workflow-builder.cjs +1 -1
- package/dist/server/handlers/workflow-builder.js +1 -1
- package/dist/server/handlers/workflows.cjs +1 -1
- package/dist/server/handlers/workflows.d.ts.map +1 -1
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers/workspace.cjs +1 -1
- package/dist/server/handlers/workspace.d.ts +23 -23
- package/dist/server/handlers/workspace.js +1 -1
- package/dist/server/handlers.cjs +16 -16
- package/dist/server/handlers.js +16 -16
- package/dist/server/schemas/agents.d.ts.map +1 -1
- package/dist/server/schemas/feedback.d.ts +49 -0
- package/dist/server/schemas/feedback.d.ts.map +1 -1
- package/dist/server/schemas/index.cjs +23 -23
- package/dist/server/schemas/index.js +23 -23
- package/dist/server/schemas/stored-agents.d.ts +5 -10
- package/dist/server/schemas/stored-agents.d.ts.map +1 -1
- package/dist/server/server-adapter/index.cjs +231 -61
- package/dist/server/server-adapter/index.cjs.map +1 -1
- package/dist/server/server-adapter/index.d.ts +67 -1
- package/dist/server/server-adapter/index.d.ts.map +1 -1
- package/dist/server/server-adapter/index.js +226 -63
- package/dist/server/server-adapter/index.js.map +1 -1
- package/dist/server/server-adapter/mcp-auth.d.ts +16 -1
- package/dist/server/server-adapter/mcp-auth.d.ts.map +1 -1
- package/dist/server/server-adapter/routes/observability.d.ts +162 -3
- package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
- package/dist/server/utils/agent-stream-events.d.ts +2 -0
- package/dist/server/utils/agent-stream-events.d.ts.map +1 -1
- package/dist/{stored-agents-DA8Zx6o9.js → stored-agents-DmN_pIIl.js} +10 -10
- package/dist/stored-agents-DmN_pIIl.js.map +1 -0
- package/dist/{stored-agents-TQ2lIFbx.cjs → stored-agents-m0Knvv29.cjs} +10 -10
- package/dist/stored-agents-m0Knvv29.cjs.map +1 -0
- package/dist/{stored-scorers-DhOq8ZQC.js → stored-scorers-2F2k6XSx.js} +2 -2
- package/dist/{stored-scorers-DhOq8ZQC.js.map → stored-scorers-2F2k6XSx.js.map} +1 -1
- package/dist/{stored-scorers-FJOs5774.cjs → stored-scorers-iM2Qq9Nh.cjs} +2 -2
- package/dist/{stored-scorers-FJOs5774.cjs.map → stored-scorers-iM2Qq9Nh.cjs.map} +1 -1
- package/dist/{tools-CI5oeJWT.cjs → tools-7O8cd_4u.cjs} +7 -7
- package/dist/{tools-CI5oeJWT.cjs.map → tools-7O8cd_4u.cjs.map} +1 -1
- package/dist/{tools-BAmCNGM5.js → tools-Bf3vq-HD.js} +7 -7
- package/dist/{tools-BAmCNGM5.js.map → tools-Bf3vq-HD.js.map} +1 -1
- package/dist/{utils-9PRHHTGC.cjs → utils-BXEJ6FZC.cjs} +2 -2
- package/dist/{utils-9PRHHTGC.cjs.map → utils-BXEJ6FZC.cjs.map} +1 -1
- package/dist/{utils-BhBJHsqX.cjs → utils-CL-m2SWZ.cjs} +3 -3
- package/dist/{utils-BhBJHsqX.cjs.map → utils-CL-m2SWZ.cjs.map} +1 -1
- package/dist/{utils-B15w-1hm.js → utils-CTYtskHa.js} +2 -2
- package/dist/{utils-B15w-1hm.js.map → utils-CTYtskHa.js.map} +1 -1
- package/dist/{utils-Dy_dQTlK.js → utils-y-cW3mQU.js} +3 -3
- package/dist/{utils-Dy_dQTlK.js.map → utils-y-cW3mQU.js.map} +1 -1
- package/dist/{vector-BZ1bKtwM.cjs → vector-6k7Ft7EX.cjs} +3 -3
- package/dist/{vector-BZ1bKtwM.cjs.map → vector-6k7Ft7EX.cjs.map} +1 -1
- package/dist/{vector-BAs5o6mH.js → vector-BWFSDXvg.js} +3 -3
- package/dist/{vector-BAs5o6mH.js.map → vector-BWFSDXvg.js.map} +1 -1
- package/dist/{workflow-builder-CaSfD6oL.js → workflow-builder-BUQfzD4L.js} +5 -5
- package/dist/{workflow-builder-CaSfD6oL.js.map → workflow-builder-BUQfzD4L.js.map} +1 -1
- package/dist/{workflow-builder-tr_D_ZDN.cjs → workflow-builder-C6J_1s56.cjs} +5 -5
- package/dist/{workflow-builder-tr_D_ZDN.cjs.map → workflow-builder-C6J_1s56.cjs.map} +1 -1
- package/dist/{workflows-BxXS5AfE.js → workflows-BkTNzH-i.js} +24 -13
- package/dist/workflows-BkTNzH-i.js.map +1 -0
- package/dist/{workflows-Cdi6w8JW.cjs → workflows-CHUG5jh4.cjs} +76 -65
- package/dist/workflows-CHUG5jh4.cjs.map +1 -0
- package/dist/{workspace-BU6sQpbV.cjs → workspace-C7PytFzz.cjs} +3 -3
- package/dist/{workspace-BU6sQpbV.cjs.map → workspace-C7PytFzz.cjs.map} +1 -1
- package/dist/{workspace-CS-GYTve.js → workspace-CYwDvH0G.js} +3 -3
- package/dist/{workspace-CS-GYTve.js.map → workspace-CYwDvH0G.js.map} +1 -1
- package/package.json +4 -4
- package/dist/agents-CgcW6lHt.js.map +0 -1
- package/dist/agents-DOHGWXDa.cjs.map +0 -1
- package/dist/dist-BKNKucT9.cjs.map +0 -1
- package/dist/dist-CIYZuix4.js.map +0 -1
- package/dist/dist-mNQb9_wX.js +0 -1
- package/dist/helpers-BKtUXhz2.cjs.map +0 -1
- package/dist/helpers-DNq3LtLq.js.map +0 -1
- package/dist/observability-new-endpoints-Di7m_-xc.js.map +0 -1
- package/dist/observability-new-endpoints-jjCgXuTF.cjs.map +0 -1
- package/dist/routes-5FpkkzND.js.map +0 -1
- package/dist/routes-DU_FlwJP.cjs.map +0 -1
- package/dist/stored-agents-DA8Zx6o9.js.map +0 -1
- package/dist/stored-agents-TQ2lIFbx.cjs.map +0 -1
- package/dist/workflows-BxXS5AfE.js.map +0 -1
- package/dist/workflows-Cdi6w8JW.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error.js","names":[],"sources":["../../../src/server/handlers/error.ts"],"sourcesContent":["import type { ZodError } from 'zod';\n\nimport { HTTPException } from '../http-exception';\nimport type { StatusCode } from '../http-exception';\nimport type { ApiError } from '../types';\n\n/**\n * Duck-typed interface for ZodError-like objects.\n * Note: Zod v4 uses PropertyKey[] (string | number | symbol) for path.\n */\nexport interface ZodErrorLike {\n issues: Array<{\n path: PropertyKey[];\n message: string;\n }>;\n}\n\n/**\n * Recognition for `ModelNotAllowedError` from `@mastra/core/agent-builder/ee`.\n *\n * Inlined as a duck check rather than imported so that `handleError` (wired\n * into every route) does not force a load-time dependency on the\n * `@mastra/core/agent-builder/ee` subpath. That subpath only ships in\n * `@mastra/core >= 1.34.0`; deploys whose bundled `@mastra/server` resolves\n * against an older core would otherwise crash at startup with\n * `ERR_MODULE_NOT_FOUND` on `@mastra/core/dist/agent-builder/ee/index.js`.\n */\nconst MODEL_NOT_ALLOWED_CODE = 'MODEL_NOT_ALLOWED';\n\ninterface ModelNotAllowedErrorLike extends Error {\n code: typeof MODEL_NOT_ALLOWED_CODE;\n allowed?: unknown;\n attempted?: unknown;\n offendingLabel?: string;\n}\n\nfunction isModelNotAllowedError(error: unknown): error is ModelNotAllowedErrorLike {\n return error instanceof Error && (error as { code?: unknown }).code === MODEL_NOT_ALLOWED_CODE;\n}\n\n// Input the caller sent failed a workflow or agent schema (including an agent's requestContextSchema),\n// so it is a bad request, not a server fault.\nconst SCHEMA_VALIDATION_FAILED_CODES = new Set([\n 'WORKFLOW_SCHEMA_VALIDATION_FAILED',\n 'AGENT_REQUEST_CONTEXT_VALIDATION_FAILED',\n]);\n\nfunction isSchemaValidationError(error: unknown): error is Error {\n const id = (error as { id?: unknown } | undefined)?.id;\n return error instanceof Error && typeof id === 'string' && SCHEMA_VALIDATION_FAILED_CODES.has(id);\n}\n\n// A resume or time travel the run can't accept: another caller claimed it, it is still running,\n// or it isn't waiting to be resumed.\nconst RUN_CLAIM_CONFLICT_CODES = new Set([\n 'WORKFLOW_RESUME_ALREADY_CLAIMED',\n 'AGENT_RESUME_ALREADY_CLAIMED',\n 'WORKFLOW_RUN_NOT_SUSPENDED',\n 'AGENT_RESUME_RUN_NOT_SUSPENDED',\n 'WORKFLOW_TIME_TRAVEL_ALREADY_CLAIMED',\n 'WORKFLOW_TIME_TRAVEL_RUN_RUNNING',\n]);\n\nfunction isRunClaimConflictError(error: unknown): error is Error & { id: string } {\n return error instanceof Error && RUN_CLAIM_CONFLICT_CODES.has((error as { id?: unknown }).id as string);\n}\n\n/**\n * Durable agent errors for a request that conflicts with the run's state:\n * another execution owns the run, it is already being recovered, it lost a\n * concurrent claim, or it is suspended (recover). Matched by id, like the\n * other checks here, so the server doesn't depend on core exporting them.\n */\nconst DURABLE_RUN_CONFLICT_CODES = new Set([\n 'DURABLE_AGENT_RUN_ACTIVE',\n 'DURABLE_AGENT_RECOVER_RUN_ACTIVE_LOCALLY',\n 'DURABLE_AGENT_RECOVER_ALREADY_IN_PROGRESS',\n 'DURABLE_AGENT_RECOVER_RUN_SUSPENDED',\n 'DURABLE_AGENT_RECOVER_RUN_NOT_ACTIVE',\n 'DURABLE_AGENT_EXECUTION_CONFLICT',\n]);\n\nfunction isDurableRunConflictError(error: unknown): error is Error {\n const id = (error as { id?: unknown } | undefined)?.id;\n return error instanceof Error && typeof id === 'string' && DURABLE_RUN_CONFLICT_CODES.has(id);\n}\n\nconst FEEDBACK_REVIEW_STATUS_CONFLICT_CODE = 'OBSERVABILITY_UPDATE_FEEDBACK_REVIEW_STATUS_CONFLICT';\n\nfunction isFeedbackReviewStatusConflictError(error: unknown): error is Error {\n return error instanceof Error && (error as { id?: unknown }).id === FEEDBACK_REVIEW_STATUS_CONFLICT_CODE;\n}\n\n/**\n * Matches the `OBSERVABILITY_STORAGE_*_NOT_IMPLEMENTED` MastraError the base\n * observability store throws for every optional method a store doesn't\n * implement. Checked by id (not `instanceof`) so it holds across duplicated\n * `@mastra/core` installs.\n */\nfunction isObservabilityStorageNotImplementedError(error: unknown): error is Error {\n const id = error && typeof error === 'object' && 'id' in error ? error.id : undefined;\n return typeof id === 'string' && id.startsWith('OBSERVABILITY_STORAGE_') && id.endsWith('_NOT_IMPLEMENTED');\n}\n\n/**\n * Structural check for ZodError instances.\n *\n * Avoids `instanceof ZodError` because consumers can resolve `'zod'` to a\n * different package instance (e.g. `zod@^3`) than the one a server adapter is\n * bundled with (`zod@^4`). In that case `instanceof` is false and validation\n * errors fall through to a generic response that drops field-path information.\n *\n * See https://github.com/mastra-ai/mastra/issues/17167.\n */\nexport function isZodError(error: unknown): error is ZodError<any> {\n return (\n !!error &&\n typeof error === 'object' &&\n (error as { name?: unknown }).name === 'ZodError' &&\n Array.isArray((error as { issues?: unknown }).issues)\n );\n}\n\n/**\n * Formats a ZodError into a structured validation error response.\n * Returns an object with an error message and an array of field-specific issues.\n */\nexport function formatZodError(\n error: ZodErrorLike,\n context: string,\n): { error: string; issues: Array<{ field: string; message: string }> } {\n const issues = error.issues.map(e => ({\n field: e.path.length > 0 ? e.path.map(p => String(p)).join('.') : 'root',\n message: e.message,\n }));\n\n return {\n error: `Invalid ${context}`,\n issues,\n };\n}\n\n// Helper to handle errors consistently\nexport function handleError(error: unknown, defaultMessage: string): never {\n if (isModelNotAllowedError(error)) {\n const body = {\n error: {\n code: error.code,\n message: error.message,\n allowed: error.allowed,\n attempted: error.attempted,\n offendingLabel: error.offendingLabel,\n },\n };\n const res = new Response(JSON.stringify(body), {\n status: 422,\n headers: { 'content-type': 'application/json' },\n });\n throw new HTTPException(422, {\n res,\n message: error.message,\n cause: error,\n });\n }\n\n // A losing concurrent resume or time travel, or a recover of a run that is live or suspended, is\n // a conflict on run state, not a malformed request, so it maps to 409 and clients can\n // distinguish it from a 400/500 and re-read the run.\n if (isRunClaimConflictError(error) || isDurableRunConflictError(error)) {\n const res = isRunClaimConflictError(error)\n ? new Response(JSON.stringify({ error: error.message, code: error.id }), {\n status: 409,\n headers: { 'content-type': 'application/json' },\n })\n : undefined;\n throw new HTTPException(409, {\n res,\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n // The feedback row changed under a review-status update, so the caller re-reads and retries;\n // that is a conflict, not a broken store.\n if (isFeedbackReviewStatusConflictError(error)) {\n throw new HTTPException(409, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n // Optional observability APIs (feedback, metrics, logs, scores, ...) throw\n // `*_NOT_IMPLEMENTED` on stores that don't support them. That's a missing\n // capability, not a server fault, so it maps to 501 — which server adapters\n // log as a warning instead of an error. The message is preserved because\n // clients match on it to detect unsupported operations. Clients should check\n // `GET /observability/capabilities` before calling optional routes.\n if (isObservabilityStorageNotImplementedError(error)) {\n throw new HTTPException(501, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n const apiError = error as ApiError;\n\n const apiErrorStatus = apiError.status || apiError.details?.status || 500;\n\n throw new HTTPException(apiErrorStatus as StatusCode, {\n message: apiError.message || defaultMessage,\n stack: apiError.stack,\n cause: apiError.cause,\n });\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"error.js","names":[],"sources":["../../../src/server/handlers/error.ts"],"sourcesContent":["import type { ZodError } from 'zod';\n\nimport { HTTPException } from '../http-exception';\nimport type { StatusCode } from '../http-exception';\nimport type { ApiError } from '../types';\n\n/**\n * Duck-typed interface for ZodError-like objects.\n * Note: Zod v4 uses PropertyKey[] (string | number | symbol) for path.\n */\nexport interface ZodErrorLike {\n issues: Array<{\n path: PropertyKey[];\n message: string;\n }>;\n}\n\n/**\n * Recognition for `ModelNotAllowedError` from `@mastra/core/agent-builder/ee`.\n *\n * Inlined as a duck check rather than imported so that `handleError` (wired\n * into every route) does not force a load-time dependency on the\n * `@mastra/core/agent-builder/ee` subpath. That subpath only ships in\n * `@mastra/core >= 1.34.0`; deploys whose bundled `@mastra/server` resolves\n * against an older core would otherwise crash at startup with\n * `ERR_MODULE_NOT_FOUND` on `@mastra/core/dist/agent-builder/ee/index.js`.\n */\nconst MODEL_NOT_ALLOWED_CODE = 'MODEL_NOT_ALLOWED';\n\ninterface ModelNotAllowedErrorLike extends Error {\n code: typeof MODEL_NOT_ALLOWED_CODE;\n allowed?: unknown;\n attempted?: unknown;\n offendingLabel?: string;\n}\n\nfunction isModelNotAllowedError(error: unknown): error is ModelNotAllowedErrorLike {\n return error instanceof Error && (error as { code?: unknown }).code === MODEL_NOT_ALLOWED_CODE;\n}\n\n// Input the caller sent failed a workflow or agent schema (including an agent's requestContextSchema),\n// so it is a bad request, not a server fault.\nconst SCHEMA_VALIDATION_FAILED_CODES = new Set([\n 'WORKFLOW_SCHEMA_VALIDATION_FAILED',\n 'AGENT_REQUEST_CONTEXT_VALIDATION_FAILED',\n]);\n\nfunction isSchemaValidationError(error: unknown): error is Error {\n const id = (error as { id?: unknown } | undefined)?.id;\n return error instanceof Error && typeof id === 'string' && SCHEMA_VALIDATION_FAILED_CODES.has(id);\n}\n\n// A resume or time travel the run can't accept: another caller claimed it, it is still running,\n// or it isn't waiting to be resumed.\nconst RUN_CLAIM_CONFLICT_CODES = new Set([\n 'WORKFLOW_RESUME_ALREADY_CLAIMED',\n 'AGENT_RESUME_ALREADY_CLAIMED',\n 'AGENT_RUN_ID_ALREADY_CLAIMED',\n 'WORKFLOW_RUN_NOT_SUSPENDED',\n 'AGENT_RESUME_RUN_NOT_SUSPENDED',\n 'WORKFLOW_TIME_TRAVEL_ALREADY_CLAIMED',\n 'WORKFLOW_TIME_TRAVEL_RUN_RUNNING',\n]);\n\nfunction isRunClaimConflictError(error: unknown): error is Error & { id: string } {\n return error instanceof Error && RUN_CLAIM_CONFLICT_CODES.has((error as { id?: unknown }).id as string);\n}\n\n/**\n * Durable agent errors for a request that conflicts with the run's state:\n * another execution owns the run, it is already being recovered, it lost a\n * concurrent claim, or it is suspended (recover). Matched by id, like the\n * other checks here, so the server doesn't depend on core exporting them.\n */\nconst DURABLE_RUN_CONFLICT_CODES = new Set([\n 'DURABLE_AGENT_RUN_ACTIVE',\n 'DURABLE_AGENT_RECOVER_RUN_ACTIVE_LOCALLY',\n 'DURABLE_AGENT_RECOVER_ALREADY_IN_PROGRESS',\n 'DURABLE_AGENT_RECOVER_RUN_SUSPENDED',\n 'DURABLE_AGENT_RECOVER_RUN_NOT_ACTIVE',\n 'DURABLE_AGENT_EXECUTION_CONFLICT',\n]);\n\nfunction isDurableRunConflictError(error: unknown): error is Error {\n const id = (error as { id?: unknown } | undefined)?.id;\n return error instanceof Error && typeof id === 'string' && DURABLE_RUN_CONFLICT_CODES.has(id);\n}\n\nconst FEEDBACK_REVIEW_STATUS_CONFLICT_CODE = 'OBSERVABILITY_UPDATE_FEEDBACK_REVIEW_STATUS_CONFLICT';\n\nfunction isFeedbackReviewStatusConflictError(error: unknown): error is Error {\n return error instanceof Error && (error as { id?: unknown }).id === FEEDBACK_REVIEW_STATUS_CONFLICT_CODE;\n}\n\n/**\n * Matches the `OBSERVABILITY_STORAGE_*_NOT_IMPLEMENTED` MastraError the base\n * observability store throws for every optional method a store doesn't\n * implement. Checked by id (not `instanceof`) so it holds across duplicated\n * `@mastra/core` installs.\n */\nfunction isObservabilityStorageNotImplementedError(error: unknown): error is Error {\n const id = error && typeof error === 'object' && 'id' in error ? error.id : undefined;\n return typeof id === 'string' && id.startsWith('OBSERVABILITY_STORAGE_') && id.endsWith('_NOT_IMPLEMENTED');\n}\n\n/**\n * Structural check for ZodError instances.\n *\n * Avoids `instanceof ZodError` because consumers can resolve `'zod'` to a\n * different package instance (e.g. `zod@^3`) than the one a server adapter is\n * bundled with (`zod@^4`). In that case `instanceof` is false and validation\n * errors fall through to a generic response that drops field-path information.\n *\n * See https://github.com/mastra-ai/mastra/issues/17167.\n */\nexport function isZodError(error: unknown): error is ZodError<any> {\n return (\n !!error &&\n typeof error === 'object' &&\n (error as { name?: unknown }).name === 'ZodError' &&\n Array.isArray((error as { issues?: unknown }).issues)\n );\n}\n\n/**\n * Formats a ZodError into a structured validation error response.\n * Returns an object with an error message and an array of field-specific issues.\n */\nexport function formatZodError(\n error: ZodErrorLike,\n context: string,\n): { error: string; issues: Array<{ field: string; message: string }> } {\n const issues = error.issues.map(e => ({\n field: e.path.length > 0 ? e.path.map(p => String(p)).join('.') : 'root',\n message: e.message,\n }));\n\n return {\n error: `Invalid ${context}`,\n issues,\n };\n}\n\n// Helper to handle errors consistently\nexport function handleError(error: unknown, defaultMessage: string): never {\n if (isModelNotAllowedError(error)) {\n const body = {\n error: {\n code: error.code,\n message: error.message,\n allowed: error.allowed,\n attempted: error.attempted,\n offendingLabel: error.offendingLabel,\n },\n };\n const res = new Response(JSON.stringify(body), {\n status: 422,\n headers: { 'content-type': 'application/json' },\n });\n throw new HTTPException(422, {\n res,\n message: error.message,\n cause: error,\n });\n }\n\n // A losing concurrent resume or time travel, or a recover of a run that is live or suspended, is\n // a conflict on run state, not a malformed request, so it maps to 409 and clients can\n // distinguish it from a 400/500 and re-read the run.\n if (isRunClaimConflictError(error) || isDurableRunConflictError(error)) {\n const res = isRunClaimConflictError(error)\n ? new Response(JSON.stringify({ error: error.message, code: error.id }), {\n status: 409,\n headers: { 'content-type': 'application/json' },\n })\n : undefined;\n throw new HTTPException(409, {\n res,\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n // The feedback row changed under a review-status update, so the caller re-reads and retries;\n // that is a conflict, not a broken store.\n if (isFeedbackReviewStatusConflictError(error)) {\n throw new HTTPException(409, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n if (isSchemaValidationError(error)) {\n throw new HTTPException(400, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n // Optional observability APIs (feedback, metrics, logs, scores, ...) throw\n // `*_NOT_IMPLEMENTED` on stores that don't support them. That's a missing\n // capability, not a server fault, so it maps to 501 — which server adapters\n // log as a warning instead of an error. The message is preserved because\n // clients match on it to detect unsupported operations. Clients should check\n // `GET /observability/capabilities` before calling optional routes.\n if (isObservabilityStorageNotImplementedError(error)) {\n throw new HTTPException(501, {\n message: error.message,\n stack: error.stack,\n cause: error,\n });\n }\n\n const apiError = error as ApiError;\n\n const apiErrorStatus = apiError.status || apiError.details?.status || 500;\n\n throw new HTTPException(apiErrorStatus as StatusCode, {\n message: apiError.message || defaultMessage,\n stack: apiError.stack,\n cause: apiError.cause,\n });\n}\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
3
|
const require_server_handlers_authorship = require("./authorship.cjs");
|
|
4
|
-
const require_editor_builder = require("../../editor-builder-
|
|
4
|
+
const require_editor_builder = require("../../editor-builder-CBBZxQhO.cjs");
|
|
5
5
|
// src/server/handlers/favorites-enrichment.ts
|
|
6
6
|
/**
|
|
7
7
|
* Resolve the EE feature flag plus the caller's favorited set for a list of
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getCallerAuthorId } from "./authorship.js";
|
|
2
|
-
import { i as isBuilderFeatureEnabled } from "../../editor-builder-
|
|
2
|
+
import { i as isBuilderFeatureEnabled } from "../../editor-builder-o9xJHa96.js";
|
|
3
3
|
// src/server/handlers/favorites-enrichment.ts
|
|
4
4
|
/**
|
|
5
5
|
* Resolve the EE feature flag plus the caller's favorited set for a list of
|
|
@@ -180,6 +180,9 @@ function toLocalOMRecord(gr) {
|
|
|
180
180
|
bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? void 0
|
|
181
181
|
};
|
|
182
182
|
}
|
|
183
|
+
function isV2GatewayKey(key) {
|
|
184
|
+
return key.startsWith("msk-gateway-") || key.startsWith("mskv2_");
|
|
185
|
+
}
|
|
183
186
|
let _gatewayClient;
|
|
184
187
|
/**
|
|
185
188
|
* Get a GatewayMemoryClient instance, or null if gateway is not configured.
|
|
@@ -188,7 +191,7 @@ function getGatewayClient() {
|
|
|
188
191
|
if (_gatewayClient !== void 0) return _gatewayClient;
|
|
189
192
|
const url = process.env.MASTRA_GATEWAY_URL || "https://gateway-api.mastra.ai";
|
|
190
193
|
const key = process.env.MASTRA_GATEWAY_API_KEY;
|
|
191
|
-
if (!key) {
|
|
194
|
+
if (!key || isV2GatewayKey(key)) {
|
|
192
195
|
_gatewayClient = null;
|
|
193
196
|
return null;
|
|
194
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-memory-client.cjs","names":[],"sources":["../../../src/server/handlers/gateway-memory-client.ts"],"sourcesContent":["/**\n * HTTP client for the Gateway memory REST API.\n * Used to proxy memory operations from the local Mastra server to the remote gateway\n * when agents use `mastra/` model strings.\n */\n\ninterface GatewayThread {\n id: string;\n projectId: string;\n resourceId: string;\n title: string | null;\n metadata: Record<string, unknown> | null;\n createdAt: string;\n updatedAt: string;\n}\n\ninterface GatewayMessage {\n id: string;\n threadId: string;\n role: string;\n content: unknown;\n type: string;\n createdAt: string;\n}\n\ninterface GatewayBufferedObservationChunk {\n id?: string;\n cycleId: string;\n observations: string;\n tokenCount: number;\n messageIds?: string[];\n messageTokens: number;\n lastObservedAt?: string | null;\n createdAt?: string | null;\n suggestedContinuation?: string;\n currentTask?: string;\n threadTitle?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\ninterface GatewayOMRecord {\n id: string;\n scope: string;\n threadId: string | null;\n resourceId: string;\n createdAt: string;\n updatedAt: string;\n lastObservedAt: string | null;\n originType: string;\n generationCount: number;\n activeObservations: unknown;\n totalTokensObserved: number;\n observationTokenCount: number;\n pendingMessageTokens: number;\n isReflecting: boolean;\n isObserving: boolean;\n isBufferingObservation: boolean;\n isBufferingReflection: boolean;\n config?: Record<string, unknown>;\n bufferedObservationChunks?: GatewayBufferedObservationChunk[];\n bufferedReflection?: string | null;\n bufferedReflectionTokens?: number | null;\n bufferedReflectionInputTokens?: number | null;\n}\n\nexport class GatewayMemoryClient {\n private baseUrl: string;\n private apiKey: string;\n\n constructor(baseUrl: string, apiKey: string) {\n // Strip trailing slashes and /v1 suffix so both URL forms resolve correctly\n this.baseUrl = baseUrl.replace(/\\/+$/, '').replace(/\\/v1$/, '') + '/v1/memory';\n this.apiKey = apiKey;\n }\n\n private threadPath(threadId: string): string {\n return `/threads/${encodeURIComponent(threadId)}`;\n }\n\n private async request<T>(path: string, options: RequestInit = {}): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 10_000);\n try {\n const res = await fetch(url, {\n ...options,\n signal: options.signal ?? controller.signal,\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n ...((options.headers as Record<string, string>) || {}),\n },\n });\n\n if (!res.ok) {\n const body = await res.text().catch(() => '');\n throw new Error(`Gateway API error ${res.status}: ${body}`);\n }\n\n return res.json() as Promise<T>;\n } finally {\n clearTimeout(timeout);\n }\n }\n\n // ── Threads ──────────────────────────────────────────────────\n\n async listThreads(params: {\n resourceId?: string;\n limit?: number;\n offset?: number;\n }): Promise<{ threads: GatewayThread[]; total: number }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n return this.request(`/threads${qs ? '?' + qs : ''}`);\n }\n\n async getThread(threadId: string): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId));\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async createThread(params: {\n id?: string;\n resourceId: string;\n title?: string;\n metadata?: Record<string, unknown>;\n }): Promise<{ thread: GatewayThread }> {\n return this.request('/threads', {\n method: 'POST',\n body: JSON.stringify(params),\n });\n }\n\n async updateThread(\n threadId: string,\n params: { title?: string; metadata?: Record<string, unknown> },\n ): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId), {\n method: 'PATCH',\n body: JSON.stringify(params),\n });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async deleteThread(threadId: string): Promise<{ ok: boolean }> {\n try {\n return await this.request(this.threadPath(threadId), { method: 'DELETE' });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { ok: false };\n throw e;\n }\n }\n\n // ── Messages ─────────────────────────────────────────────────\n\n async listMessages(\n threadId: string,\n params: { limit?: number; offset?: number; order?: string },\n ): Promise<{ messages: GatewayMessage[]; total: number } | null> {\n const query = new URLSearchParams();\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n if (params.order) query.set('order', params.order);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/messages${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n // ── Observational Memory ─────────────────────────────────────\n\n async getObservations(threadId: string, resourceId?: string): Promise<{ observations: unknown }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n return this.request(`${this.threadPath(threadId)}/observations${qs ? '?' + qs : ''}`);\n }\n\n async getObservationRecord(threadId: string, resourceId?: string): Promise<{ record: GatewayOMRecord | null }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/record${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { record: null };\n throw e;\n }\n }\n\n async getObservationHistory(\n threadId: string,\n params: { resourceId?: string; limit?: number; from?: Date; to?: Date; offset?: number },\n ): Promise<{ records: GatewayOMRecord[] }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.from) query.set('from', params.from.toISOString());\n if (params.to) query.set('to', params.to.toISOString());\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/history${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { records: [] };\n throw e;\n }\n }\n}\n\n// ── Helpers ──────────────────────────────────────────────────────\n\n/**\n * Convert a gateway thread to the local server thread format.\n */\nexport function toLocalThread(gt: GatewayThread) {\n return {\n id: gt.id,\n resourceId: gt.resourceId,\n title: gt.title ?? '',\n metadata: gt.metadata ?? {},\n createdAt: new Date(gt.createdAt),\n updatedAt: new Date(gt.updatedAt),\n };\n}\n\n/**\n * Convert a gateway message to the local server message format.\n */\nexport function toLocalMessage(gm: GatewayMessage) {\n return {\n id: gm.id,\n threadId: gm.threadId,\n role: gm.role,\n content: gm.content,\n type: gm.type,\n createdAt: new Date(gm.createdAt),\n };\n}\n\n/**\n * Convert a gateway OM record to the local server OM record format.\n */\nexport function toLocalOMRecord(gr: GatewayOMRecord) {\n return {\n id: gr.id,\n scope: gr.scope as 'thread' | 'resource',\n threadId: gr.threadId,\n resourceId: gr.resourceId,\n createdAt: new Date(gr.createdAt),\n updatedAt: new Date(gr.updatedAt),\n lastObservedAt: gr.lastObservedAt ? new Date(gr.lastObservedAt) : undefined,\n originType: gr.originType as 'initial' | 'reflection' | 'observation',\n generationCount: gr.generationCount,\n activeObservations: (gr.activeObservations ?? '') as string,\n totalTokensObserved: gr.totalTokensObserved,\n observationTokenCount: gr.observationTokenCount,\n pendingMessageTokens: gr.pendingMessageTokens,\n isReflecting: gr.isReflecting,\n isObserving: gr.isObserving,\n isBufferingObservation: gr.isBufferingObservation,\n isBufferingReflection: gr.isBufferingReflection,\n config: gr.config ?? {},\n bufferedObservationChunks: gr.bufferedObservationChunks?.map(chunk => ({\n ...chunk,\n lastObservedAt: chunk.lastObservedAt ? new Date(chunk.lastObservedAt) : undefined,\n createdAt: chunk.createdAt ? new Date(chunk.createdAt) : undefined,\n })),\n bufferedReflection: gr.bufferedReflection ?? undefined,\n bufferedReflectionTokens: gr.bufferedReflectionTokens ?? undefined,\n bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? undefined,\n };\n}\n\n// Singleton-ish lazy instance\nlet _gatewayClient: GatewayMemoryClient | null | undefined;\n\n/**\n * Get a GatewayMemoryClient instance, or null if gateway is not configured.\n */\nexport function getGatewayClient(): GatewayMemoryClient | null {\n if (_gatewayClient !== undefined) return _gatewayClient;\n const url = process.env.MASTRA_GATEWAY_URL || 'https://gateway-api.mastra.ai';\n const key = process.env.MASTRA_GATEWAY_API_KEY;\n if (!key) {\n _gatewayClient = null;\n return null;\n }\n _gatewayClient = new GatewayMemoryClient(url, key);\n return _gatewayClient;\n}\n\n/**\n * Check if an agent uses a gateway model (mastra/ prefix).\n * Sync version — can only check agent.model string directly.\n */\n\nexport function isGatewayAgent(agent: any): boolean {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n } catch {\n // Ignore errors during detection\n }\n return false;\n}\n\n/**\n * Async version of isGatewayAgent that can await getLLM().\n * Checks multiple paths to detect if an agent uses a mastra/ gateway model:\n * 1. agent.model as raw string (most reliable for directly configured agents)\n * 2. Resolved LLM's underlying ModelRouterLanguageModel config.routerId\n * 3. Resolved LLM's getModel() to access the router's config\n */\n\nexport async function isGatewayAgentAsync(agent: any): Promise<boolean> {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n\n // Check 1: agent.model is a raw string like 'mastra/openai/gpt-5-mini'\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n\n // Check 2: Resolve the LLM and check the router's config.routerId\n // llm.getModelId() returns stripped ID (e.g., 'gpt-5-mini'), so we need\n // to access the underlying ModelRouterLanguageModel's config.routerId\n if (typeof agent.getLLM === 'function') {\n const llm = await Promise.resolve(agent.getLLM({}));\n if (llm) {\n // Try to access the underlying model's routerId via getModel()\n const llmAny = llm as Record<string, unknown>;\n if (typeof llmAny.getModel === 'function') {\n const underlyingModel = (llmAny as { getModel: () => unknown }).getModel();\n const modelAny = underlyingModel as Record<string, unknown>;\n // ModelRouterLanguageModel stores routerId in private config\n if (modelAny?.config && typeof modelAny.config === 'object') {\n const routerId = (modelAny.config as Record<string, unknown>).routerId;\n if (typeof routerId === 'string' && routerId.startsWith('mastra/')) {\n return true;\n }\n }\n }\n }\n }\n } catch {\n // Detection failed — not a gateway agent\n }\n return false;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway-memory-client.cjs","names":[],"sources":["../../../src/server/handlers/gateway-memory-client.ts"],"sourcesContent":["/**\n * HTTP client for the Gateway memory REST API.\n * Used to proxy memory operations from the local Mastra server to the remote gateway\n * when agents use `mastra/` model strings.\n */\n\ninterface GatewayThread {\n id: string;\n projectId: string;\n resourceId: string;\n title: string | null;\n metadata: Record<string, unknown> | null;\n createdAt: string;\n updatedAt: string;\n}\n\ninterface GatewayMessage {\n id: string;\n threadId: string;\n role: string;\n content: unknown;\n type: string;\n createdAt: string;\n}\n\ninterface GatewayBufferedObservationChunk {\n id?: string;\n cycleId: string;\n observations: string;\n tokenCount: number;\n messageIds?: string[];\n messageTokens: number;\n lastObservedAt?: string | null;\n createdAt?: string | null;\n suggestedContinuation?: string;\n currentTask?: string;\n threadTitle?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\ninterface GatewayOMRecord {\n id: string;\n scope: string;\n threadId: string | null;\n resourceId: string;\n createdAt: string;\n updatedAt: string;\n lastObservedAt: string | null;\n originType: string;\n generationCount: number;\n activeObservations: unknown;\n totalTokensObserved: number;\n observationTokenCount: number;\n pendingMessageTokens: number;\n isReflecting: boolean;\n isObserving: boolean;\n isBufferingObservation: boolean;\n isBufferingReflection: boolean;\n config?: Record<string, unknown>;\n bufferedObservationChunks?: GatewayBufferedObservationChunk[];\n bufferedReflection?: string | null;\n bufferedReflectionTokens?: number | null;\n bufferedReflectionInputTokens?: number | null;\n}\n\nexport class GatewayMemoryClient {\n private baseUrl: string;\n private apiKey: string;\n\n constructor(baseUrl: string, apiKey: string) {\n // Strip trailing slashes and /v1 suffix so both URL forms resolve correctly\n this.baseUrl = baseUrl.replace(/\\/+$/, '').replace(/\\/v1$/, '') + '/v1/memory';\n this.apiKey = apiKey;\n }\n\n private threadPath(threadId: string): string {\n return `/threads/${encodeURIComponent(threadId)}`;\n }\n\n private async request<T>(path: string, options: RequestInit = {}): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 10_000);\n try {\n const res = await fetch(url, {\n ...options,\n signal: options.signal ?? controller.signal,\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n ...((options.headers as Record<string, string>) || {}),\n },\n });\n\n if (!res.ok) {\n const body = await res.text().catch(() => '');\n throw new Error(`Gateway API error ${res.status}: ${body}`);\n }\n\n return res.json() as Promise<T>;\n } finally {\n clearTimeout(timeout);\n }\n }\n\n // ── Threads ──────────────────────────────────────────────────\n\n async listThreads(params: {\n resourceId?: string;\n limit?: number;\n offset?: number;\n }): Promise<{ threads: GatewayThread[]; total: number }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n return this.request(`/threads${qs ? '?' + qs : ''}`);\n }\n\n async getThread(threadId: string): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId));\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async createThread(params: {\n id?: string;\n resourceId: string;\n title?: string;\n metadata?: Record<string, unknown>;\n }): Promise<{ thread: GatewayThread }> {\n return this.request('/threads', {\n method: 'POST',\n body: JSON.stringify(params),\n });\n }\n\n async updateThread(\n threadId: string,\n params: { title?: string; metadata?: Record<string, unknown> },\n ): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId), {\n method: 'PATCH',\n body: JSON.stringify(params),\n });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async deleteThread(threadId: string): Promise<{ ok: boolean }> {\n try {\n return await this.request(this.threadPath(threadId), { method: 'DELETE' });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { ok: false };\n throw e;\n }\n }\n\n // ── Messages ─────────────────────────────────────────────────\n\n async listMessages(\n threadId: string,\n params: { limit?: number; offset?: number; order?: string },\n ): Promise<{ messages: GatewayMessage[]; total: number } | null> {\n const query = new URLSearchParams();\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n if (params.order) query.set('order', params.order);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/messages${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n // ── Observational Memory ─────────────────────────────────────\n\n async getObservations(threadId: string, resourceId?: string): Promise<{ observations: unknown }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n return this.request(`${this.threadPath(threadId)}/observations${qs ? '?' + qs : ''}`);\n }\n\n async getObservationRecord(threadId: string, resourceId?: string): Promise<{ record: GatewayOMRecord | null }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/record${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { record: null };\n throw e;\n }\n }\n\n async getObservationHistory(\n threadId: string,\n params: { resourceId?: string; limit?: number; from?: Date; to?: Date; offset?: number },\n ): Promise<{ records: GatewayOMRecord[] }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.from) query.set('from', params.from.toISOString());\n if (params.to) query.set('to', params.to.toISOString());\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/history${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { records: [] };\n throw e;\n }\n }\n}\n\n// ── Helpers ──────────────────────────────────────────────────────\n\n/**\n * Convert a gateway thread to the local server thread format.\n */\nexport function toLocalThread(gt: GatewayThread) {\n return {\n id: gt.id,\n resourceId: gt.resourceId,\n title: gt.title ?? '',\n metadata: gt.metadata ?? {},\n createdAt: new Date(gt.createdAt),\n updatedAt: new Date(gt.updatedAt),\n };\n}\n\n/**\n * Convert a gateway message to the local server message format.\n */\nexport function toLocalMessage(gm: GatewayMessage) {\n return {\n id: gm.id,\n threadId: gm.threadId,\n role: gm.role,\n content: gm.content,\n type: gm.type,\n createdAt: new Date(gm.createdAt),\n };\n}\n\n/**\n * Convert a gateway OM record to the local server OM record format.\n */\nexport function toLocalOMRecord(gr: GatewayOMRecord) {\n return {\n id: gr.id,\n scope: gr.scope as 'thread' | 'resource',\n threadId: gr.threadId,\n resourceId: gr.resourceId,\n createdAt: new Date(gr.createdAt),\n updatedAt: new Date(gr.updatedAt),\n lastObservedAt: gr.lastObservedAt ? new Date(gr.lastObservedAt) : undefined,\n originType: gr.originType as 'initial' | 'reflection' | 'observation',\n generationCount: gr.generationCount,\n activeObservations: (gr.activeObservations ?? '') as string,\n totalTokensObserved: gr.totalTokensObserved,\n observationTokenCount: gr.observationTokenCount,\n pendingMessageTokens: gr.pendingMessageTokens,\n isReflecting: gr.isReflecting,\n isObserving: gr.isObserving,\n isBufferingObservation: gr.isBufferingObservation,\n isBufferingReflection: gr.isBufferingReflection,\n config: gr.config ?? {},\n bufferedObservationChunks: gr.bufferedObservationChunks?.map(chunk => ({\n ...chunk,\n lastObservedAt: chunk.lastObservedAt ? new Date(chunk.lastObservedAt) : undefined,\n createdAt: chunk.createdAt ? new Date(chunk.createdAt) : undefined,\n })),\n bufferedReflection: gr.bufferedReflection ?? undefined,\n bufferedReflectionTokens: gr.bufferedReflectionTokens ?? undefined,\n bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? undefined,\n };\n}\n\nfunction isV2GatewayKey(key: string): boolean {\n return key.startsWith('msk-gateway-') || key.startsWith('mskv2_');\n}\n\n// Singleton-ish lazy instance\nlet _gatewayClient: GatewayMemoryClient | null | undefined;\n\n/**\n * Get a GatewayMemoryClient instance, or null if gateway is not configured.\n */\nexport function getGatewayClient(): GatewayMemoryClient | null {\n if (_gatewayClient !== undefined) return _gatewayClient;\n const url = process.env.MASTRA_GATEWAY_URL || 'https://gateway-api.mastra.ai';\n const key = process.env.MASTRA_GATEWAY_API_KEY;\n // v2 (organization) keys are served by a gateway without the memory API, so memory stays local.\n if (!key || isV2GatewayKey(key)) {\n _gatewayClient = null;\n return null;\n }\n _gatewayClient = new GatewayMemoryClient(url, key);\n return _gatewayClient;\n}\n\n/**\n * Check if an agent uses a gateway model (mastra/ prefix).\n * Sync version — can only check agent.model string directly.\n */\n\nexport function isGatewayAgent(agent: any): boolean {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n } catch {\n // Ignore errors during detection\n }\n return false;\n}\n\n/**\n * Async version of isGatewayAgent that can await getLLM().\n * Checks multiple paths to detect if an agent uses a mastra/ gateway model:\n * 1. agent.model as raw string (most reliable for directly configured agents)\n * 2. Resolved LLM's underlying ModelRouterLanguageModel config.routerId\n * 3. Resolved LLM's getModel() to access the router's config\n */\n\nexport async function isGatewayAgentAsync(agent: any): Promise<boolean> {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n\n // Check 1: agent.model is a raw string like 'mastra/openai/gpt-5-mini'\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n\n // Check 2: Resolve the LLM and check the router's config.routerId\n // llm.getModelId() returns stripped ID (e.g., 'gpt-5-mini'), so we need\n // to access the underlying ModelRouterLanguageModel's config.routerId\n if (typeof agent.getLLM === 'function') {\n const llm = await Promise.resolve(agent.getLLM({}));\n if (llm) {\n // Try to access the underlying model's routerId via getModel()\n const llmAny = llm as Record<string, unknown>;\n if (typeof llmAny.getModel === 'function') {\n const underlyingModel = (llmAny as { getModel: () => unknown }).getModel();\n const modelAny = underlyingModel as Record<string, unknown>;\n // ModelRouterLanguageModel stores routerId in private config\n if (modelAny?.config && typeof modelAny.config === 'object') {\n const routerId = (modelAny.config as Record<string, unknown>).routerId;\n if (typeof routerId === 'string' && routerId.startsWith('mastra/')) {\n return true;\n }\n }\n }\n }\n }\n } catch {\n // Detection failed — not a gateway agent\n }\n return false;\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-memory-client.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/gateway-memory-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"gateway-memory-client.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/gateway-memory-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -178,6 +178,9 @@ function toLocalOMRecord(gr) {
|
|
|
178
178
|
bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? void 0
|
|
179
179
|
};
|
|
180
180
|
}
|
|
181
|
+
function isV2GatewayKey(key) {
|
|
182
|
+
return key.startsWith("msk-gateway-") || key.startsWith("mskv2_");
|
|
183
|
+
}
|
|
181
184
|
let _gatewayClient;
|
|
182
185
|
/**
|
|
183
186
|
* Get a GatewayMemoryClient instance, or null if gateway is not configured.
|
|
@@ -186,7 +189,7 @@ function getGatewayClient() {
|
|
|
186
189
|
if (_gatewayClient !== void 0) return _gatewayClient;
|
|
187
190
|
const url = process.env.MASTRA_GATEWAY_URL || "https://gateway-api.mastra.ai";
|
|
188
191
|
const key = process.env.MASTRA_GATEWAY_API_KEY;
|
|
189
|
-
if (!key) {
|
|
192
|
+
if (!key || isV2GatewayKey(key)) {
|
|
190
193
|
_gatewayClient = null;
|
|
191
194
|
return null;
|
|
192
195
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-memory-client.js","names":[],"sources":["../../../src/server/handlers/gateway-memory-client.ts"],"sourcesContent":["/**\n * HTTP client for the Gateway memory REST API.\n * Used to proxy memory operations from the local Mastra server to the remote gateway\n * when agents use `mastra/` model strings.\n */\n\ninterface GatewayThread {\n id: string;\n projectId: string;\n resourceId: string;\n title: string | null;\n metadata: Record<string, unknown> | null;\n createdAt: string;\n updatedAt: string;\n}\n\ninterface GatewayMessage {\n id: string;\n threadId: string;\n role: string;\n content: unknown;\n type: string;\n createdAt: string;\n}\n\ninterface GatewayBufferedObservationChunk {\n id?: string;\n cycleId: string;\n observations: string;\n tokenCount: number;\n messageIds?: string[];\n messageTokens: number;\n lastObservedAt?: string | null;\n createdAt?: string | null;\n suggestedContinuation?: string;\n currentTask?: string;\n threadTitle?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\ninterface GatewayOMRecord {\n id: string;\n scope: string;\n threadId: string | null;\n resourceId: string;\n createdAt: string;\n updatedAt: string;\n lastObservedAt: string | null;\n originType: string;\n generationCount: number;\n activeObservations: unknown;\n totalTokensObserved: number;\n observationTokenCount: number;\n pendingMessageTokens: number;\n isReflecting: boolean;\n isObserving: boolean;\n isBufferingObservation: boolean;\n isBufferingReflection: boolean;\n config?: Record<string, unknown>;\n bufferedObservationChunks?: GatewayBufferedObservationChunk[];\n bufferedReflection?: string | null;\n bufferedReflectionTokens?: number | null;\n bufferedReflectionInputTokens?: number | null;\n}\n\nexport class GatewayMemoryClient {\n private baseUrl: string;\n private apiKey: string;\n\n constructor(baseUrl: string, apiKey: string) {\n // Strip trailing slashes and /v1 suffix so both URL forms resolve correctly\n this.baseUrl = baseUrl.replace(/\\/+$/, '').replace(/\\/v1$/, '') + '/v1/memory';\n this.apiKey = apiKey;\n }\n\n private threadPath(threadId: string): string {\n return `/threads/${encodeURIComponent(threadId)}`;\n }\n\n private async request<T>(path: string, options: RequestInit = {}): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 10_000);\n try {\n const res = await fetch(url, {\n ...options,\n signal: options.signal ?? controller.signal,\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n ...((options.headers as Record<string, string>) || {}),\n },\n });\n\n if (!res.ok) {\n const body = await res.text().catch(() => '');\n throw new Error(`Gateway API error ${res.status}: ${body}`);\n }\n\n return res.json() as Promise<T>;\n } finally {\n clearTimeout(timeout);\n }\n }\n\n // ── Threads ──────────────────────────────────────────────────\n\n async listThreads(params: {\n resourceId?: string;\n limit?: number;\n offset?: number;\n }): Promise<{ threads: GatewayThread[]; total: number }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n return this.request(`/threads${qs ? '?' + qs : ''}`);\n }\n\n async getThread(threadId: string): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId));\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async createThread(params: {\n id?: string;\n resourceId: string;\n title?: string;\n metadata?: Record<string, unknown>;\n }): Promise<{ thread: GatewayThread }> {\n return this.request('/threads', {\n method: 'POST',\n body: JSON.stringify(params),\n });\n }\n\n async updateThread(\n threadId: string,\n params: { title?: string; metadata?: Record<string, unknown> },\n ): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId), {\n method: 'PATCH',\n body: JSON.stringify(params),\n });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async deleteThread(threadId: string): Promise<{ ok: boolean }> {\n try {\n return await this.request(this.threadPath(threadId), { method: 'DELETE' });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { ok: false };\n throw e;\n }\n }\n\n // ── Messages ─────────────────────────────────────────────────\n\n async listMessages(\n threadId: string,\n params: { limit?: number; offset?: number; order?: string },\n ): Promise<{ messages: GatewayMessage[]; total: number } | null> {\n const query = new URLSearchParams();\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n if (params.order) query.set('order', params.order);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/messages${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n // ── Observational Memory ─────────────────────────────────────\n\n async getObservations(threadId: string, resourceId?: string): Promise<{ observations: unknown }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n return this.request(`${this.threadPath(threadId)}/observations${qs ? '?' + qs : ''}`);\n }\n\n async getObservationRecord(threadId: string, resourceId?: string): Promise<{ record: GatewayOMRecord | null }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/record${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { record: null };\n throw e;\n }\n }\n\n async getObservationHistory(\n threadId: string,\n params: { resourceId?: string; limit?: number; from?: Date; to?: Date; offset?: number },\n ): Promise<{ records: GatewayOMRecord[] }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.from) query.set('from', params.from.toISOString());\n if (params.to) query.set('to', params.to.toISOString());\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/history${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { records: [] };\n throw e;\n }\n }\n}\n\n// ── Helpers ──────────────────────────────────────────────────────\n\n/**\n * Convert a gateway thread to the local server thread format.\n */\nexport function toLocalThread(gt: GatewayThread) {\n return {\n id: gt.id,\n resourceId: gt.resourceId,\n title: gt.title ?? '',\n metadata: gt.metadata ?? {},\n createdAt: new Date(gt.createdAt),\n updatedAt: new Date(gt.updatedAt),\n };\n}\n\n/**\n * Convert a gateway message to the local server message format.\n */\nexport function toLocalMessage(gm: GatewayMessage) {\n return {\n id: gm.id,\n threadId: gm.threadId,\n role: gm.role,\n content: gm.content,\n type: gm.type,\n createdAt: new Date(gm.createdAt),\n };\n}\n\n/**\n * Convert a gateway OM record to the local server OM record format.\n */\nexport function toLocalOMRecord(gr: GatewayOMRecord) {\n return {\n id: gr.id,\n scope: gr.scope as 'thread' | 'resource',\n threadId: gr.threadId,\n resourceId: gr.resourceId,\n createdAt: new Date(gr.createdAt),\n updatedAt: new Date(gr.updatedAt),\n lastObservedAt: gr.lastObservedAt ? new Date(gr.lastObservedAt) : undefined,\n originType: gr.originType as 'initial' | 'reflection' | 'observation',\n generationCount: gr.generationCount,\n activeObservations: (gr.activeObservations ?? '') as string,\n totalTokensObserved: gr.totalTokensObserved,\n observationTokenCount: gr.observationTokenCount,\n pendingMessageTokens: gr.pendingMessageTokens,\n isReflecting: gr.isReflecting,\n isObserving: gr.isObserving,\n isBufferingObservation: gr.isBufferingObservation,\n isBufferingReflection: gr.isBufferingReflection,\n config: gr.config ?? {},\n bufferedObservationChunks: gr.bufferedObservationChunks?.map(chunk => ({\n ...chunk,\n lastObservedAt: chunk.lastObservedAt ? new Date(chunk.lastObservedAt) : undefined,\n createdAt: chunk.createdAt ? new Date(chunk.createdAt) : undefined,\n })),\n bufferedReflection: gr.bufferedReflection ?? undefined,\n bufferedReflectionTokens: gr.bufferedReflectionTokens ?? undefined,\n bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? undefined,\n };\n}\n\n// Singleton-ish lazy instance\nlet _gatewayClient: GatewayMemoryClient | null | undefined;\n\n/**\n * Get a GatewayMemoryClient instance, or null if gateway is not configured.\n */\nexport function getGatewayClient(): GatewayMemoryClient | null {\n if (_gatewayClient !== undefined) return _gatewayClient;\n const url = process.env.MASTRA_GATEWAY_URL || 'https://gateway-api.mastra.ai';\n const key = process.env.MASTRA_GATEWAY_API_KEY;\n if (!key) {\n _gatewayClient = null;\n return null;\n }\n _gatewayClient = new GatewayMemoryClient(url, key);\n return _gatewayClient;\n}\n\n/**\n * Check if an agent uses a gateway model (mastra/ prefix).\n * Sync version — can only check agent.model string directly.\n */\n\nexport function isGatewayAgent(agent: any): boolean {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n } catch {\n // Ignore errors during detection\n }\n return false;\n}\n\n/**\n * Async version of isGatewayAgent that can await getLLM().\n * Checks multiple paths to detect if an agent uses a mastra/ gateway model:\n * 1. agent.model as raw string (most reliable for directly configured agents)\n * 2. Resolved LLM's underlying ModelRouterLanguageModel config.routerId\n * 3. Resolved LLM's getModel() to access the router's config\n */\n\nexport async function isGatewayAgentAsync(agent: any): Promise<boolean> {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n\n // Check 1: agent.model is a raw string like 'mastra/openai/gpt-5-mini'\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n\n // Check 2: Resolve the LLM and check the router's config.routerId\n // llm.getModelId() returns stripped ID (e.g., 'gpt-5-mini'), so we need\n // to access the underlying ModelRouterLanguageModel's config.routerId\n if (typeof agent.getLLM === 'function') {\n const llm = await Promise.resolve(agent.getLLM({}));\n if (llm) {\n // Try to access the underlying model's routerId via getModel()\n const llmAny = llm as Record<string, unknown>;\n if (typeof llmAny.getModel === 'function') {\n const underlyingModel = (llmAny as { getModel: () => unknown }).getModel();\n const modelAny = underlyingModel as Record<string, unknown>;\n // ModelRouterLanguageModel stores routerId in private config\n if (modelAny?.config && typeof modelAny.config === 'object') {\n const routerId = (modelAny.config as Record<string, unknown>).routerId;\n if (typeof routerId === 'string' && routerId.startsWith('mastra/')) {\n return true;\n }\n }\n }\n }\n }\n } catch {\n // Detection failed — not a gateway agent\n }\n return false;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gateway-memory-client.js","names":[],"sources":["../../../src/server/handlers/gateway-memory-client.ts"],"sourcesContent":["/**\n * HTTP client for the Gateway memory REST API.\n * Used to proxy memory operations from the local Mastra server to the remote gateway\n * when agents use `mastra/` model strings.\n */\n\ninterface GatewayThread {\n id: string;\n projectId: string;\n resourceId: string;\n title: string | null;\n metadata: Record<string, unknown> | null;\n createdAt: string;\n updatedAt: string;\n}\n\ninterface GatewayMessage {\n id: string;\n threadId: string;\n role: string;\n content: unknown;\n type: string;\n createdAt: string;\n}\n\ninterface GatewayBufferedObservationChunk {\n id?: string;\n cycleId: string;\n observations: string;\n tokenCount: number;\n messageIds?: string[];\n messageTokens: number;\n lastObservedAt?: string | null;\n createdAt?: string | null;\n suggestedContinuation?: string;\n currentTask?: string;\n threadTitle?: string;\n extractedValues?: Record<string, unknown>;\n extractionFailures?: Array<{ slug: string; error: string }>;\n}\n\ninterface GatewayOMRecord {\n id: string;\n scope: string;\n threadId: string | null;\n resourceId: string;\n createdAt: string;\n updatedAt: string;\n lastObservedAt: string | null;\n originType: string;\n generationCount: number;\n activeObservations: unknown;\n totalTokensObserved: number;\n observationTokenCount: number;\n pendingMessageTokens: number;\n isReflecting: boolean;\n isObserving: boolean;\n isBufferingObservation: boolean;\n isBufferingReflection: boolean;\n config?: Record<string, unknown>;\n bufferedObservationChunks?: GatewayBufferedObservationChunk[];\n bufferedReflection?: string | null;\n bufferedReflectionTokens?: number | null;\n bufferedReflectionInputTokens?: number | null;\n}\n\nexport class GatewayMemoryClient {\n private baseUrl: string;\n private apiKey: string;\n\n constructor(baseUrl: string, apiKey: string) {\n // Strip trailing slashes and /v1 suffix so both URL forms resolve correctly\n this.baseUrl = baseUrl.replace(/\\/+$/, '').replace(/\\/v1$/, '') + '/v1/memory';\n this.apiKey = apiKey;\n }\n\n private threadPath(threadId: string): string {\n return `/threads/${encodeURIComponent(threadId)}`;\n }\n\n private async request<T>(path: string, options: RequestInit = {}): Promise<T> {\n const url = `${this.baseUrl}${path}`;\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), 10_000);\n try {\n const res = await fetch(url, {\n ...options,\n signal: options.signal ?? controller.signal,\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n ...((options.headers as Record<string, string>) || {}),\n },\n });\n\n if (!res.ok) {\n const body = await res.text().catch(() => '');\n throw new Error(`Gateway API error ${res.status}: ${body}`);\n }\n\n return res.json() as Promise<T>;\n } finally {\n clearTimeout(timeout);\n }\n }\n\n // ── Threads ──────────────────────────────────────────────────\n\n async listThreads(params: {\n resourceId?: string;\n limit?: number;\n offset?: number;\n }): Promise<{ threads: GatewayThread[]; total: number }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n return this.request(`/threads${qs ? '?' + qs : ''}`);\n }\n\n async getThread(threadId: string): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId));\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async createThread(params: {\n id?: string;\n resourceId: string;\n title?: string;\n metadata?: Record<string, unknown>;\n }): Promise<{ thread: GatewayThread }> {\n return this.request('/threads', {\n method: 'POST',\n body: JSON.stringify(params),\n });\n }\n\n async updateThread(\n threadId: string,\n params: { title?: string; metadata?: Record<string, unknown> },\n ): Promise<{ thread: GatewayThread } | null> {\n try {\n return await this.request(this.threadPath(threadId), {\n method: 'PATCH',\n body: JSON.stringify(params),\n });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n async deleteThread(threadId: string): Promise<{ ok: boolean }> {\n try {\n return await this.request(this.threadPath(threadId), { method: 'DELETE' });\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { ok: false };\n throw e;\n }\n }\n\n // ── Messages ─────────────────────────────────────────────────\n\n async listMessages(\n threadId: string,\n params: { limit?: number; offset?: number; order?: string },\n ): Promise<{ messages: GatewayMessage[]; total: number } | null> {\n const query = new URLSearchParams();\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.offset != null) query.set('offset', String(params.offset));\n if (params.order) query.set('order', params.order);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/messages${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return null;\n throw e;\n }\n }\n\n // ── Observational Memory ─────────────────────────────────────\n\n async getObservations(threadId: string, resourceId?: string): Promise<{ observations: unknown }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n return this.request(`${this.threadPath(threadId)}/observations${qs ? '?' + qs : ''}`);\n }\n\n async getObservationRecord(threadId: string, resourceId?: string): Promise<{ record: GatewayOMRecord | null }> {\n const query = new URLSearchParams();\n if (resourceId) query.set('resourceId', resourceId);\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/record${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { record: null };\n throw e;\n }\n }\n\n async getObservationHistory(\n threadId: string,\n params: { resourceId?: string; limit?: number; from?: Date; to?: Date; offset?: number },\n ): Promise<{ records: GatewayOMRecord[] }> {\n const query = new URLSearchParams();\n if (params.resourceId) query.set('resourceId', params.resourceId);\n if (params.limit != null) query.set('limit', String(params.limit));\n if (params.from) query.set('from', params.from.toISOString());\n if (params.to) query.set('to', params.to.toISOString());\n if (params.offset != null) query.set('offset', String(params.offset));\n const qs = query.toString();\n try {\n return await this.request(`${this.threadPath(threadId)}/observations/history${qs ? '?' + qs : ''}`);\n } catch (e: unknown) {\n if (e instanceof Error && e.message.includes('404')) return { records: [] };\n throw e;\n }\n }\n}\n\n// ── Helpers ──────────────────────────────────────────────────────\n\n/**\n * Convert a gateway thread to the local server thread format.\n */\nexport function toLocalThread(gt: GatewayThread) {\n return {\n id: gt.id,\n resourceId: gt.resourceId,\n title: gt.title ?? '',\n metadata: gt.metadata ?? {},\n createdAt: new Date(gt.createdAt),\n updatedAt: new Date(gt.updatedAt),\n };\n}\n\n/**\n * Convert a gateway message to the local server message format.\n */\nexport function toLocalMessage(gm: GatewayMessage) {\n return {\n id: gm.id,\n threadId: gm.threadId,\n role: gm.role,\n content: gm.content,\n type: gm.type,\n createdAt: new Date(gm.createdAt),\n };\n}\n\n/**\n * Convert a gateway OM record to the local server OM record format.\n */\nexport function toLocalOMRecord(gr: GatewayOMRecord) {\n return {\n id: gr.id,\n scope: gr.scope as 'thread' | 'resource',\n threadId: gr.threadId,\n resourceId: gr.resourceId,\n createdAt: new Date(gr.createdAt),\n updatedAt: new Date(gr.updatedAt),\n lastObservedAt: gr.lastObservedAt ? new Date(gr.lastObservedAt) : undefined,\n originType: gr.originType as 'initial' | 'reflection' | 'observation',\n generationCount: gr.generationCount,\n activeObservations: (gr.activeObservations ?? '') as string,\n totalTokensObserved: gr.totalTokensObserved,\n observationTokenCount: gr.observationTokenCount,\n pendingMessageTokens: gr.pendingMessageTokens,\n isReflecting: gr.isReflecting,\n isObserving: gr.isObserving,\n isBufferingObservation: gr.isBufferingObservation,\n isBufferingReflection: gr.isBufferingReflection,\n config: gr.config ?? {},\n bufferedObservationChunks: gr.bufferedObservationChunks?.map(chunk => ({\n ...chunk,\n lastObservedAt: chunk.lastObservedAt ? new Date(chunk.lastObservedAt) : undefined,\n createdAt: chunk.createdAt ? new Date(chunk.createdAt) : undefined,\n })),\n bufferedReflection: gr.bufferedReflection ?? undefined,\n bufferedReflectionTokens: gr.bufferedReflectionTokens ?? undefined,\n bufferedReflectionInputTokens: gr.bufferedReflectionInputTokens ?? undefined,\n };\n}\n\nfunction isV2GatewayKey(key: string): boolean {\n return key.startsWith('msk-gateway-') || key.startsWith('mskv2_');\n}\n\n// Singleton-ish lazy instance\nlet _gatewayClient: GatewayMemoryClient | null | undefined;\n\n/**\n * Get a GatewayMemoryClient instance, or null if gateway is not configured.\n */\nexport function getGatewayClient(): GatewayMemoryClient | null {\n if (_gatewayClient !== undefined) return _gatewayClient;\n const url = process.env.MASTRA_GATEWAY_URL || 'https://gateway-api.mastra.ai';\n const key = process.env.MASTRA_GATEWAY_API_KEY;\n // v2 (organization) keys are served by a gateway without the memory API, so memory stays local.\n if (!key || isV2GatewayKey(key)) {\n _gatewayClient = null;\n return null;\n }\n _gatewayClient = new GatewayMemoryClient(url, key);\n return _gatewayClient;\n}\n\n/**\n * Check if an agent uses a gateway model (mastra/ prefix).\n * Sync version — can only check agent.model string directly.\n */\n\nexport function isGatewayAgent(agent: any): boolean {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n } catch {\n // Ignore errors during detection\n }\n return false;\n}\n\n/**\n * Async version of isGatewayAgent that can await getLLM().\n * Checks multiple paths to detect if an agent uses a mastra/ gateway model:\n * 1. agent.model as raw string (most reliable for directly configured agents)\n * 2. Resolved LLM's underlying ModelRouterLanguageModel config.routerId\n * 3. Resolved LLM's getModel() to access the router's config\n */\n\nexport async function isGatewayAgentAsync(agent: any): Promise<boolean> {\n if (!agent) return false;\n try {\n const agentAny = agent as Record<string, unknown>;\n\n // Check 1: agent.model is a raw string like 'mastra/openai/gpt-5-mini'\n if (typeof agentAny.model === 'string' && agentAny.model.startsWith('mastra/')) {\n return true;\n }\n\n // Check 2: Resolve the LLM and check the router's config.routerId\n // llm.getModelId() returns stripped ID (e.g., 'gpt-5-mini'), so we need\n // to access the underlying ModelRouterLanguageModel's config.routerId\n if (typeof agent.getLLM === 'function') {\n const llm = await Promise.resolve(agent.getLLM({}));\n if (llm) {\n // Try to access the underlying model's routerId via getModel()\n const llmAny = llm as Record<string, unknown>;\n if (typeof llmAny.getModel === 'function') {\n const underlyingModel = (llmAny as { getModel: () => unknown }).getModel();\n const modelAny = underlyingModel as Record<string, unknown>;\n // ModelRouterLanguageModel stores routerId in private config\n if (modelAny?.config && typeof modelAny.config === 'object') {\n const routerId = (modelAny.config as Record<string, unknown>).routerId;\n if (typeof routerId === 'string' && routerId.startsWith('mastra/')) {\n return true;\n }\n }\n }\n }\n }\n } catch {\n // Detection failed — not a gateway agent\n }\n return false;\n}\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
|
-
const require_knowledge = require("../../knowledge-
|
|
3
|
+
const require_knowledge = require("../../knowledge-Q_SCnD9m.cjs");
|
|
4
4
|
exports.GET_KNOWLEDGE_ACTIVITY_ROUTE = require_knowledge.GET_KNOWLEDGE_ACTIVITY_ROUTE;
|
|
5
5
|
exports.GET_KNOWLEDGE_GRAPH_ROUTE = require_knowledge.GET_KNOWLEDGE_GRAPH_ROUTE;
|
|
6
6
|
exports.GET_KNOWLEDGE_LINK_COUNTS_ROUTE = require_knowledge.GET_KNOWLEDGE_LINK_COUNTS_ROUTE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as GET_KNOWLEDGE_ACTIVITY_ROUTE, n as GET_KNOWLEDGE_GRAPH_ROUTE, r as GET_KNOWLEDGE_LINK_COUNTS_ROUTE, i as GET_KNOWLEDGE_PAGE_LINKS_ROUTE, a as GET_KNOWLEDGE_PAGE_ROUTE, o as GET_KNOWLEDGE_TREE_ROUTE, s as LIST_KNOWLEDGE_ROUTE, c as SEARCH_KNOWLEDGE_ROUTE, l as STREAM_KNOWLEDGE_EVENTS_ROUTE } from "../../knowledge-
|
|
1
|
+
export { t as GET_KNOWLEDGE_ACTIVITY_ROUTE, n as GET_KNOWLEDGE_GRAPH_ROUTE, r as GET_KNOWLEDGE_LINK_COUNTS_ROUTE, i as GET_KNOWLEDGE_PAGE_LINKS_ROUTE, a as GET_KNOWLEDGE_PAGE_ROUTE, o as GET_KNOWLEDGE_TREE_ROUTE, s as LIST_KNOWLEDGE_ROUTE, c as SEARCH_KNOWLEDGE_ROUTE, l as STREAM_KNOWLEDGE_EVENTS_ROUTE } from "../../knowledge-Cd2cCq-Y.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
|
-
const require_logs = require("../../logs-
|
|
3
|
+
const require_logs = require("../../logs-DWIbFIw6.cjs");
|
|
4
4
|
exports.LIST_LOGS_BY_RUN_ID_ROUTE = require_logs.LIST_LOGS_BY_RUN_ID_ROUTE;
|
|
5
5
|
exports.LIST_LOGS_ROUTE = require_logs.LIST_LOGS_ROUTE;
|
|
6
6
|
exports.LIST_LOG_TRANSPORTS_ROUTE = require_logs.LIST_LOG_TRANSPORTS_ROUTE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as LIST_LOGS_BY_RUN_ID_ROUTE, n as LIST_LOGS_ROUTE, r as LIST_LOG_TRANSPORTS_ROUTE } from "../../logs-
|
|
1
|
+
export { t as LIST_LOGS_BY_RUN_ID_ROUTE, n as LIST_LOGS_ROUTE, r as LIST_LOG_TRANSPORTS_ROUTE } from "../../logs-C5L6gRGr.js";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
3
|
const require_http_exception = require("../../http-exception-Co3MbFUf.cjs");
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const require_mcp_client_versions = require("../../mcp-client-versions-BS99SD4O.cjs");
|
|
5
|
+
const require_route_builder = require("../../route-builder-DHqDrSSy.cjs");
|
|
6
|
+
const require_utils = require("../../utils-CL-m2SWZ.cjs");
|
|
6
7
|
const require_server_handlers_error = require("./error.cjs");
|
|
7
8
|
const require_server_handlers_version_helpers = require("./version-helpers.cjs");
|
|
8
|
-
const require_mcp_client_versions = require("../../mcp-client-versions-BS99SD4O.cjs");
|
|
9
9
|
// src/server/handlers/mcp-client-versions.ts
|
|
10
10
|
/**
|
|
11
11
|
* GET /stored/mcp-clients/:mcpClientId/versions - List all versions for an MCP client
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { t as HTTPException } from "../../http-exception-CzaWkxMl.js";
|
|
2
|
-
import { n as
|
|
3
|
-
import {
|
|
2
|
+
import { a as createMCPClientVersionResponseSchema, c as listMCPClientVersionsQuerySchema, d as mcpClientVersionPathParams, i as createMCPClientVersionBodySchema, l as listMCPClientVersionsResponseSchema, n as compareMCPClientVersionsQuerySchema, o as deleteMCPClientVersionResponseSchema, p as restoreMCPClientVersionResponseSchema, r as compareMCPClientVersionsResponseSchema, s as getMCPClientVersionResponseSchema, t as activateMCPClientVersionResponseSchema, u as mcpClientVersionIdPathParams } from "../../mcp-client-versions-Rd-ry9Qa.js";
|
|
3
|
+
import { n as createRoute } from "../../route-builder-BKEzjw_M.js";
|
|
4
|
+
import { i as getStoredResourceScope, n as assertStoredResourceScope } from "../../utils-y-cW3mQU.js";
|
|
4
5
|
import { handleError } from "./error.js";
|
|
5
6
|
import { MCP_CLIENT_SNAPSHOT_CONFIG_FIELDS, calculateChangedFields, computeVersionDiffs, createVersionWithRetry, enforceRetentionLimit, extractConfigFromVersion } from "./version-helpers.js";
|
|
6
|
-
import { a as createMCPClientVersionResponseSchema, c as listMCPClientVersionsQuerySchema, d as mcpClientVersionPathParams, i as createMCPClientVersionBodySchema, l as listMCPClientVersionsResponseSchema, n as compareMCPClientVersionsQuerySchema, o as deleteMCPClientVersionResponseSchema, p as restoreMCPClientVersionResponseSchema, r as compareMCPClientVersionsResponseSchema, s as getMCPClientVersionResponseSchema, t as activateMCPClientVersionResponseSchema, u as mcpClientVersionIdPathParams } from "../../mcp-client-versions-Rd-ry9Qa.js";
|
|
7
7
|
// src/server/handlers/mcp-client-versions.ts
|
|
8
8
|
/**
|
|
9
9
|
* GET /stored/mcp-clients/:mcpClientId/versions - List all versions for an MCP client
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
|
-
const require_mcp = require("../../mcp-
|
|
3
|
+
const require_mcp = require("../../mcp-CKvOVfHn.cjs");
|
|
4
4
|
exports.ANSWER_MCP_SERVER_TASK_ROUTE = require_mcp.ANSWER_MCP_SERVER_TASK_ROUTE;
|
|
5
5
|
exports.CANCEL_MCP_SERVER_TASK_ROUTE = require_mcp.CANCEL_MCP_SERVER_TASK_ROUTE;
|
|
6
6
|
exports.EMIT_MCP_SERVER_EVENT_ROUTE = require_mcp.EMIT_MCP_SERVER_EVENT_ROUTE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as ANSWER_MCP_SERVER_TASK_ROUTE, n as CANCEL_MCP_SERVER_TASK_ROUTE, r as EMIT_MCP_SERVER_EVENT_ROUTE, i as EXECUTE_MCP_SERVER_TOOL_ROUTE, a as FIND_MCP_SERVER_TASK_ROUTE, o as GET_MCP_SERVER_DETAIL_ROUTE, s as GET_MCP_SERVER_TOOL_DETAIL_ROUTE, c as LIST_MCP_SERVERS_ROUTE, l as LIST_MCP_SERVER_EVENTS_ROUTE, u as LIST_MCP_SERVER_RESOURCES_ROUTE, d as LIST_MCP_SERVER_TASKS_ROUTE, f as LIST_MCP_SERVER_TOOLS_ROUTE, p as MCP_HTTP_TRANSPORT_ROUTE, m as MCP_SSE_MESSAGES_ROUTE, h as MCP_SSE_TRANSPORT_ROUTE, g as POLL_MCP_SERVER_EVENT_ROUTE, _ as READ_MCP_SERVER_RESOURCE_ROUTE, v as STREAM_MCP_SERVER_EVENT_ROUTE } from "../../mcp-
|
|
1
|
+
export { t as ANSWER_MCP_SERVER_TASK_ROUTE, n as CANCEL_MCP_SERVER_TASK_ROUTE, r as EMIT_MCP_SERVER_EVENT_ROUTE, i as EXECUTE_MCP_SERVER_TOOL_ROUTE, a as FIND_MCP_SERVER_TASK_ROUTE, o as GET_MCP_SERVER_DETAIL_ROUTE, s as GET_MCP_SERVER_TOOL_DETAIL_ROUTE, c as LIST_MCP_SERVERS_ROUTE, l as LIST_MCP_SERVER_EVENTS_ROUTE, u as LIST_MCP_SERVER_RESOURCES_ROUTE, d as LIST_MCP_SERVER_TASKS_ROUTE, f as LIST_MCP_SERVER_TOOLS_ROUTE, p as MCP_HTTP_TRANSPORT_ROUTE, m as MCP_SSE_MESSAGES_ROUTE, h as MCP_SSE_TRANSPORT_ROUTE, g as POLL_MCP_SERVER_EVENT_ROUTE, _ as READ_MCP_SERVER_RESOURCE_ROUTE, v as STREAM_MCP_SERVER_EVENT_ROUTE } from "../../mcp-CntC59iU.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
|
-
const require_memory = require("../../memory-
|
|
3
|
+
const require_memory = require("../../memory-DIos0BE-.cjs");
|
|
4
4
|
exports.AWAIT_BUFFER_STATUS_ROUTE = require_memory.AWAIT_BUFFER_STATUS_ROUTE;
|
|
5
5
|
exports.CLONE_THREAD_ROUTE = require_memory.CLONE_THREAD_ROUTE;
|
|
6
6
|
exports.CREATE_THREAD_NETWORK_ROUTE = require_memory.CREATE_THREAD_NETWORK_ROUTE;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/memory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAsM1D,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAS/D;AAgQD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/server/handlers/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { t as AWAIT_BUFFER_STATUS_ROUTE, n as CLONE_THREAD_ROUTE, r as CREATE_THREAD_NETWORK_ROUTE, i as CREATE_THREAD_ROUTE, a as DELETE_MESSAGES_NETWORK_ROUTE, o as DELETE_MESSAGES_ROUTE, s as DELETE_THREAD_NETWORK_ROUTE, c as DELETE_THREAD_ROUTE, l as GET_MEMORY_CONFIG_ROUTE, u as GET_MEMORY_STATUS_NETWORK_ROUTE, d as GET_MEMORY_STATUS_ROUTE, f as GET_OBSERVATIONAL_MEMORY_ROUTE, p as GET_THREAD_BY_ID_NETWORK_ROUTE, m as GET_THREAD_BY_ID_ROUTE, h as GET_WORKING_MEMORY_ROUTE, g as LIST_MESSAGES_NETWORK_ROUTE, _ as LIST_MESSAGES_ROUTE, v as LIST_THREADS_NETWORK_ROUTE, y as LIST_THREADS_ROUTE, b as SAVE_MESSAGES_NETWORK_ROUTE, x as SAVE_MESSAGES_ROUTE, S as SEARCH_MEMORY_ROUTE, C as TRANSFER_THREAD_ROUTE, w as UPDATE_THREAD_NETWORK_ROUTE, T as UPDATE_THREAD_ROUTE, E as UPDATE_WORKING_MEMORY_ROUTE, D as getTextContent } from "../../memory-
|
|
1
|
+
export { t as AWAIT_BUFFER_STATUS_ROUTE, n as CLONE_THREAD_ROUTE, r as CREATE_THREAD_NETWORK_ROUTE, i as CREATE_THREAD_ROUTE, a as DELETE_MESSAGES_NETWORK_ROUTE, o as DELETE_MESSAGES_ROUTE, s as DELETE_THREAD_NETWORK_ROUTE, c as DELETE_THREAD_ROUTE, l as GET_MEMORY_CONFIG_ROUTE, u as GET_MEMORY_STATUS_NETWORK_ROUTE, d as GET_MEMORY_STATUS_ROUTE, f as GET_OBSERVATIONAL_MEMORY_ROUTE, p as GET_THREAD_BY_ID_NETWORK_ROUTE, m as GET_THREAD_BY_ID_ROUTE, h as GET_WORKING_MEMORY_ROUTE, g as LIST_MESSAGES_NETWORK_ROUTE, _ as LIST_MESSAGES_ROUTE, v as LIST_THREADS_NETWORK_ROUTE, y as LIST_THREADS_ROUTE, b as SAVE_MESSAGES_NETWORK_ROUTE, x as SAVE_MESSAGES_ROUTE, S as SEARCH_MEMORY_ROUTE, C as TRANSFER_THREAD_ROUTE, w as UPDATE_THREAD_NETWORK_ROUTE, T as UPDATE_THREAD_ROUTE, E as UPDATE_WORKING_MEMORY_ROUTE, D as getTextContent } from "../../memory-JzgWJevA.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../rolldown-runtime-10nMEhjP.cjs");
|
|
3
|
-
const require_observability_new_endpoints = require("../../observability-new-endpoints-
|
|
3
|
+
const require_observability_new_endpoints = require("../../observability-new-endpoints-DugFsWBU.cjs");
|
|
4
4
|
exports.AGGREGATE_SPANS = require_observability_new_endpoints.AGGREGATE_SPANS;
|
|
5
5
|
exports.AGGREGATE_TRACES = require_observability_new_endpoints.AGGREGATE_TRACES;
|
|
6
6
|
exports.CREATE_FEEDBACK = require_observability_new_endpoints.CREATE_FEEDBACK;
|
|
@@ -11,6 +11,7 @@ exports.GET_CAPABILITIES = require_observability_new_endpoints.GET_CAPABILITIES;
|
|
|
11
11
|
exports.GET_ENTITY_NAMES = require_observability_new_endpoints.GET_ENTITY_NAMES;
|
|
12
12
|
exports.GET_ENTITY_TYPES = require_observability_new_endpoints.GET_ENTITY_TYPES;
|
|
13
13
|
exports.GET_ENVIRONMENTS = require_observability_new_endpoints.GET_ENVIRONMENTS;
|
|
14
|
+
exports.GET_FEEDBACK = require_observability_new_endpoints.GET_FEEDBACK;
|
|
14
15
|
exports.GET_FEEDBACK_AGGREGATE = require_observability_new_endpoints.GET_FEEDBACK_AGGREGATE;
|
|
15
16
|
exports.GET_FEEDBACK_BREAKDOWN = require_observability_new_endpoints.GET_FEEDBACK_BREAKDOWN;
|
|
16
17
|
exports.GET_FEEDBACK_PERCENTILES = require_observability_new_endpoints.GET_FEEDBACK_PERCENTILES;
|