@mastra/server 1.80.0-alpha.3 → 1.80.0-alpha.5
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/dist/storage/index.d.ts +0 -12
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/request-context/index.d.ts +0 -2
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/routes/index.d.ts +0 -2
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/types/index.d.ts +0 -2
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +65 -13
- package/dist/_types/@mastra_schema-compat/dist/_types/@internal_ai-v6/dist/index.d.ts +110 -35
- package/dist/{a2a-BKtK_s5o.cjs → a2a-BaRqCOUl.cjs} +14 -22
- package/dist/{a2a-BKtK_s5o.cjs.map → a2a-BaRqCOUl.cjs.map} +1 -1
- package/dist/{a2a-CBl-c-lm.cjs → a2a-BsBYrosr.cjs} +2 -3
- package/dist/{a2a-CBl-c-lm.cjs.map → a2a-BsBYrosr.cjs.map} +1 -1
- package/dist/{a2a-BS0gTQk3.js → a2a-C3ClP3C2.js} +2 -3
- package/dist/{a2a-BS0gTQk3.js.map → a2a-C3ClP3C2.js.map} +1 -1
- package/dist/{a2a-DKGBctKT.js → a2a-CApzjeDH.js} +13 -21
- package/dist/{a2a-DKGBctKT.js.map → a2a-CApzjeDH.js.map} +1 -1
- package/dist/{agent-builder-DDYdQvlQ.cjs → agent-builder-9-GSvpgR.cjs} +3 -4
- package/dist/{agent-builder-DDYdQvlQ.cjs.map → agent-builder-9-GSvpgR.cjs.map} +1 -1
- package/dist/{agent-builder-B8kc4OBs.js → agent-builder-Cr-52Ulb.js} +3 -4
- package/dist/{agent-builder-B8kc4OBs.js.map → agent-builder-Cr-52Ulb.js.map} +1 -1
- package/dist/{agent-builder-C-U5USc5.js → agent-builder-Cv6X2dKZ.js} +12 -13
- package/dist/{agent-builder-C-U5USc5.js.map → agent-builder-Cv6X2dKZ.js.map} +1 -1
- package/dist/{agent-builder-us2nwcWc.cjs → agent-builder-DExL1jAO.cjs} +12 -13
- package/dist/{agent-builder-us2nwcWc.cjs.map → agent-builder-DExL1jAO.cjs.map} +1 -1
- package/dist/{agent-versions-CzXJWn1T.cjs → agent-versions-De5bRBaa.cjs} +5 -6
- package/dist/{agent-versions-CzXJWn1T.cjs.map → agent-versions-De5bRBaa.cjs.map} +1 -1
- package/dist/{agent-versions-W600H1ME.js → agent-versions-Pa-ABszp.js} +5 -6
- package/dist/{agent-versions-W600H1ME.js.map → agent-versions-Pa-ABszp.js.map} +1 -1
- package/dist/{agents-D1-fgNeb.js → agents-A-ahR0eQ.js} +5 -6
- package/dist/{agents-D1-fgNeb.js.map → agents-A-ahR0eQ.js.map} +1 -1
- package/dist/{agents-AyHEkc2F.cjs → agents-BBaFtyAt.cjs} +20 -21
- package/dist/agents-BBaFtyAt.cjs.map +1 -0
- package/dist/{agents-BYE5Dmfk.js → agents-CGS0tE4p.js} +19 -20
- package/dist/agents-CGS0tE4p.js.map +1 -0
- package/dist/{agents-B1EiIdRs.cjs → agents-vFpMvK3w.cjs} +5 -6
- package/dist/{agents-B1EiIdRs.cjs.map → agents-vFpMvK3w.cjs.map} +1 -1
- package/dist/{api-schema-manifest-A066IsPX.js → api-schema-manifest-BCIpcado.js} +4 -5
- package/dist/{api-schema-manifest-A066IsPX.js.map → api-schema-manifest-BCIpcado.js.map} +1 -1
- package/dist/{api-schema-manifest-BaF6TE9d.cjs → api-schema-manifest-BRItYYlN.cjs} +5 -6
- package/dist/{api-schema-manifest-BaF6TE9d.cjs.map → api-schema-manifest-BRItYYlN.cjs.map} +1 -1
- package/dist/{auth-B8fQdEg-.cjs → auth-CM5AgF9l.cjs} +2 -3
- package/dist/{auth-B8fQdEg-.cjs.map → auth-CM5AgF9l.cjs.map} +1 -1
- package/dist/{auth-CZFXpwba.js → auth-CjT_a76k.js} +2 -3
- package/dist/{auth-CZFXpwba.js.map → auth-CjT_a76k.js.map} +1 -1
- package/dist/{background-tasks-B3VAKTJh.cjs → background-tasks-BMp9Q6SB.cjs} +7 -9
- package/dist/{background-tasks-B3VAKTJh.cjs.map → background-tasks-BMp9Q6SB.cjs.map} +1 -1
- package/dist/{background-tasks-Du2zYOPl.js → background-tasks-DIpPsqVy.js} +7 -9
- package/dist/{background-tasks-Du2zYOPl.js.map → background-tasks-DIpPsqVy.js.map} +1 -1
- package/dist/{builder-registry-DLdu9bWH.js → builder-registry-CtGv0Gj6.js} +7 -9
- package/dist/{builder-registry-DLdu9bWH.js.map → builder-registry-CtGv0Gj6.js.map} +1 -1
- package/dist/{builder-registry-DaFAaMTf.cjs → builder-registry-DWusXgse.cjs} +7 -9
- package/dist/{builder-registry-DaFAaMTf.cjs.map → builder-registry-DWusXgse.cjs.map} +1 -1
- package/dist/{channels-BnVRmnzK.cjs → channels-EqvuQQbv.cjs} +6 -8
- package/dist/{channels-BnVRmnzK.cjs.map → channels-EqvuQQbv.cjs.map} +1 -1
- package/dist/{channels-Db-4pXVZ.js → channels-LNR2QIkc.js} +6 -8
- package/dist/{channels-Db-4pXVZ.js.map → channels-LNR2QIkc.js.map} +1 -1
- package/dist/{common-DhKNoXGp.cjs → common-DVZqSEhZ.cjs} +2 -3
- package/dist/{common-DhKNoXGp.cjs.map → common-DVZqSEhZ.cjs.map} +1 -1
- package/dist/{common-Y30XtCyr.js → common-xUmaFUop.js} +2 -3
- package/dist/{common-Y30XtCyr.js.map → common-xUmaFUop.js.map} +1 -1
- package/dist/{constants-e7aaPCLj.cjs → constants-Co1XjPjd.cjs} +2 -3
- package/dist/{constants-e7aaPCLj.cjs.map → constants-Co1XjPjd.cjs.map} +1 -1
- package/dist/{constants-DazK_RZj.js → constants-ohUUT3Vg.js} +2 -3
- package/dist/{constants-DazK_RZj.js.map → constants-ohUUT3Vg.js.map} +1 -1
- package/dist/{conversations-D-ew5IXn.js → conversations-B-s9MWRb.js} +8 -9
- package/dist/{conversations-D-ew5IXn.js.map → conversations-B-s9MWRb.js.map} +1 -1
- package/dist/{conversations-DasqEDCF.cjs → conversations-BPQNrv5g.cjs} +5 -6
- package/dist/{conversations-DasqEDCF.cjs.map → conversations-BPQNrv5g.cjs.map} +1 -1
- package/dist/{conversations-DzuWI3w-.cjs → conversations-DLuMXWot.cjs} +8 -9
- package/dist/{conversations-DzuWI3w-.cjs.map → conversations-DLuMXWot.cjs.map} +1 -1
- package/dist/{conversations-BzBHVFYe.js → conversations-nNko6-H4.js} +4 -5
- package/dist/{conversations-BzBHVFYe.js.map → conversations-nNko6-H4.js.map} +1 -1
- package/dist/{datasets-Cgtczd13.cjs → datasets-BP2O5CSR.cjs} +3 -4
- package/dist/{datasets-Cgtczd13.cjs.map → datasets-BP2O5CSR.cjs.map} +1 -1
- package/dist/{datasets-FRp69Mwv.js → datasets-hLmYapTk.js} +3 -4
- package/dist/{datasets-FRp69Mwv.js.map → datasets-hLmYapTk.js.map} +1 -1
- package/dist/{default-options-C7tykjLq.cjs → default-options-DRN81WEQ.cjs} +2 -3
- package/dist/{default-options-C7tykjLq.cjs.map → default-options-DRN81WEQ.cjs.map} +1 -1
- package/dist/{default-options-oSlrqpuP.js → default-options-Dir6CKnE.js} +2 -3
- package/dist/{default-options-oSlrqpuP.js.map → default-options-Dir6CKnE.js.map} +1 -1
- package/dist/{dist-lT2rqyY9.cjs → dist-36GZrEvk.cjs} +4 -5
- package/dist/{dist-lT2rqyY9.cjs.map → dist-36GZrEvk.cjs.map} +1 -1
- package/dist/{dist-CeTLA-e5.cjs → dist-BZGewCGq.cjs} +6 -10
- package/dist/{dist-CeTLA-e5.cjs.map → dist-BZGewCGq.cjs.map} +1 -1
- package/dist/{dist-Bo3GdQwf.cjs → dist-Bal15xNO.cjs} +5 -7
- package/dist/{dist-Bo3GdQwf.cjs.map → dist-Bal15xNO.cjs.map} +1 -1
- package/dist/dist-C-L2kyKZ.js +1 -0
- package/dist/{dist-DjkPkAzV.js → dist-CNjm6d2Q.js} +5 -8
- package/dist/{dist-DjkPkAzV.js.map → dist-CNjm6d2Q.js.map} +1 -1
- package/dist/{dist-DLld1qjf.js → dist-CVoi_Dov.js} +3 -4
- package/dist/{dist-DLld1qjf.js.map → dist-CVoi_Dov.js.map} +1 -1
- package/dist/{dist-CukR8zi9.cjs → dist-Clj7hRKz.cjs} +1554 -725
- package/dist/dist-Clj7hRKz.cjs.map +1 -0
- package/dist/{dist-DsrJXwic.cjs → dist-D02J6PZG.cjs} +4 -5
- package/dist/{dist-DsrJXwic.cjs.map → dist-D02J6PZG.cjs.map} +1 -1
- package/dist/dist-D6oS7RF1.cjs +3 -0
- package/dist/{dist-CREG82cy.js → dist-DC9qnRcv.js} +3 -4
- package/dist/{dist-CREG82cy.js.map → dist-DC9qnRcv.js.map} +1 -1
- package/dist/{dist-BIrQLUV9.js → dist-Dc0g0QSi.js} +4 -6
- package/dist/{dist-BIrQLUV9.js.map → dist-Dc0g0QSi.js.map} +1 -1
- package/dist/{dist-BBOnrL_A.js → dist-Dwfkbwzg.js} +3 -4
- package/dist/{dist-BBOnrL_A.js.map → dist-Dwfkbwzg.js.map} +1 -1
- package/dist/{dist-5TAg2f91.js → dist-PlsLrwz8.js} +1549 -719
- package/dist/dist-PlsLrwz8.js.map +1 -0
- package/dist/{dist-B9ery9Zw.cjs → dist-lG-fYW7-.cjs} +4 -5
- package/dist/{dist-B9ery9Zw.cjs.map → dist-lG-fYW7-.cjs.map} +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-server-custom-adapters.md +53 -1
- package/dist/docs/references/docs-server-custom-api-routes.md +2 -0
- package/dist/{dynamic-workflows-HwPX3mcf.cjs → dynamic-workflows-CpCkqM1g.cjs} +6 -8
- package/dist/{dynamic-workflows-HwPX3mcf.cjs.map → dynamic-workflows-CpCkqM1g.cjs.map} +1 -1
- package/dist/{dynamic-workflows-CTUO0SFu.js → dynamic-workflows-DDauBnDt.js} +6 -8
- package/dist/{dynamic-workflows-CTUO0SFu.js.map → dynamic-workflows-DDauBnDt.js.map} +1 -1
- package/dist/{editor-builder-BSBHrTzY.cjs → editor-builder-8li-nXor.cjs} +3 -4
- package/dist/{editor-builder-BSBHrTzY.cjs.map → editor-builder-8li-nXor.cjs.map} +1 -1
- package/dist/{editor-builder-DCrTMwA4.js → editor-builder-BCZy1ZH1.js} +3 -4
- package/dist/{editor-builder-DCrTMwA4.js.map → editor-builder-BCZy1ZH1.js.map} +1 -1
- package/dist/{editor-builder-Bibw1X4q.cjs → editor-builder-DFqbiatl.cjs} +7 -9
- package/dist/{editor-builder-Bibw1X4q.cjs.map → editor-builder-DFqbiatl.cjs.map} +1 -1
- package/dist/{editor-builder-Dq03QZzH.js → editor-builder-qPFmAnZz.js} +7 -9
- package/dist/{editor-builder-Dq03QZzH.js.map → editor-builder-qPFmAnZz.js.map} +1 -1
- package/dist/{favorites-DWDyKxts.js → favorites-8aieznq3.js} +2 -3
- package/dist/{favorites-DWDyKxts.js.map → favorites-8aieznq3.js.map} +1 -1
- package/dist/{favorites-D1-AzGsK.cjs → favorites-D0CoxxQn.cjs} +2 -3
- package/dist/{favorites-D1-AzGsK.cjs.map → favorites-D0CoxxQn.cjs.map} +1 -1
- package/dist/{helpers-CewFtCva.cjs → helpers-CE1fJdLM.cjs} +6 -9
- package/dist/{helpers-CewFtCva.cjs.map → helpers-CE1fJdLM.cjs.map} +1 -1
- package/dist/{helpers-CxSa9O3X.js → helpers-CMCXsowL.js} +6 -9
- package/dist/{helpers-CxSa9O3X.js.map → helpers-CMCXsowL.js.map} +1 -1
- package/dist/{http-exception-CKDHupKw.cjs → http-exception-Co3MbFUf.cjs} +2 -3
- package/dist/{http-exception-CKDHupKw.cjs.map → http-exception-Co3MbFUf.cjs.map} +1 -1
- package/dist/{http-exception-CyfxZB6W.js → http-exception-CzaWkxMl.js} +2 -3
- package/dist/{http-exception-CyfxZB6W.js.map → http-exception-CzaWkxMl.js.map} +1 -1
- package/dist/index.cjs +2 -3
- package/dist/index.js +1 -2
- package/dist/{logs-CY8AGOCO.cjs → logs-CC6IycDY.cjs} +3 -4
- package/dist/{logs-CY8AGOCO.cjs.map → logs-CC6IycDY.cjs.map} +1 -1
- package/dist/{logs-CxfPk-iL.js → logs-DIBh_xCk.js} +7 -8
- package/dist/{logs-CxfPk-iL.js.map → logs-DIBh_xCk.js.map} +1 -1
- package/dist/{logs-Bd_xpsYw.js → logs-DpyTCDyt.js} +3 -4
- package/dist/{logs-Bd_xpsYw.js.map → logs-DpyTCDyt.js.map} +1 -1
- package/dist/{logs-CiSw7r0s.cjs → logs-NNur5jkf.cjs} +7 -8
- package/dist/{logs-CiSw7r0s.cjs.map → logs-NNur5jkf.cjs.map} +1 -1
- package/dist/{mcp-ziWVk7Ol.cjs → mcp-4iUBgZ7s.cjs} +3 -4
- package/dist/{mcp-ziWVk7Ol.cjs.map → mcp-4iUBgZ7s.cjs.map} +1 -1
- package/dist/{mcp-CWDfSu7w.js → mcp-CnV25lv0.js} +6 -7
- package/dist/{mcp-CWDfSu7w.js.map → mcp-CnV25lv0.js.map} +1 -1
- package/dist/{mcp-CWGJRqkC.cjs → mcp-DegWUDeB.cjs} +6 -7
- package/dist/{mcp-CWGJRqkC.cjs.map → mcp-DegWUDeB.cjs.map} +1 -1
- package/dist/{mcp-Drqt0GqD.js → mcp-DgdKiptb.js} +3 -4
- package/dist/{mcp-Drqt0GqD.js.map → mcp-DgdKiptb.js.map} +1 -1
- package/dist/{mcp-client-versions-DxBkzcYH.js → mcp-client-versions-B471u-DI.js} +3 -4
- package/dist/{mcp-client-versions-DxBkzcYH.js.map → mcp-client-versions-B471u-DI.js.map} +1 -1
- package/dist/{mcp-client-versions-Cq97zXiK.cjs → mcp-client-versions-HRTe5cRT.cjs} +3 -4
- package/dist/{mcp-client-versions-Cq97zXiK.cjs.map → mcp-client-versions-HRTe5cRT.cjs.map} +1 -1
- package/dist/{memory-CizEIbl1.cjs → memory-BnPGDrdg.cjs} +4 -5
- package/dist/{memory-CizEIbl1.cjs.map → memory-BnPGDrdg.cjs.map} +1 -1
- package/dist/{memory-B58Q2LgU.js → memory-CZ2ELVP0.js} +4 -5
- package/dist/{memory-B58Q2LgU.js.map → memory-CZ2ELVP0.js.map} +1 -1
- package/dist/{memory-BHtTSzvJ.js → memory-DeZ1je-b.js} +10 -12
- package/dist/memory-DeZ1je-b.js.map +1 -0
- package/dist/{memory-CwwkVDh1.cjs → memory-Pj9P9vsl.cjs} +10 -12
- package/dist/memory-Pj9P9vsl.cjs.map +1 -0
- package/dist/{message-history-_kbQlA4r.js → message-history-BBVH-ORZ.js} +2 -3
- package/dist/{message-history-_kbQlA4r.js.map → message-history-BBVH-ORZ.js.map} +1 -1
- package/dist/{message-history-CkUYxSaS.cjs → message-history-CtELj716.cjs} +2 -3
- package/dist/{message-history-CkUYxSaS.cjs.map → message-history-CtELj716.cjs.map} +1 -1
- package/dist/{observability-Dz9jvMJ3.js → observability-65rZOqJk.js} +6 -7
- package/dist/{observability-Dz9jvMJ3.js.map → observability-65rZOqJk.js.map} +1 -1
- package/dist/{observability-C2BZQ2jU.cjs → observability-CFKSxaff.cjs} +6 -7
- package/dist/{observability-C2BZQ2jU.cjs.map → observability-CFKSxaff.cjs.map} +1 -1
- package/dist/{observability-new-endpoints-3DlTYf34.js → observability-new-endpoints-B6MRJ5Rb.js} +8 -11
- package/dist/observability-new-endpoints-B6MRJ5Rb.js.map +1 -0
- package/dist/{observability-new-endpoints-Drr7q2Dj.cjs → observability-new-endpoints-CDeHfFNP.cjs} +9 -12
- package/dist/observability-new-endpoints-CDeHfFNP.cjs.map +1 -0
- package/dist/{plans-DZAJG1Et.cjs → plans-Dtt4D4-Y.cjs} +8 -9
- package/dist/{plans-DZAJG1Et.cjs.map → plans-Dtt4D4-Y.cjs.map} +1 -1
- package/dist/{plans-CKbStbWl.js → plans-YK-iaKqj.js} +8 -9
- package/dist/{plans-CKbStbWl.js.map → plans-YK-iaKqj.js.map} +1 -1
- package/dist/{probe-image-size-l1uuhbob.cjs → probe-image-size-C0psF6WM.cjs} +69 -120
- package/dist/probe-image-size-C0psF6WM.cjs.map +1 -0
- package/dist/{probe-image-size-DBmo2MAe.js → probe-image-size-CpV7slsd.js} +69 -120
- package/dist/probe-image-size-CpV7slsd.js.map +1 -0
- package/dist/{processor-providers-DHvTA9AL.cjs → processor-providers-CRrcV9ra.cjs} +2 -3
- package/dist/{processor-providers-DHvTA9AL.cjs.map → processor-providers-CRrcV9ra.cjs.map} +1 -1
- package/dist/{processor-providers-DBhZC6-4.js → processor-providers-WHdDe4aA.js} +2 -3
- package/dist/{processor-providers-DBhZC6-4.js.map → processor-providers-WHdDe4aA.js.map} +1 -1
- package/dist/{processors-80HWq8nr.cjs → processors-BEut-2a-.cjs} +2 -3
- package/dist/{processors-80HWq8nr.cjs.map → processors-BEut-2a-.cjs.map} +1 -1
- package/dist/{processors-33IULT8X.js → processors-IhyRC0xH.js} +2 -3
- package/dist/{processors-33IULT8X.js.map → processors-IhyRC0xH.js.map} +1 -1
- package/dist/{prompt-block-versions-Cl3Lh4H-.cjs → prompt-block-versions-BUPyaY8g.cjs} +4 -5
- package/dist/{prompt-block-versions-Cl3Lh4H-.cjs.map → prompt-block-versions-BUPyaY8g.cjs.map} +1 -1
- package/dist/{prompt-block-versions-cfq_e1Zi.js → prompt-block-versions-D1gjBkQx.js} +4 -5
- package/dist/{prompt-block-versions-cfq_e1Zi.js.map → prompt-block-versions-D1gjBkQx.js.map} +1 -1
- package/dist/{responses-CfcIc53b.cjs → responses-CTiwnWeF.cjs} +3 -4
- package/dist/{responses-CfcIc53b.cjs.map → responses-CTiwnWeF.cjs.map} +1 -1
- package/dist/{responses-jiVC-1lx.js → responses-CaixIxi0.js} +8 -9
- package/dist/{responses-jiVC-1lx.js.map → responses-CaixIxi0.js.map} +1 -1
- package/dist/{responses-DJNJgCTg.js → responses-D-fsDRLd.js} +2 -3
- package/dist/{responses-DJNJgCTg.js.map → responses-D-fsDRLd.js.map} +1 -1
- package/dist/{responses-BubMB79l.cjs → responses-Did1x3VK.cjs} +8 -9
- package/dist/{responses-BubMB79l.cjs.map → responses-Did1x3VK.cjs.map} +1 -1
- package/dist/{rolldown-runtime-BwC_XMyb.cjs → rolldown-runtime-10nMEhjP.cjs} +1 -2
- package/dist/{rolldown-runtime-D3Hj5m0v.js → rolldown-runtime-CQI-hT2b.js} +1 -2
- package/dist/{route-builder-CjkWxv4E.js → route-builder-BxPrwNog.js} +6 -10
- package/dist/route-builder-BxPrwNog.js.map +1 -0
- package/dist/{route-builder-B2Qhhd7C.cjs → route-builder-CvARmqnA.cjs} +8 -12
- package/dist/route-builder-CvARmqnA.cjs.map +1 -0
- package/dist/{routes-DKV9oxFW.js → routes-C434Lhz9.js} +59 -92
- package/dist/{routes-DKV9oxFW.js.map → routes-C434Lhz9.js.map} +1 -1
- package/dist/{routes-jXksmX9G.cjs → routes-CtGp_lBn.cjs} +4 -7
- package/dist/routes-CtGp_lBn.cjs.map +1 -0
- package/dist/{routes-CKfXiwRc.js → routes-MRZFTKei.js} +4 -7
- package/dist/routes-MRZFTKei.js.map +1 -0
- package/dist/{routes-D6bDACPd.cjs → routes-rU9Sku0f.cjs} +59 -92
- package/dist/{routes-D6bDACPd.cjs.map → routes-rU9Sku0f.cjs.map} +1 -1
- package/dist/{rule-group-C5eydl98.js → rule-group-4pWeG61q.js} +2 -3
- package/dist/{rule-group-C5eydl98.js.map → rule-group-4pWeG61q.js.map} +1 -1
- package/dist/{rule-group-Hyn4rN52.cjs → rule-group-CIacr-Zz.cjs} +2 -3
- package/dist/{rule-group-Hyn4rN52.cjs.map → rule-group-CIacr-Zz.cjs.map} +1 -1
- package/dist/{schedules-GokZKBYg.cjs → schedules-CL4IU7kS.cjs} +6 -8
- package/dist/{schedules-GokZKBYg.cjs.map → schedules-CL4IU7kS.cjs.map} +1 -1
- package/dist/{schedules-_3zPKyqm.js → schedules-CQPodXrR.js} +6 -8
- package/dist/{schedules-_3zPKyqm.js.map → schedules-CQPodXrR.js.map} +1 -1
- package/dist/{schema-CzbEIyhE-BsMcj9Ws.js → schema-Bf12g7KC-DBc4NSds.js} +104 -35
- package/dist/schema-Bf12g7KC-DBc4NSds.js.map +1 -0
- package/dist/{schema-CzbEIyhE-20gGIWkz.cjs → schema-Bf12g7KC-plP4Ir6h.cjs} +105 -36
- package/dist/schema-Bf12g7KC-plP4Ir6h.cjs.map +1 -0
- package/dist/{scorer-versions-CX8RM9a6.js → scorer-versions-DIqKt2kn.js} +4 -5
- package/dist/{scorer-versions-CX8RM9a6.js.map → scorer-versions-DIqKt2kn.js.map} +1 -1
- package/dist/{scorer-versions-DeCS12ym.cjs → scorer-versions-r7C61gWf.cjs} +4 -5
- package/dist/{scorer-versions-DeCS12ym.cjs.map → scorer-versions-r7C61gWf.cjs.map} +1 -1
- package/dist/{scores-CetVKM4g.cjs → scores-Bu70OP1U.cjs} +3 -4
- package/dist/{scores-CetVKM4g.cjs.map → scores-Bu70OP1U.cjs.map} +1 -1
- package/dist/{scores-BWTo-_L5.js → scores-DHnw31S7.js} +8 -9
- package/dist/{scores-BWTo-_L5.js.map → scores-DHnw31S7.js.map} +1 -1
- package/dist/{scores-BbqFfKcy.js → scores-DZ1hftoG.js} +3 -4
- package/dist/{scores-BbqFfKcy.js.map → scores-DZ1hftoG.js.map} +1 -1
- package/dist/{scores-C8XPZcwt.cjs → scores-K78lAAwd.cjs} +8 -9
- package/dist/{scores-C8XPZcwt.cjs.map → scores-K78lAAwd.cjs.map} +1 -1
- package/dist/server/a2a/store.cjs +2 -3
- package/dist/server/a2a/store.js +1 -2
- package/dist/server/auth/index.cjs +3 -3
- package/dist/server/auth/index.js +2 -2
- package/dist/server/browser-stream/index.cjs +3 -5
- package/dist/server/browser-stream/index.cjs.map +1 -1
- package/dist/server/browser-stream/index.js +2 -4
- package/dist/server/browser-stream/index.js.map +1 -1
- package/dist/server/handlers/a2a.cjs +2 -2
- package/dist/server/handlers/a2a.js +1 -1
- package/dist/server/handlers/agent-builder.cjs +2 -2
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-controller.cjs +20 -18
- package/dist/server/handlers/agent-controller.cjs.map +1 -1
- package/dist/server/handlers/agent-controller.d.ts +2 -0
- package/dist/server/handlers/agent-controller.d.ts.map +1 -1
- package/dist/server/handlers/agent-controller.js +19 -17
- package/dist/server/handlers/agent-controller.js.map +1 -1
- package/dist/server/handlers/agent-versions.cjs +7 -8
- package/dist/server/handlers/agent-versions.js +6 -7
- package/dist/server/handlers/agents.cjs +2 -2
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/auth.cjs +7 -8
- package/dist/server/handlers/auth.js +6 -7
- package/dist/server/handlers/author-enrichment.cjs +2 -3
- package/dist/server/handlers/author-enrichment.js +1 -2
- package/dist/server/handlers/authorship.cjs +4 -5
- package/dist/server/handlers/authorship.js +3 -4
- package/dist/server/handlers/background-tasks.cjs +2 -2
- package/dist/server/handlers/background-tasks.js +1 -1
- package/dist/server/handlers/builder-registry.cjs +2 -2
- package/dist/server/handlers/builder-registry.js +1 -1
- package/dist/server/handlers/channels.cjs +2 -2
- package/dist/server/handlers/channels.js +1 -1
- package/dist/server/handlers/conversations.cjs +2 -2
- package/dist/server/handlers/conversations.js +1 -1
- package/dist/server/handlers/datasets.cjs +7 -8
- package/dist/server/handlers/datasets.js +6 -7
- package/dist/server/handlers/dynamic-workflows.cjs +2 -2
- package/dist/server/handlers/dynamic-workflows.js +1 -1
- package/dist/server/handlers/editor-builder.cjs +2 -2
- package/dist/server/handlers/editor-builder.js +1 -1
- package/dist/server/handlers/error.cjs +3 -4
- package/dist/server/handlers/error.js +2 -3
- package/dist/server/handlers/favorites-enrichment.cjs +3 -4
- package/dist/server/handlers/favorites-enrichment.js +2 -3
- package/dist/server/handlers/gateway-memory-client.cjs +2 -3
- package/dist/server/handlers/gateway-memory-client.js +1 -2
- package/dist/server/handlers/logs.cjs +2 -2
- package/dist/server/handlers/logs.js +1 -1
- package/dist/server/handlers/mcp-client-versions.cjs +6 -7
- package/dist/server/handlers/mcp-client-versions.js +5 -6
- package/dist/server/handlers/mcp.cjs +2 -2
- package/dist/server/handlers/mcp.js +1 -1
- package/dist/server/handlers/memory.cjs +2 -2
- package/dist/server/handlers/memory.d.ts.map +1 -1
- package/dist/server/handlers/memory.js +1 -1
- package/dist/server/handlers/observability-list-query-schemas.cjs +2 -3
- package/dist/server/handlers/observability-list-query-schemas.js +1 -2
- package/dist/server/handlers/observability-new-endpoints.cjs +2 -2
- package/dist/server/handlers/observability-new-endpoints.d.ts +2 -10
- 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 +4 -5
- package/dist/server/handlers/observability-shared.js +3 -4
- package/dist/server/handlers/observability-storage-schemas.cjs +2 -3
- package/dist/server/handlers/observability-storage-schemas.js +1 -2
- package/dist/server/handlers/observability.cjs +3 -3
- package/dist/server/handlers/observability.js +2 -2
- package/dist/server/handlers/plans.cjs +2 -2
- package/dist/server/handlers/plans.js +1 -1
- package/dist/server/handlers/processor-providers.cjs +5 -6
- package/dist/server/handlers/processor-providers.js +4 -5
- package/dist/server/handlers/processors.cjs +5 -6
- package/dist/server/handlers/processors.js +4 -5
- package/dist/server/handlers/prompt-block-versions.cjs +6 -7
- package/dist/server/handlers/prompt-block-versions.js +5 -6
- package/dist/server/handlers/responses.adapter.cjs +2 -3
- package/dist/server/handlers/responses.adapter.js +1 -2
- package/dist/server/handlers/responses.cjs +2 -2
- package/dist/server/handlers/responses.js +1 -1
- package/dist/server/handlers/responses.storage.cjs +4 -5
- package/dist/server/handlers/responses.storage.js +3 -4
- package/dist/server/handlers/schedules-workflows-shim.cjs +2 -3
- package/dist/server/handlers/schedules-workflows-shim.js +1 -2
- package/dist/server/handlers/schedules.cjs +2 -2
- package/dist/server/handlers/schedules.js +1 -1
- package/dist/server/handlers/scorer-versions.cjs +6 -7
- package/dist/server/handlers/scorer-versions.js +5 -6
- package/dist/server/handlers/scores.cjs +2 -2
- package/dist/server/handlers/scores.js +1 -1
- package/dist/server/handlers/skills-sh-shared.cjs +3 -4
- package/dist/server/handlers/skills-sh-shared.js +2 -3
- package/dist/server/handlers/stored-agent-favorites.cjs +8 -9
- package/dist/server/handlers/stored-agent-favorites.js +7 -8
- package/dist/server/handlers/stored-agents.cjs +8 -9
- package/dist/server/handlers/stored-agents.js +7 -8
- package/dist/server/handlers/stored-mcp-clients.cjs +7 -8
- package/dist/server/handlers/stored-mcp-clients.js +6 -7
- package/dist/server/handlers/stored-prompt-blocks.cjs +7 -8
- package/dist/server/handlers/stored-prompt-blocks.js +6 -7
- package/dist/server/handlers/stored-scorers.cjs +7 -8
- package/dist/server/handlers/stored-scorers.js +6 -7
- package/dist/server/handlers/stored-skill-favorites.cjs +8 -9
- package/dist/server/handlers/stored-skill-favorites.js +7 -8
- package/dist/server/handlers/stored-skills.cjs +7 -8
- package/dist/server/handlers/stored-skills.js +6 -7
- package/dist/server/handlers/stored-workspaces.cjs +6 -7
- package/dist/server/handlers/stored-workspaces.js +5 -6
- package/dist/server/handlers/system.cjs +5 -6
- package/dist/server/handlers/system.js +4 -5
- package/dist/server/handlers/test-utils.cjs +2 -3
- package/dist/server/handlers/test-utils.js +1 -2
- package/dist/server/handlers/tool-providers.cjs +6 -7
- package/dist/server/handlers/tool-providers.js +5 -6
- package/dist/server/handlers/tool-schema-overrides.cjs +2 -3
- package/dist/server/handlers/tool-schema-overrides.js +1 -2
- package/dist/server/handlers/tools.cjs +2 -2
- package/dist/server/handlers/tools.js +1 -1
- package/dist/server/handlers/utils.cjs +3 -2
- package/dist/server/handlers/utils.d.ts +17 -2
- package/dist/server/handlers/utils.d.ts.map +1 -1
- package/dist/server/handlers/utils.js +1 -1
- package/dist/server/handlers/validate-agent-instructions.cjs +4 -5
- package/dist/server/handlers/validate-agent-instructions.js +3 -4
- package/dist/server/handlers/validate-avatar.cjs +3 -4
- package/dist/server/handlers/validate-avatar.js +2 -3
- package/dist/server/handlers/vector.cjs +2 -2
- package/dist/server/handlers/vector.js +1 -1
- package/dist/server/handlers/version-helpers.cjs +2 -3
- package/dist/server/handlers/version-helpers.js +1 -2
- package/dist/server/handlers/voice.cjs +2 -2
- package/dist/server/handlers/voice.js +1 -1
- package/dist/server/handlers/workflow-builder.cjs +2 -2
- package/dist/server/handlers/workflow-builder.js +1 -1
- package/dist/server/handlers/workflows.cjs +2 -2
- package/dist/server/handlers/workflows.d.ts.map +1 -1
- package/dist/server/handlers/workflows.js +1 -1
- package/dist/server/handlers/workspace.cjs +2 -2
- package/dist/server/handlers/workspace.js +1 -1
- package/dist/server/handlers.cjs +18 -18
- package/dist/server/handlers.js +17 -17
- package/dist/server/schemas/index.cjs +35 -35
- package/dist/server/schemas/index.js +34 -34
- package/dist/server/server-adapter/index.cjs +14 -21
- package/dist/server/server-adapter/index.cjs.map +1 -1
- package/dist/server/server-adapter/index.js +13 -20
- package/dist/server/server-adapter/index.js.map +1 -1
- package/dist/server/server-adapter/routes/observability.d.ts +1 -5
- package/dist/server/server-adapter/routes/observability.d.ts.map +1 -1
- package/dist/{stored-agents-BtaEzKfr.js → stored-agents-BpxMmhtz.js} +9 -11
- package/dist/{stored-agents-BtaEzKfr.js.map → stored-agents-BpxMmhtz.js.map} +1 -1
- package/dist/{stored-agents-BTL-o6aM.cjs → stored-agents-CDlh3CQQ.cjs} +9 -11
- package/dist/{stored-agents-BTL-o6aM.cjs.map → stored-agents-CDlh3CQQ.cjs.map} +1 -1
- package/dist/{stored-mcp-clients-D7bNkmTM.cjs → stored-mcp-clients-BA7OSGZ_.cjs} +3 -4
- package/dist/{stored-mcp-clients-D7bNkmTM.cjs.map → stored-mcp-clients-BA7OSGZ_.cjs.map} +1 -1
- package/dist/{stored-mcp-clients-DMR6NvCp.js → stored-mcp-clients-DtLv0Tly.js} +3 -4
- package/dist/{stored-mcp-clients-DMR6NvCp.js.map → stored-mcp-clients-DtLv0Tly.js.map} +1 -1
- package/dist/{stored-prompt-blocks-BjHxMCuC.cjs → stored-prompt-blocks-Cqi0vnTE.cjs} +4 -5
- package/dist/{stored-prompt-blocks-BjHxMCuC.cjs.map → stored-prompt-blocks-Cqi0vnTE.cjs.map} +1 -1
- package/dist/{stored-prompt-blocks-C7qmiWSB.js → stored-prompt-blocks-Z_BuhsUq.js} +4 -5
- package/dist/{stored-prompt-blocks-C7qmiWSB.js.map → stored-prompt-blocks-Z_BuhsUq.js.map} +1 -1
- package/dist/{stored-scorers-BSxh7JZX.js → stored-scorers-BdJadnUS.js} +4 -5
- package/dist/{stored-scorers-BSxh7JZX.js.map → stored-scorers-BdJadnUS.js.map} +1 -1
- package/dist/{stored-scorers-I8L1-bAI.cjs → stored-scorers-D1zYUEXg.cjs} +4 -5
- package/dist/{stored-scorers-I8L1-bAI.cjs.map → stored-scorers-D1zYUEXg.cjs.map} +1 -1
- package/dist/{stored-skills-DzW8hLnI.js → stored-skills-D8Q1NmsH.js} +3 -4
- package/dist/{stored-skills-DzW8hLnI.js.map → stored-skills-D8Q1NmsH.js.map} +1 -1
- package/dist/{stored-skills-C1e8kf2k.cjs → stored-skills-DppdzQY0.cjs} +3 -4
- package/dist/{stored-skills-C1e8kf2k.cjs.map → stored-skills-DppdzQY0.cjs.map} +1 -1
- package/dist/{stored-workspaces-DSfChCJ0.cjs → stored-workspaces-BOwJwkec.cjs} +3 -4
- package/dist/{stored-workspaces-DSfChCJ0.cjs.map → stored-workspaces-BOwJwkec.cjs.map} +1 -1
- package/dist/{stored-workspaces-AkC68rSw.js → stored-workspaces-CYXLBJy5.js} +3 -4
- package/dist/{stored-workspaces-AkC68rSw.js.map → stored-workspaces-CYXLBJy5.js.map} +1 -1
- package/dist/{system-sSSmmt7I.js → system-B8L_G4oo.js} +2 -3
- package/dist/{system-sSSmmt7I.js.map → system-B8L_G4oo.js.map} +1 -1
- package/dist/{system-B_Sod-Le.cjs → system-DGfJlOxK.cjs} +2 -3
- package/dist/{system-B_Sod-Le.cjs.map → system-DGfJlOxK.cjs.map} +1 -1
- package/dist/{tool-providers-DFQkhO4R.cjs → tool-providers-BVwRJTtB.cjs} +2 -3
- package/dist/{tool-providers-DFQkhO4R.cjs.map → tool-providers-BVwRJTtB.cjs.map} +1 -1
- package/dist/{tool-providers-CIESXi7M.js → tool-providers-Cq3vFqgE.js} +2 -3
- package/dist/{tool-providers-CIESXi7M.js.map → tool-providers-Cq3vFqgE.js.map} +1 -1
- package/dist/{tools-Ci71xxGP.cjs → tools-CeVJwkPP.cjs} +13 -14
- package/dist/tools-CeVJwkPP.cjs.map +1 -0
- package/dist/{tools--oMljfqq.js → tools-hd_ZCJkE.js} +12 -13
- package/dist/tools-hd_ZCJkE.js.map +1 -0
- package/dist/{utils-dDLIDg8O.cjs → utils-BbYUI6Yn.cjs} +37 -14
- package/dist/utils-BbYUI6Yn.cjs.map +1 -0
- package/dist/{utils-CF76qzZR.cjs → utils-BnH77wPf.cjs} +107 -81
- package/dist/utils-BnH77wPf.cjs.map +1 -0
- package/dist/{utils-BBJlS81s.js → utils-DHxjw4Tn.js} +31 -14
- package/dist/utils-DHxjw4Tn.js.map +1 -0
- package/dist/{utils-aoLN3Wfi.js → utils-YEuwVEc2.js} +104 -78
- package/dist/utils-YEuwVEc2.js.map +1 -0
- package/dist/{vector-TWv4t-4g.js → vector-Deod39jt.js} +6 -7
- package/dist/{vector-TWv4t-4g.js.map → vector-Deod39jt.js.map} +1 -1
- package/dist/{vector-BKDD1kwc.cjs → vector-IxK1t4Cb.cjs} +6 -7
- package/dist/{vector-BKDD1kwc.cjs.map → vector-IxK1t4Cb.cjs.map} +1 -1
- package/dist/{vectors-LFI1jch0.cjs → vectors-CqV387sY.cjs} +3 -4
- package/dist/{vectors-LFI1jch0.cjs.map → vectors-CqV387sY.cjs.map} +1 -1
- package/dist/{vectors-CJtupgIF.js → vectors-CvHLWqjC.js} +3 -4
- package/dist/{vectors-CJtupgIF.js.map → vectors-CvHLWqjC.js.map} +1 -1
- package/dist/{version-common-DrzXq7Ct.cjs → version-common-B2n_ML_w.cjs} +3 -4
- package/dist/{version-common-DrzXq7Ct.cjs.map → version-common-B2n_ML_w.cjs.map} +1 -1
- package/dist/{version-common-4xFzvCS5.js → version-common-Di2U8VWH.js} +3 -4
- package/dist/{version-common-4xFzvCS5.js.map → version-common-Di2U8VWH.js.map} +1 -1
- package/dist/{voice-BnGwlZ75.cjs → voice-CBbxcsCM.cjs} +4 -5
- package/dist/{voice-BnGwlZ75.cjs.map → voice-CBbxcsCM.cjs.map} +1 -1
- package/dist/{voice-DjG8tBAD.js → voice-CzFWhWPJ.js} +4 -5
- package/dist/{voice-DjG8tBAD.js.map → voice-CzFWhWPJ.js.map} +1 -1
- package/dist/{workflow-builder-Dguv4rc0.cjs → workflow-builder-B33pXjdu.cjs} +8 -10
- package/dist/{workflow-builder-Dguv4rc0.cjs.map → workflow-builder-B33pXjdu.cjs.map} +1 -1
- package/dist/{workflow-builder-BoI-XXsT.js → workflow-builder-D4Po74yJ.js} +8 -10
- package/dist/{workflow-builder-BoI-XXsT.js.map → workflow-builder-D4Po74yJ.js.map} +1 -1
- package/dist/{workflows-Dcx4Ib0t.js → workflows-C9BMJV_C.js} +3 -4
- package/dist/{workflows-Dcx4Ib0t.js.map → workflows-C9BMJV_C.js.map} +1 -1
- package/dist/{workflows-5AytZqK_.cjs → workflows-CiP6r_nw.cjs} +35 -36
- package/dist/workflows-CiP6r_nw.cjs.map +1 -0
- package/dist/{workflows-C8rDpHyY.cjs → workflows-SYBpQupF.cjs} +3 -4
- package/dist/{workflows-C8rDpHyY.cjs.map → workflows-SYBpQupF.cjs.map} +1 -1
- package/dist/{workflows-D7Oq5On9.js → workflows-tk1Ixg8M.js} +35 -36
- package/dist/workflows-tk1Ixg8M.js.map +1 -0
- package/dist/{workspace-BVHXoKmP.js → workspace-C9dE6D1U.js} +6 -7
- package/dist/{workspace-BVHXoKmP.js.map → workspace-C9dE6D1U.js.map} +1 -1
- package/dist/{workspace-d25MZ9dj.cjs → workspace-CyH_iu8w.cjs} +6 -7
- package/dist/{workspace-d25MZ9dj.cjs.map → workspace-CyH_iu8w.cjs.map} +1 -1
- package/dist/{workspace-BJYV2lkt.cjs → workspace-KeHGZvNV.cjs} +2 -3
- package/dist/{workspace-BJYV2lkt.cjs.map → workspace-KeHGZvNV.cjs.map} +1 -1
- package/dist/{workspace-4dBGFdV2.js → workspace-muaSMxVS.js} +2 -3
- package/dist/{workspace-4dBGFdV2.js.map → workspace-muaSMxVS.js.map} +1 -1
- package/package.json +10 -10
- package/dist/agents-AyHEkc2F.cjs.map +0 -1
- package/dist/agents-BYE5Dmfk.js.map +0 -1
- package/dist/dist-5TAg2f91.js.map +0 -1
- package/dist/dist-C9Jwt1f0.cjs +0 -3
- package/dist/dist-CukR8zi9.cjs.map +0 -1
- package/dist/dist-Dgae8Imb.js +0 -1
- package/dist/memory-BHtTSzvJ.js.map +0 -1
- package/dist/memory-CwwkVDh1.cjs.map +0 -1
- package/dist/observability-new-endpoints-3DlTYf34.js.map +0 -1
- package/dist/observability-new-endpoints-Drr7q2Dj.cjs.map +0 -1
- package/dist/probe-image-size-DBmo2MAe.js.map +0 -1
- package/dist/probe-image-size-l1uuhbob.cjs.map +0 -1
- package/dist/route-builder-B2Qhhd7C.cjs.map +0 -1
- package/dist/route-builder-CjkWxv4E.js.map +0 -1
- package/dist/routes-CKfXiwRc.js.map +0 -1
- package/dist/routes-jXksmX9G.cjs.map +0 -1
- package/dist/schema-CzbEIyhE-20gGIWkz.cjs.map +0 -1
- package/dist/schema-CzbEIyhE-BsMcj9Ws.js.map +0 -1
- package/dist/tools--oMljfqq.js.map +0 -1
- package/dist/tools-Ci71xxGP.cjs.map +0 -1
- package/dist/utils-BBJlS81s.js.map +0 -1
- package/dist/utils-CF76qzZR.cjs.map +0 -1
- package/dist/utils-aoLN3Wfi.js.map +0 -1
- package/dist/utils-dDLIDg8O.cjs.map +0 -1
- package/dist/workflows-5AytZqK_.cjs.map +0 -1
- package/dist/workflows-D7Oq5On9.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as HTTPException } from "./http-exception-
|
|
2
|
-
import { m as isReservedRequestContextKey, o as MASTRA_RESOURCE_ID_KEY } from "./constants-
|
|
1
|
+
import { t as HTTPException } from "./http-exception-CzaWkxMl.js";
|
|
2
|
+
import { m as isReservedRequestContextKey, o as MASTRA_RESOURCE_ID_KEY } from "./constants-ohUUT3Vg.js";
|
|
3
3
|
import * as authEE from "@mastra/core/auth/ee";
|
|
4
4
|
import { MastraMemory } from "@mastra/core/memory";
|
|
5
|
-
|
|
5
|
+
// src/server/fga-permissions.ts
|
|
6
6
|
/**
|
|
7
7
|
* Safe re-export of `MastraFGAPermissions` from `@mastra/core/auth/ee`.
|
|
8
8
|
*
|
|
@@ -49,8 +49,7 @@ const FALLBACK_PERMISSIONS = {
|
|
|
49
49
|
};
|
|
50
50
|
const realPermissions = authEE.MastraFGAPermissions;
|
|
51
51
|
const MastraFGAPermissions = realPermissions && Object.keys(realPermissions).length > 0 ? realPermissions : FALLBACK_PERMISSIONS;
|
|
52
|
-
|
|
53
|
-
//#region src/server/handlers/utils.ts
|
|
52
|
+
// src/server/handlers/utils.ts
|
|
54
53
|
/**
|
|
55
54
|
* Resolves a workflow by id or registration key from the set Mastra exposes
|
|
56
55
|
* publicly. Unlike `mastra.getWorkflowById`, this excludes hidden internal
|
|
@@ -61,6 +60,24 @@ function getPublicWorkflowById(mastra, workflowId) {
|
|
|
61
60
|
const workflows = mastra.listWorkflows();
|
|
62
61
|
return Object.values(workflows).find((workflow) => workflow.id === workflowId) ?? (Object.hasOwn(workflows, workflowId) ? workflows[workflowId] : void 0);
|
|
63
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Resolves the FGA provider a handler should use for this request, following
|
|
65
|
+
* the same auth-mode-aware selection as the route-level checks: Studio auth
|
|
66
|
+
* requests use `studio.fga` when it is configured, and everything else uses
|
|
67
|
+
* `server.fga`.
|
|
68
|
+
*
|
|
69
|
+
* Returns `undefined` when FGA is not configured at all. When FGA is
|
|
70
|
+
* configured but no provider applies to this request (for example `studio.fga`
|
|
71
|
+
* is set and the request used server auth), the request is denied rather than
|
|
72
|
+
* treated as unrestricted.
|
|
73
|
+
*/
|
|
74
|
+
function getHandlerFGAProvider(mastra, requestContext) {
|
|
75
|
+
const studioFga = mastra?.getStudio?.()?.fga;
|
|
76
|
+
const serverFga = mastra?.getServer?.()?.fga;
|
|
77
|
+
if (requestContext?.get("mastra__authMode") === "studio" && studioFga) return studioFga;
|
|
78
|
+
if (serverFga) return serverFga;
|
|
79
|
+
if (studioFga) throw new HTTPException(403, { message: "Access denied: no FGA provider is configured for this request" });
|
|
80
|
+
}
|
|
64
81
|
function validateBody(body) {
|
|
65
82
|
const errorResponse = Object.entries(body).reduce((acc, [key, value]) => {
|
|
66
83
|
if (!value) acc[key] = `Argument "${key}" is required`;
|
|
@@ -192,7 +209,8 @@ async function validateThreadOwnership(thread, effectiveResourceId) {
|
|
|
192
209
|
*/
|
|
193
210
|
async function enforceThreadAccess({ mastra, requestContext, threadId, thread, effectiveResourceId, permission = MastraFGAPermissions.MEMORY_READ }) {
|
|
194
211
|
await validateThreadOwnership(thread, effectiveResourceId);
|
|
195
|
-
|
|
212
|
+
const fgaProvider = getHandlerFGAProvider(mastra, requestContext);
|
|
213
|
+
if (!fgaProvider) return;
|
|
196
214
|
const user = requestContext?.get("user");
|
|
197
215
|
if (!user || typeof user !== "object") throw new HTTPException(403, { message: "FGA authorization denied: authenticated user is required" });
|
|
198
216
|
await MastraMemory.checkThreadFGA({
|
|
@@ -201,7 +219,8 @@ async function enforceThreadAccess({ mastra, requestContext, threadId, thread, e
|
|
|
201
219
|
threadId,
|
|
202
220
|
resourceId: thread?.resourceId ?? effectiveResourceId,
|
|
203
221
|
requestContext,
|
|
204
|
-
permission
|
|
222
|
+
permission,
|
|
223
|
+
fgaProvider
|
|
205
224
|
});
|
|
206
225
|
}
|
|
207
226
|
/**
|
|
@@ -214,10 +233,9 @@ async function enforceThreadAccess({ mastra, requestContext, threadId, thread, e
|
|
|
214
233
|
* an FGA provider authorizes the route; otherwise it is refused rather than granted implicitly,
|
|
215
234
|
* as on the thread-transfer route.
|
|
216
235
|
*/
|
|
217
|
-
async function validateRunOwnership(run, effectiveResourceId, mastra) {
|
|
236
|
+
async function validateRunOwnership(run, effectiveResourceId, mastra, requestContext) {
|
|
218
237
|
if (!run) return;
|
|
219
|
-
|
|
220
|
-
if (!(typeof (server?.auth)?.mapUserToResourceId === "function")) {
|
|
238
|
+
if (!(typeof ((mastra?.getServer?.())?.auth)?.mapUserToResourceId === "function")) {
|
|
221
239
|
if (effectiveResourceId && run.resourceId && run.resourceId !== effectiveResourceId) throw new HTTPException(403, { message: "Access denied: workflow run belongs to a different resource" });
|
|
222
240
|
return;
|
|
223
241
|
}
|
|
@@ -225,9 +243,8 @@ async function validateRunOwnership(run, effectiveResourceId, mastra) {
|
|
|
225
243
|
if (run.resourceId !== effectiveResourceId) throw new HTTPException(403, { message: "Access denied: workflow run belongs to a different resource" });
|
|
226
244
|
return;
|
|
227
245
|
}
|
|
228
|
-
if (!
|
|
246
|
+
if (!getHandlerFGAProvider(mastra, requestContext)) throw new HTTPException(403, { message: "Access denied: unscoped workflow run access requires explicit authorization. Configure an FGA provider to authorize privileged run access." });
|
|
229
247
|
}
|
|
230
|
-
|
|
231
|
-
export { getEffectiveThreadId as a, parseFilters as c, sanitizeBody as d, stripClientCredentialHeaders as f, MastraFGAPermissions as g, validateThreadOwnership as h, getEffectiveResourceId as i, parsePerPage as l, validateRunOwnership as m, enforceThreadAccess as n, getPublicWorkflowById as o, validateBody as p, getContextResourceId as r, mergeBodyRequestContext as s, applyEffectiveThreadId as t, requireEffectiveResourceId as u };
|
|
248
|
+
export { MastraFGAPermissions as _, getEffectiveThreadId as a, mergeBodyRequestContext as c, requireEffectiveResourceId as d, sanitizeBody as f, validateThreadOwnership as g, validateRunOwnership as h, getEffectiveResourceId as i, parseFilters as l, validateBody as m, enforceThreadAccess as n, getHandlerFGAProvider as o, stripClientCredentialHeaders as p, getContextResourceId as r, getPublicWorkflowById as s, applyEffectiveThreadId as t, parsePerPage as u };
|
|
232
249
|
|
|
233
|
-
//# sourceMappingURL=utils-
|
|
250
|
+
//# sourceMappingURL=utils-DHxjw4Tn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils-DHxjw4Tn.js","names":[],"sources":["../src/server/fga-permissions.ts","../src/server/handlers/utils.ts"],"sourcesContent":["/**\n * Safe re-export of `MastraFGAPermissions` from `@mastra/core/auth/ee`.\n *\n * Why this shim exists:\n * `MastraFGAPermissions` was introduced in `@mastra/core@1.32.0`. Earlier\n * versions of `@mastra/core` ship `@mastra/core/auth/ee` but do not export\n * this constant. A direct named import (`import { MastraFGAPermissions }\n * from '@mastra/core/auth/ee'`) fails at ESM link time when this version\n * of `@mastra/server` is paired with `@mastra/core < 1.32.0`, taking the\n * entire user bundle down before any code runs.\n *\n * A namespace import tolerates missing names — `ns.MissingExport` is just\n * `undefined`, no link-time error. We then expose the permission map.\n *\n * Fallback values:\n * If the consuming `@mastra/core` does not export `MastraFGAPermissions`,\n * we substitute a hardcoded map of the canonical permission strings used\n * by routes in `@mastra/server`. This preserves the explicit RBAC\n * permission overrides those routes already had as string literals in\n * `@mastra/server@1.31.0` (e.g. `requiresPermission: \"agents:execute\"`\n * on `/v1/responses`). Without this fallback, `requiresPermission` would\n * be `undefined` on old core and the auth layer would derive the wrong\n * permission from the route path (e.g. `v1:write` instead of\n * `agents:execute`), breaking RBAC users who upgrade `@mastra/server`\n * but stay on `@mastra/core@1.31.0`.\n *\n * Once the consuming `@mastra/core` is on `1.32.0+` the values are real\n * and behaviour is identical to a direct named import.\n */\n\nimport * as authEE from '@mastra/core/auth/ee';\n\n// Canonical strings for the FGA permission keys actually referenced by\n// `@mastra/server` source. Mirrors `MastraFGAPermissions` in\n// `@mastra/core@1.32.0+` for these specific keys, and matches the string\n// literals previously hardcoded on the same routes in `@mastra/server@1.31.0`.\nconst FALLBACK_PERMISSIONS = {\n AGENTS_CREATE: 'agents:create',\n AGENTS_DELETE: 'agents:delete',\n AGENTS_EXECUTE: 'agents:execute',\n AGENTS_READ: 'agents:read',\n MEMORY_DELETE: 'memory:delete',\n MEMORY_READ: 'memory:read',\n MEMORY_WRITE: 'memory:write',\n TOOLS_EXECUTE: 'tools:execute',\n TOOLS_READ: 'tools:read',\n STORED_WORKFLOWS_READ: 'stored-workflows:read',\n STORED_WORKFLOWS_WRITE: 'stored-workflows:write',\n WORKFLOWS_EXECUTE: 'workflows:execute',\n WORKFLOWS_READ: 'workflows:read',\n} as const;\n\nconst realPermissions = (authEE as any).MastraFGAPermissions;\n\n// Typed as `any` on purpose: consumers of `@mastra/server` may run their\n// typecheck against a `@mastra/core` that doesn't export `MastraFGAPermissions`\n// (anything < 1.32.0). Pinning to the real type would push that name into the\n// emitted `.d.ts` and break downstream typecheck. `any` lets the property\n// accesses (`MastraFGAPermissions.AGENTS_READ`) flow through cleanly on every\n// supported core.\nexport const MastraFGAPermissions: any =\n realPermissions && Object.keys(realPermissions).length > 0 ? realPermissions : FALLBACK_PERMISSIONS;\n","import type { Mastra } from '@mastra/core';\nimport type { IFGAProvider, MastraFGAPermissionInput } from '@mastra/core/auth/ee';\nimport type { RequestContext } from '@mastra/core/di';\nimport { MastraMemory } from '@mastra/core/memory';\nimport type { Workflow } from '@mastra/core/workflows';\nimport {\n MASTRA_AUTH_MODE_KEY,\n MASTRA_RESOURCE_ID_KEY,\n MASTRA_THREAD_ID_KEY,\n isReservedRequestContextKey,\n} from '../constants';\nimport { MastraFGAPermissions } from '../fga-permissions';\nimport { HTTPException } from '../http-exception';\n\n/**\n * Resolves a workflow by id or registration key from the set Mastra exposes\n * publicly. Unlike `mastra.getWorkflowById`, this excludes hidden internal\n * workflows (e.g. a durable agent's backing loop), which must never be\n * runnable through HTTP routes.\n */\nexport function getPublicWorkflowById(mastra: Mastra, workflowId: string): Workflow | undefined {\n const workflows = mastra.listWorkflows();\n return (\n Object.values(workflows).find(workflow => workflow.id === workflowId) ??\n (Object.hasOwn(workflows, workflowId) ? workflows[workflowId] : undefined)\n );\n}\n\n/**\n * Resolves the FGA provider a handler should use for this request, following\n * the same auth-mode-aware selection as the route-level checks: Studio auth\n * requests use `studio.fga` when it is configured, and everything else uses\n * `server.fga`.\n *\n * Returns `undefined` when FGA is not configured at all. When FGA is\n * configured but no provider applies to this request (for example `studio.fga`\n * is set and the request used server auth), the request is denied rather than\n * treated as unrestricted.\n */\nexport function getHandlerFGAProvider(mastra: any, requestContext?: RequestContext): IFGAProvider | undefined {\n const studioFga = mastra?.getStudio?.()?.fga as IFGAProvider | undefined;\n const serverFga = mastra?.getServer?.()?.fga as IFGAProvider | undefined;\n\n if (requestContext?.get(MASTRA_AUTH_MODE_KEY) === 'studio' && studioFga) return studioFga;\n if (serverFga) return serverFga;\n if (studioFga) {\n throw new HTTPException(403, { message: 'Access denied: no FGA provider is configured for this request' });\n }\n return undefined;\n}\n\n// Validation helper\nexport function validateBody(body: Record<string, unknown>) {\n const errorResponse = Object.entries(body).reduce<Record<string, string>>((acc, [key, value]) => {\n if (!value) {\n acc[key] = `Argument \"${key}\" is required`;\n }\n return acc;\n }, {});\n\n if (Object.keys(errorResponse).length > 0) {\n throw new HTTPException(400, { message: Object.values(errorResponse)[0] });\n }\n}\n\n/**\n * sanitizes the body by removing disallowed keys.\n * @param body body to sanitize\n * @param disallowedKeys keys to remove from the body\n */\nexport function sanitizeBody(body: Record<string, unknown>, disallowedKeys: string[]) {\n for (const key of disallowedKeys) {\n if (key in body) {\n delete body[key];\n }\n }\n}\n\nconst CREDENTIAL_HEADER_NAMES = new Set([\n 'authorization',\n 'proxy-authorization',\n 'x-api-key',\n 'api-key',\n 'x-goog-api-key',\n 'cookie',\n]);\n\n/**\n * Removes credential-bearing headers from client-supplied `modelSettings.headers`\n * so a caller's own auth (e.g. the app's bearer token) can never override the\n * provider credential configured on the server. Non-credential headers are kept.\n */\nexport function stripClientCredentialHeaders(body: Record<string, unknown>) {\n const modelSettings = body.modelSettings;\n if (!modelSettings || typeof modelSettings !== 'object') return;\n const headers = (modelSettings as { headers?: unknown }).headers;\n if (!headers || typeof headers !== 'object') return;\n\n const kept = Object.fromEntries(\n Object.entries(headers).filter(([name]) => !CREDENTIAL_HEADER_NAMES.has(name.toLowerCase())),\n );\n body.modelSettings = { ...modelSettings, headers: kept };\n}\n\nexport function parsePerPage(\n value: string | undefined,\n defaultValue: number = 100,\n max: number = 1000,\n): number | false {\n const normalized = (value || '').trim().toLowerCase();\n // Handle explicit false to bypass pagination\n if (normalized === 'false') {\n return false;\n }\n const parsed = parseInt(value || String(defaultValue), 10);\n if (isNaN(parsed)) return defaultValue;\n return Math.min(max, Math.max(1, parsed));\n}\n\n/**\n * Parses filter query parameters into a key-value object.\n */\nexport function parseFilters(filters: string | string[] | undefined): Record<string, string> | undefined {\n if (!filters) return undefined;\n\n return Object.fromEntries(\n (Array.isArray(filters) ? filters : [filters]).map((attr: string) => {\n const [key, ...valueParts] = attr.split(':');\n const value = valueParts.join(':'); // ✅ Handles colons in values\n return [key, value];\n }),\n );\n}\n\n/**\n * Merges a body-supplied requestContext into the trusted server RequestContext.\n * The server context is authoritative: reserved keys are skipped and body values\n * only fill keys the server context has not already set.\n */\nexport function mergeBodyRequestContext(serverRequestContext: RequestContext, bodyRequestContext: unknown): void {\n if (!bodyRequestContext || typeof bodyRequestContext !== 'object') {\n return;\n }\n\n for (const [key, value] of Object.entries(bodyRequestContext)) {\n if (isReservedRequestContextKey(key)) continue;\n if (serverRequestContext.get(key) === undefined) {\n serverRequestContext.set(key, value);\n }\n }\n}\n\n// ============================================================================\n// Authorization Utilities\n// ============================================================================\n\n/**\n * Gets the effective resourceId, preferring the reserved key from requestContext\n * over client-provided values for security.\n */\nexport function getEffectiveResourceId(\n requestContext: RequestContext | undefined,\n clientResourceId: string | undefined,\n): string | undefined {\n const contextResourceId = requestContext?.get(MASTRA_RESOURCE_ID_KEY) as string | undefined;\n return contextResourceId || clientResourceId;\n}\n\n/**\n * Returns the resource id resolved from the request context alone (set via\n * `mapUserToResourceId` or the `x-resource-id` header), ignoring any\n * client-provided value. Its presence indicates a resource-scoped caller;\n * its absence indicates a privileged/service context.\n */\nexport function getContextResourceId(requestContext: RequestContext | undefined): string | undefined {\n return requestContext?.get(MASTRA_RESOURCE_ID_KEY) as string | undefined;\n}\n\n/**\n * Ensures a memory request has a resolvable resource ID. The body's\n * `memory.resource` is optional so authenticated setups can rely on the\n * server-derived resource ID (MASTRA_RESOURCE_ID_KEY set via mapUserToResourceId).\n * When neither the body nor the request context provides one, reject with a\n * clear 400 instead of failing deep inside agent execution.\n */\nexport function requireEffectiveResourceId(\n effectiveResourceId: string | undefined,\n): asserts effectiveResourceId is string {\n if (!effectiveResourceId) {\n throw new HTTPException(400, {\n message:\n 'A resource ID is required when using memory. Provide memory.resource in the request body, or configure server auth with mapUserToResourceId to derive it from the authenticated user.',\n });\n }\n}\n\n/**\n * Gets the effective threadId, preferring the reserved key from requestContext\n * over client-provided values for security.\n */\nexport function getEffectiveThreadId(\n requestContext: RequestContext | undefined,\n clientThreadId: string | undefined,\n): string | undefined {\n const contextThreadId = requestContext?.get(MASTRA_THREAD_ID_KEY) as string | undefined;\n return contextThreadId || clientThreadId;\n}\n\n/**\n * Applies the effective threadId to a client memory thread option. Object\n * threads keep their other fields (metadata, title, ...) so they reach thread\n * creation; a client-supplied resourceId is dropped because the server decides\n * the resource.\n */\nexport function applyEffectiveThreadId<T extends string | { id: string } | undefined>(\n thread: T,\n effectiveThreadId: string | undefined,\n): T | string {\n if (!effectiveThreadId) return thread;\n if (thread && typeof thread === 'object') {\n const { resourceId: _resourceId, ...fields } = thread as { id: string; resourceId?: unknown };\n return { ...fields, id: effectiveThreadId } as T;\n }\n return effectiveThreadId;\n}\n\n/**\n * Validates that a thread belongs to the specified resourceId.\n * Throws 403 if the thread exists but belongs to a different resource.\n * Threads with no resourceId are accessible to all (shared threads).\n */\nexport async function validateThreadOwnership(\n thread: { resourceId?: string | null } | null | undefined,\n effectiveResourceId: string | undefined,\n): Promise<void> {\n if (thread && effectiveResourceId && thread.resourceId && thread.resourceId !== effectiveResourceId) {\n throw new HTTPException(403, { message: 'Access denied: thread belongs to a different resource' });\n }\n}\n\n/**\n * Validates both coarse resource ownership and fine-grained thread access.\n * FGA enforcement is a no-op when no FGA provider is configured.\n */\nexport async function enforceThreadAccess({\n mastra,\n requestContext,\n threadId,\n thread,\n effectiveResourceId,\n permission = MastraFGAPermissions.MEMORY_READ,\n}: {\n mastra: any;\n requestContext?: RequestContext;\n threadId: string;\n thread?: { resourceId?: string | null } | null;\n effectiveResourceId?: string;\n permission?: MastraFGAPermissionInput;\n}): Promise<void> {\n await validateThreadOwnership(thread, effectiveResourceId);\n\n const fgaProvider = getHandlerFGAProvider(mastra, requestContext);\n if (!fgaProvider) {\n return;\n }\n\n const user = requestContext?.get('user');\n if (!user || typeof user !== 'object') {\n throw new HTTPException(403, { message: 'FGA authorization denied: authenticated user is required' });\n }\n\n await MastraMemory.checkThreadFGA({\n mastra,\n user: user as { id: string; [key: string]: unknown },\n threadId,\n resourceId: thread?.resourceId ?? effectiveResourceId,\n requestContext,\n permission,\n fgaProvider,\n });\n}\n\n/**\n * Validates that a caller may act on a workflow run.\n *\n * Without `server.auth.mapUserToResourceId` there is no tenancy model, and only a mismatch\n * between two present resource ids is denied. With a mapper, a resource-scoped caller may only\n * act on runs it owns (an owner-less run is not its run). An unscoped caller is a\n * privileged/service context (see getContextResourceId), but that privilege is only granted when\n * an FGA provider authorizes the route; otherwise it is refused rather than granted implicitly,\n * as on the thread-transfer route.\n */\nexport async function validateRunOwnership(\n run: { resourceId?: string | null } | null | undefined,\n effectiveResourceId: string | undefined,\n mastra?: {\n getServer?: () => { auth?: unknown; fga?: unknown } | undefined;\n getStudio?: () => { fga?: unknown } | undefined;\n },\n requestContext?: RequestContext,\n): Promise<void> {\n if (!run) return;\n const server = mastra?.getServer?.();\n const tenancy =\n typeof (server?.auth as { mapUserToResourceId?: unknown } | undefined)?.mapUserToResourceId === 'function';\n if (!tenancy) {\n if (effectiveResourceId && run.resourceId && run.resourceId !== effectiveResourceId) {\n throw new HTTPException(403, { message: 'Access denied: workflow run belongs to a different resource' });\n }\n return;\n }\n if (effectiveResourceId) {\n if (run.resourceId !== effectiveResourceId) {\n throw new HTTPException(403, { message: 'Access denied: workflow run belongs to a different resource' });\n }\n return;\n }\n if (!getHandlerFGAProvider(mastra, requestContext)) {\n throw new HTTPException(403, {\n message:\n 'Access denied: unscoped workflow run access requires explicit authorization. Configure an FGA provider to authorize privileged run access.',\n });\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { t as HTTPException } from "./http-exception-
|
|
2
|
-
import { n as standardSchemaToJSONSchema, r as toStandardSchema } from "./schema-
|
|
3
|
-
import { o as MASTRA_RESOURCE_ID_KEY } from "./constants-
|
|
4
|
-
|
|
1
|
+
import { t as HTTPException } from "./http-exception-CzaWkxMl.js";
|
|
2
|
+
import { n as standardSchemaToJSONSchema, r as toStandardSchema } from "./schema-Bf12g7KC-DBc4NSds.js";
|
|
3
|
+
import { o as MASTRA_RESOURCE_ID_KEY } from "./constants-ohUUT3Vg.js";
|
|
4
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/double-indexed-kv.js
|
|
5
5
|
var DoubleIndexedKV = class {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.keyToValue = /* @__PURE__ */ new Map();
|
|
@@ -22,8 +22,7 @@ var DoubleIndexedKV = class {
|
|
|
22
22
|
this.valueToKey.clear();
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
|
|
26
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/registry.js
|
|
25
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/registry.js
|
|
27
26
|
var Registry = class {
|
|
28
27
|
constructor(generateIdentifier) {
|
|
29
28
|
this.generateIdentifier = generateIdentifier;
|
|
@@ -44,8 +43,7 @@ var Registry = class {
|
|
|
44
43
|
return this.kv.getByKey(identifier);
|
|
45
44
|
}
|
|
46
45
|
};
|
|
47
|
-
|
|
48
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/class-registry.js
|
|
46
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/class-registry.js
|
|
49
47
|
var ClassRegistry = class extends Registry {
|
|
50
48
|
constructor() {
|
|
51
49
|
super((c) => c.name);
|
|
@@ -61,8 +59,7 @@ var ClassRegistry = class extends Registry {
|
|
|
61
59
|
return this.classToAllowedProps.get(value);
|
|
62
60
|
}
|
|
63
61
|
};
|
|
64
|
-
|
|
65
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/util.js
|
|
62
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/util.js
|
|
66
63
|
function valuesOfObj(record) {
|
|
67
64
|
if ("values" in Object) return Object.values(record);
|
|
68
65
|
const values = [];
|
|
@@ -90,8 +87,7 @@ function findArr(record, predicate) {
|
|
|
90
87
|
if (predicate(value)) return value;
|
|
91
88
|
}
|
|
92
89
|
}
|
|
93
|
-
|
|
94
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/custom-transformer-registry.js
|
|
90
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/custom-transformer-registry.js
|
|
95
91
|
var CustomTransformerRegistry = class {
|
|
96
92
|
constructor() {
|
|
97
93
|
this.transfomers = {};
|
|
@@ -106,9 +102,8 @@ var CustomTransformerRegistry = class {
|
|
|
106
102
|
return this.transfomers[name];
|
|
107
103
|
}
|
|
108
104
|
};
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
const getType$1 = (payload) => Object.prototype.toString.call(payload).slice(8, -1);
|
|
105
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/is.js
|
|
106
|
+
const getType = (payload) => Object.prototype.toString.call(payload).slice(8, -1);
|
|
112
107
|
const isUndefined = (payload) => typeof payload === "undefined";
|
|
113
108
|
const isNull = (payload) => payload === null;
|
|
114
109
|
const isPlainObject$1 = (payload) => {
|
|
@@ -118,14 +113,14 @@ const isPlainObject$1 = (payload) => {
|
|
|
118
113
|
return Object.getPrototypeOf(payload) === Object.prototype;
|
|
119
114
|
};
|
|
120
115
|
const isEmptyObject = (payload) => isPlainObject$1(payload) && Object.keys(payload).length === 0;
|
|
121
|
-
const isArray
|
|
116
|
+
const isArray = (payload) => Array.isArray(payload);
|
|
122
117
|
const isString = (payload) => typeof payload === "string";
|
|
123
118
|
const isNumber = (payload) => typeof payload === "number" && !isNaN(payload);
|
|
124
119
|
const isBoolean = (payload) => typeof payload === "boolean";
|
|
125
120
|
const isRegExp = (payload) => payload instanceof RegExp;
|
|
126
121
|
const isMap = (payload) => payload instanceof Map;
|
|
127
122
|
const isSet = (payload) => payload instanceof Set;
|
|
128
|
-
const isSymbol = (payload) => getType
|
|
123
|
+
const isSymbol = (payload) => getType(payload) === "Symbol";
|
|
129
124
|
const isDate = (payload) => payload instanceof Date && !isNaN(payload.valueOf());
|
|
130
125
|
const isError = (payload) => payload instanceof Error;
|
|
131
126
|
const isNaNValue = (payload) => typeof payload === "number" && isNaN(payload);
|
|
@@ -134,8 +129,7 @@ const isBigint = (payload) => typeof payload === "bigint";
|
|
|
134
129
|
const isInfinite = (payload) => payload === Infinity || payload === -Infinity;
|
|
135
130
|
const isTypedArray = (payload) => ArrayBuffer.isView(payload) && !(payload instanceof DataView);
|
|
136
131
|
const isURL = (payload) => payload instanceof URL;
|
|
137
|
-
|
|
138
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/pathstringifier.js
|
|
132
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/pathstringifier.js
|
|
139
133
|
const escapeKey = (key) => key.replace(/\\/g, "\\\\").replace(/\./g, "\\.");
|
|
140
134
|
const stringifyPath = (path) => path.map(String).map(escapeKey).join(".");
|
|
141
135
|
const parsePath = (string, legacyPaths) => {
|
|
@@ -167,8 +161,7 @@ const parsePath = (string, legacyPaths) => {
|
|
|
167
161
|
result.push(lastSegment);
|
|
168
162
|
return result;
|
|
169
163
|
};
|
|
170
|
-
|
|
171
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/transformer.js
|
|
164
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/transformer.js
|
|
172
165
|
function simpleTransformation(isApplicable, annotation, transform, untransform) {
|
|
173
166
|
return {
|
|
174
167
|
isApplicable,
|
|
@@ -311,7 +304,7 @@ simpleRules.forEach((rule) => {
|
|
|
311
304
|
simpleRulesByAnnotation[rule.annotation] = rule;
|
|
312
305
|
});
|
|
313
306
|
const untransformValue = (json, type, superJson) => {
|
|
314
|
-
if (isArray
|
|
307
|
+
if (isArray(type)) switch (type[0]) {
|
|
315
308
|
case "symbol": return symbolRule.untransform(json, type, superJson);
|
|
316
309
|
case "class": return classRule.untransform(json, type, superJson);
|
|
317
310
|
case "custom": return customRule.untransform(json, type, superJson);
|
|
@@ -324,8 +317,7 @@ const untransformValue = (json, type, superJson) => {
|
|
|
324
317
|
return transformation.untransform(json, superJson);
|
|
325
318
|
}
|
|
326
319
|
};
|
|
327
|
-
|
|
328
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/accessDeep.js
|
|
320
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/accessDeep.js
|
|
329
321
|
const getNthKey = (value, n) => {
|
|
330
322
|
if (n > value.size) throw new Error("index out of bounds");
|
|
331
323
|
const keys = value.keys();
|
|
@@ -365,7 +357,7 @@ const setDeep = (object, path, mapper) => {
|
|
|
365
357
|
let parent = object;
|
|
366
358
|
for (let i = 0; i < path.length - 1; i++) {
|
|
367
359
|
const key = path[i];
|
|
368
|
-
if (isArray
|
|
360
|
+
if (isArray(parent)) {
|
|
369
361
|
const index = +key;
|
|
370
362
|
parent = parent[index];
|
|
371
363
|
} else if (isPlainObject$1(parent)) parent = parent[key];
|
|
@@ -386,7 +378,7 @@ const setDeep = (object, path, mapper) => {
|
|
|
386
378
|
}
|
|
387
379
|
}
|
|
388
380
|
const lastKey = path[path.length - 1];
|
|
389
|
-
if (isArray
|
|
381
|
+
if (isArray(parent)) parent[+lastKey] = mapper(parent[+lastKey]);
|
|
390
382
|
else if (isPlainObject$1(parent)) parent[lastKey] = mapper(parent[lastKey]);
|
|
391
383
|
if (isSet(parent)) {
|
|
392
384
|
const oldValue = getNthKey(parent, +lastKey);
|
|
@@ -411,13 +403,12 @@ const setDeep = (object, path, mapper) => {
|
|
|
411
403
|
}
|
|
412
404
|
return object;
|
|
413
405
|
};
|
|
414
|
-
|
|
415
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/plainer.js
|
|
406
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/plainer.js
|
|
416
407
|
const enableLegacyPaths = (version) => version < 1;
|
|
417
408
|
function traverse(tree, walker, version, origin = []) {
|
|
418
409
|
if (!tree) return;
|
|
419
410
|
const legacyPaths = enableLegacyPaths(version);
|
|
420
|
-
if (!isArray
|
|
411
|
+
if (!isArray(tree)) {
|
|
421
412
|
forEach(tree, (subtree, key) => traverse(subtree, walker, version, [...origin, ...parsePath(key, legacyPaths)]));
|
|
422
413
|
return;
|
|
423
414
|
}
|
|
@@ -441,7 +432,7 @@ function applyReferentialEqualityAnnotations(plain, annotations, version) {
|
|
|
441
432
|
plain = setDeep(plain, identicalObjectPath, () => object);
|
|
442
433
|
});
|
|
443
434
|
}
|
|
444
|
-
if (isArray
|
|
435
|
+
if (isArray(annotations)) {
|
|
445
436
|
const [root, other] = annotations;
|
|
446
437
|
root.forEach((identicalPath) => {
|
|
447
438
|
plain = setDeep(plain, parsePath(identicalPath, legacyPaths), () => plain);
|
|
@@ -450,7 +441,7 @@ function applyReferentialEqualityAnnotations(plain, annotations, version) {
|
|
|
450
441
|
} else forEach(annotations, apply);
|
|
451
442
|
return plain;
|
|
452
443
|
}
|
|
453
|
-
const isDeep = (object, superJson) => isPlainObject$1(object) || isArray
|
|
444
|
+
const isDeep = (object, superJson) => isPlainObject$1(object) || isArray(object) || isMap(object) || isSet(object) || isError(object) || isInstanceOfRegisteredClass(object, superJson);
|
|
454
445
|
function addIdentity(object, path, identities) {
|
|
455
446
|
const existingSet = identities.get(object);
|
|
456
447
|
if (existingSet) existingSet.push(path);
|
|
@@ -490,13 +481,13 @@ const walker = (object, identities, superJson, dedupe, path = [], objectsInThisP
|
|
|
490
481
|
if (includes(objectsInThisPath, object)) return { transformedValue: null };
|
|
491
482
|
const transformationResult = transformValue(object, superJson);
|
|
492
483
|
const transformed = transformationResult?.value ?? object;
|
|
493
|
-
const transformedValue = isArray
|
|
484
|
+
const transformedValue = isArray(transformed) ? [] : {};
|
|
494
485
|
const innerAnnotations = {};
|
|
495
486
|
forEach(transformed, (value, index) => {
|
|
496
487
|
if (index === "__proto__" || index === "constructor" || index === "prototype") throw new Error(`Detected property ${index}. This is a prototype pollution risk, please remove it from your object.`);
|
|
497
488
|
const recursiveResult = walker(value, identities, superJson, dedupe, [...path, index], [...objectsInThisPath, object], seenObjects);
|
|
498
489
|
transformedValue[index] = recursiveResult.transformedValue;
|
|
499
|
-
if (isArray
|
|
490
|
+
if (isArray(recursiveResult.annotations)) innerAnnotations[escapeKey(index)] = recursiveResult.annotations;
|
|
500
491
|
else if (isPlainObject$1(recursiveResult.annotations)) forEach(recursiveResult.annotations, (tree, key) => {
|
|
501
492
|
innerAnnotations[escapeKey(index) + "." + key] = tree;
|
|
502
493
|
});
|
|
@@ -511,35 +502,18 @@ const walker = (object, identities, superJson, dedupe, path = [], objectsInThisP
|
|
|
511
502
|
if (!primitive) seenObjects.set(object, result);
|
|
512
503
|
return result;
|
|
513
504
|
};
|
|
514
|
-
|
|
515
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/is-what/5.5.0/6a17e1f04f109bfa55bd3a32beb0649d4f15de71496a7b56ad89c5617c48dbcf/node_modules/is-what/dist/getType.js
|
|
516
|
-
/** Returns the object type of the given payload */
|
|
517
|
-
function getType(payload) {
|
|
518
|
-
return Object.prototype.toString.call(payload).slice(8, -1);
|
|
519
|
-
}
|
|
520
|
-
//#endregion
|
|
521
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/is-what/5.5.0/6a17e1f04f109bfa55bd3a32beb0649d4f15de71496a7b56ad89c5617c48dbcf/node_modules/is-what/dist/isArray.js
|
|
522
|
-
/** Returns whether the payload is an array */
|
|
523
|
-
function isArray(payload) {
|
|
524
|
-
return getType(payload) === "Array";
|
|
525
|
-
}
|
|
526
|
-
//#endregion
|
|
527
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/is-what/5.5.0/6a17e1f04f109bfa55bd3a32beb0649d4f15de71496a7b56ad89c5617c48dbcf/node_modules/is-what/dist/isPlainObject.js
|
|
505
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/copy-anything/4.1.5/dedefcf2f03e98e70d41bceb3c3897b84814fa553b00ef4acbcec74c4b246876/node_modules/copy-anything/dist/index.js
|
|
528
506
|
/**
|
|
529
|
-
*
|
|
530
|
-
*
|
|
507
|
+
* Assigns a prop the copy is keeping, preserving whether it was enumerable. Callers decide
|
|
508
|
+
* _whether_ to keep a non-enumerable prop before getting here, so by this point the answer is
|
|
509
|
+
* always yes.
|
|
531
510
|
*/
|
|
532
|
-
function
|
|
533
|
-
if (
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
}
|
|
537
|
-
|
|
538
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/copy-anything/4.0.5/22cc8bea9fb94edd0adbb1b532950c62b530da34e51811884acea49340e0256c/node_modules/copy-anything/dist/index.js
|
|
539
|
-
function assignProp(carry, key, newVal, originalObject, includeNonenumerable) {
|
|
540
|
-
const propType = {}.propertyIsEnumerable.call(originalObject, key) ? "enumerable" : "nonenumerable";
|
|
541
|
-
if (propType === "enumerable") carry[key] = newVal;
|
|
542
|
-
if (includeNonenumerable && propType === "nonenumerable") Object.defineProperty(carry, key, {
|
|
511
|
+
function assignProp(carry, key, newVal, originalObject) {
|
|
512
|
+
if (Object.prototype.propertyIsEnumerable.call(originalObject, key)) {
|
|
513
|
+
carry[key] = newVal;
|
|
514
|
+
return;
|
|
515
|
+
}
|
|
516
|
+
Object.defineProperty(carry, key, {
|
|
543
517
|
value: newVal,
|
|
544
518
|
enumerable: false,
|
|
545
519
|
writable: true,
|
|
@@ -547,8 +521,42 @@ function assignProp(carry, key, newVal, originalObject, includeNonenumerable) {
|
|
|
547
521
|
});
|
|
548
522
|
}
|
|
549
523
|
/**
|
|
524
|
+
* Whether `value` is an object literal, as opposed to a class instance, a built-in like `Date`, an
|
|
525
|
+
* `arguments` object, or an object with a null prototype.
|
|
526
|
+
*
|
|
527
|
+
* The prototype check comes first because it is cheap and rejects almost everything; the tag check
|
|
528
|
+
* is only reached by values that are about to be cloned anyway.
|
|
529
|
+
*/
|
|
530
|
+
function isPlainObject(value) {
|
|
531
|
+
return Object.getPrototypeOf(value) === Object.prototype && Object.prototype.toString.call(value) === "[object Object]";
|
|
532
|
+
}
|
|
533
|
+
/**
|
|
534
|
+
* Returns the clone that `value` should be replaced with, and queues it to be filled in later.
|
|
535
|
+
* Anything that isn't an array or a plain object is returned untouched.
|
|
536
|
+
*
|
|
537
|
+
* Reusing the clone already registered in `clones` is what makes circular and shared references
|
|
538
|
+
* work: the placeholder is registered before its contents exist, so a reference back to an ancestor
|
|
539
|
+
* resolves to it rather than walking forever.
|
|
540
|
+
*/
|
|
541
|
+
function cloneRef(value, clones, sources, dests) {
|
|
542
|
+
if (typeof value !== "object" || value === null) return value;
|
|
543
|
+
const array = Array.isArray(value);
|
|
544
|
+
if (!array && !isPlainObject(value)) return value;
|
|
545
|
+
const existing = clones.get(value);
|
|
546
|
+
if (existing !== void 0) return existing;
|
|
547
|
+
const clone = array ? new Array(value.length) : {};
|
|
548
|
+
clones.set(value, clone);
|
|
549
|
+
sources.push(value);
|
|
550
|
+
dests.push(clone);
|
|
551
|
+
return clone;
|
|
552
|
+
}
|
|
553
|
+
/**
|
|
550
554
|
* Copy (clone) an object and all its props recursively to get rid of any prop referenced of the
|
|
551
|
-
* original object. Arrays
|
|
555
|
+
* original object. Arrays and the objects inside them are cloned as well.
|
|
556
|
+
*
|
|
557
|
+
* Nesting depth is limited only by available memory, and circular references are reproduced in the
|
|
558
|
+
* copy rather than followed forever. Two props pointing at the same object still point at one
|
|
559
|
+
* shared copy afterwards.
|
|
552
560
|
*
|
|
553
561
|
* @param target Target can be anything
|
|
554
562
|
* @param [options={}] See type {@link Options} for more details.
|
|
@@ -561,20 +569,40 @@ function assignProp(carry, key, newVal, originalObject, includeNonenumerable) {
|
|
|
561
569
|
* @returns The target with replaced values
|
|
562
570
|
*/
|
|
563
571
|
function copy(target, options = {}) {
|
|
564
|
-
if (
|
|
565
|
-
|
|
566
|
-
const
|
|
567
|
-
const
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
572
|
+
if (typeof target !== "object" || target === null) return target;
|
|
573
|
+
const clones = /* @__PURE__ */ new Map();
|
|
574
|
+
const sources = [];
|
|
575
|
+
const dests = [];
|
|
576
|
+
const result = cloneRef(target, clones, sources, dests);
|
|
577
|
+
const onlyProps = Array.isArray(options.props) ? options.props : void 0;
|
|
578
|
+
const nonenumerable = options.nonenumerable === true;
|
|
579
|
+
while (sources.length) {
|
|
580
|
+
const source = sources.pop();
|
|
581
|
+
const dest = dests.pop();
|
|
582
|
+
if (Array.isArray(source)) {
|
|
583
|
+
for (let i = 0; i < source.length; i++) if (i in source) dest[i] = cloneRef(source[i], clones, sources, dests);
|
|
584
|
+
continue;
|
|
585
|
+
}
|
|
586
|
+
if (nonenumerable) for (const key of Object.getOwnPropertyNames(source)) {
|
|
587
|
+
if (key === "__proto__") continue;
|
|
588
|
+
if (onlyProps && !onlyProps.includes(key)) continue;
|
|
589
|
+
assignProp(dest, key, cloneRef(source[key], clones, sources, dests), source);
|
|
590
|
+
}
|
|
591
|
+
else for (const key in source) {
|
|
592
|
+
if (!Object.prototype.hasOwnProperty.call(source, key)) continue;
|
|
593
|
+
if (key === "__proto__") continue;
|
|
594
|
+
if (onlyProps && !onlyProps.includes(key)) continue;
|
|
595
|
+
dest[key] = cloneRef(source[key], clones, sources, dests);
|
|
596
|
+
}
|
|
597
|
+
for (const key of Object.getOwnPropertySymbols(source)) {
|
|
598
|
+
if (onlyProps && !onlyProps.includes(key)) continue;
|
|
599
|
+
if (!nonenumerable && !Object.prototype.propertyIsEnumerable.call(source, key)) continue;
|
|
600
|
+
assignProp(dest, key, cloneRef(source[key], clones, sources, dests), source);
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
return result;
|
|
575
604
|
}
|
|
576
|
-
|
|
577
|
-
//#region ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/b5fefaeae5105e92d752f15cd158913d848e5075a9f80278488919f0941a70dd/node_modules/superjson/dist/index.js
|
|
605
|
+
// ../../../../../setup-pnpm/node_modules/.bin/store/v11/links/@/superjson/2.2.6/711cee35fda0e5a37276180e7a2ecc71bd8bb1528c27c34fa53791b52a3c4054/node_modules/superjson/dist/index.js
|
|
578
606
|
var SuperJSON = class {
|
|
579
607
|
/**
|
|
580
608
|
* @param dedupeReferentialEqualities If true, SuperJSON will make sure only one instance of referentially equal objects are serialized and the rest are replaced with `null`.
|
|
@@ -648,8 +676,7 @@ SuperJSON.registerClass;
|
|
|
648
676
|
SuperJSON.registerCustom;
|
|
649
677
|
SuperJSON.registerSymbol;
|
|
650
678
|
SuperJSON.allowErrorProps;
|
|
651
|
-
|
|
652
|
-
//#region src/server/utils.ts
|
|
679
|
+
// src/server/utils.ts
|
|
653
680
|
/**
|
|
654
681
|
* Convert any PublicSchema to a JSON Schema.
|
|
655
682
|
* Uses toStandardSchema to handle all schema types (Zod v4, AI SDK Schema, JSON Schema).
|
|
@@ -899,7 +926,6 @@ function convertInstructionsToString(message) {
|
|
|
899
926
|
}).filter((content) => content).join("\n");
|
|
900
927
|
return typeof message.content === "string" ? message.content : "";
|
|
901
928
|
}
|
|
902
|
-
//#endregion
|
|
903
929
|
export { getWorkflowInfo as a, toSlug as c, getStoredResourceScope as i, stringify as l, assertStoredResourceScope as n, normalizeRoutePath as o, convertInstructionsToString as r, scopeStoredResourceMetadata as s, WorkflowRegistry as t };
|
|
904
930
|
|
|
905
|
-
//# sourceMappingURL=utils-
|
|
931
|
+
//# sourceMappingURL=utils-YEuwVEc2.js.map
|