@scoutqa/mastra-core 0.24.6-fork.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/CHANGELOG.md +5844 -0
- package/LICENSE.md +15 -0
- package/README.md +59 -0
- package/a2a.d.ts +1 -0
- package/action.d.ts +1 -0
- package/agent/input-processor/processors.d.ts +1 -0
- package/agent.d.ts +1 -0
- package/ai-tracing.d.ts +1 -0
- package/base.d.ts +1 -0
- package/bundler.d.ts +1 -0
- package/cache.d.ts +1 -0
- package/deployer.d.ts +1 -0
- package/di.d.ts +1 -0
- package/dist/a2a/error.d.ts +24 -0
- package/dist/a2a/error.d.ts.map +1 -0
- package/dist/a2a/index.cjs +80 -0
- package/dist/a2a/index.cjs.map +1 -0
- package/dist/a2a/index.d.ts +4 -0
- package/dist/a2a/index.d.ts.map +1 -0
- package/dist/a2a/index.js +72 -0
- package/dist/a2a/index.js.map +1 -0
- package/dist/a2a/types.d.ts +93 -0
- package/dist/a2a/types.d.ts.map +1 -0
- package/dist/action/index.d.ts +36 -0
- package/dist/action/index.d.ts.map +1 -0
- package/dist/agent/__tests__/mock-model.d.ts +6 -0
- package/dist/agent/__tests__/mock-model.d.ts.map +1 -0
- package/dist/agent/agent.d.ts +728 -0
- package/dist/agent/agent.d.ts.map +1 -0
- package/dist/agent/agent.types.d.ts +130 -0
- package/dist/agent/agent.types.d.ts.map +1 -0
- package/dist/agent/index.cjs +53 -0
- package/dist/agent/index.cjs.map +1 -0
- package/dist/agent/index.d.ts +10 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +4 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/agent/index.warning.d.ts +13 -0
- package/dist/agent/index.warning.d.ts.map +1 -0
- package/dist/agent/input-processor/index.cjs +28 -0
- package/dist/agent/input-processor/index.cjs.map +1 -0
- package/dist/agent/input-processor/index.d.ts +10 -0
- package/dist/agent/input-processor/index.d.ts.map +1 -0
- package/dist/agent/input-processor/index.js +3 -0
- package/dist/agent/input-processor/index.js.map +1 -0
- package/dist/agent/input-processor/processors/index.d.ts +6 -0
- package/dist/agent/input-processor/processors/index.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/language-detector.d.ts +18 -0
- package/dist/agent/input-processor/processors/language-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/moderation.d.ts +18 -0
- package/dist/agent/input-processor/processors/moderation.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/pii-detector.d.ts +18 -0
- package/dist/agent/input-processor/processors/pii-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts +18 -0
- package/dist/agent/input-processor/processors/prompt-injection-detector.d.ts.map +1 -0
- package/dist/agent/input-processor/processors/unicode-normalizer.d.ts +18 -0
- package/dist/agent/input-processor/processors/unicode-normalizer.d.ts.map +1 -0
- package/dist/agent/message-list/index.d.ts +305 -0
- package/dist/agent/message-list/index.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/attachments-to-parts.d.ts +11 -0
- package/dist/agent/message-list/prompt/attachments-to-parts.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/convert-file.d.ts +7 -0
- package/dist/agent/message-list/prompt/convert-file.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts +4 -0
- package/dist/agent/message-list/prompt/convert-to-mastra-v1.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/data-content.d.ts +17 -0
- package/dist/agent/message-list/prompt/data-content.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/download-assets.d.ts +15 -0
- package/dist/agent/message-list/prompt/download-assets.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/image-utils.d.ts +86 -0
- package/dist/agent/message-list/prompt/image-utils.d.ts.map +1 -0
- package/dist/agent/message-list/prompt/invalid-content-error.d.ts +14 -0
- package/dist/agent/message-list/prompt/invalid-content-error.d.ts.map +1 -0
- package/dist/agent/message-list/types.d.ts +3 -0
- package/dist/agent/message-list/types.d.ts.map +1 -0
- package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts +3 -0
- package/dist/agent/message-list/utils/ai-v4-v5/core-model-message.d.ts.map +1 -0
- package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts +3 -0
- package/dist/agent/message-list/utils/ai-v4-v5/ui-message.d.ts.map +1 -0
- package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts +22 -0
- package/dist/agent/message-list/utils/ai-v5/gemini-compatibility.d.ts.map +1 -0
- package/dist/agent/message-list/utils/ai-v5/tool.d.ts +16 -0
- package/dist/agent/message-list/utils/ai-v5/tool.d.ts.map +1 -0
- package/dist/agent/message-list/utils/convert-messages.d.ts +91 -0
- package/dist/agent/message-list/utils/convert-messages.d.ts.map +1 -0
- package/dist/agent/save-queue/index.d.ts +68 -0
- package/dist/agent/save-queue/index.d.ts.map +1 -0
- package/dist/agent/test-utils.d.ts +82 -0
- package/dist/agent/test-utils.d.ts.map +1 -0
- package/dist/agent/trip-wire.d.ts +18 -0
- package/dist/agent/trip-wire.d.ts.map +1 -0
- package/dist/agent/types.d.ts +358 -0
- package/dist/agent/types.d.ts.map +1 -0
- package/dist/agent/utils.d.ts +104 -0
- package/dist/agent/utils.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/index.d.ts +158 -0
- package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +35 -0
- package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts +90 -0
- package/dist/agent/workflows/prepare-stream/prepare-memory-step.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +75 -0
- package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/schema.d.ts +179 -0
- package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -0
- package/dist/agent/workflows/prepare-stream/stream-step.d.ts +36 -0
- package/dist/agent/workflows/prepare-stream/stream-step.d.ts.map +1 -0
- package/dist/ai-tracing/context.d.ts +21 -0
- package/dist/ai-tracing/context.d.ts.map +1 -0
- package/dist/ai-tracing/exporters/base.d.ts +111 -0
- package/dist/ai-tracing/exporters/base.d.ts.map +1 -0
- package/dist/ai-tracing/exporters/cloud.d.ts +30 -0
- package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -0
- package/dist/ai-tracing/exporters/console.d.ts +10 -0
- package/dist/ai-tracing/exporters/console.d.ts.map +1 -0
- package/dist/ai-tracing/exporters/default.d.ts +98 -0
- package/dist/ai-tracing/exporters/default.d.ts.map +1 -0
- package/dist/ai-tracing/exporters/index.d.ts +9 -0
- package/dist/ai-tracing/exporters/index.d.ts.map +1 -0
- package/dist/ai-tracing/index.cjs +148 -0
- package/dist/ai-tracing/index.cjs.map +1 -0
- package/dist/ai-tracing/index.d.ts +13 -0
- package/dist/ai-tracing/index.d.ts.map +1 -0
- package/dist/ai-tracing/index.js +3 -0
- package/dist/ai-tracing/index.js.map +1 -0
- package/dist/ai-tracing/model-tracing.d.ts +63 -0
- package/dist/ai-tracing/model-tracing.d.ts.map +1 -0
- package/dist/ai-tracing/registry.d.ts +51 -0
- package/dist/ai-tracing/registry.d.ts.map +1 -0
- package/dist/ai-tracing/span_processors/index.d.ts +5 -0
- package/dist/ai-tracing/span_processors/index.d.ts.map +1 -0
- package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts +85 -0
- package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts.map +1 -0
- package/dist/ai-tracing/spans/base.d.ts +65 -0
- package/dist/ai-tracing/spans/base.d.ts.map +1 -0
- package/dist/ai-tracing/spans/default.d.ts +13 -0
- package/dist/ai-tracing/spans/default.d.ts.map +1 -0
- package/dist/ai-tracing/spans/index.d.ts +7 -0
- package/dist/ai-tracing/spans/index.d.ts.map +1 -0
- package/dist/ai-tracing/spans/no-op.d.ts +15 -0
- package/dist/ai-tracing/spans/no-op.d.ts.map +1 -0
- package/dist/ai-tracing/tracers/base.d.ts +105 -0
- package/dist/ai-tracing/tracers/base.d.ts.map +1 -0
- package/dist/ai-tracing/tracers/default.d.ts +7 -0
- package/dist/ai-tracing/tracers/default.d.ts.map +1 -0
- package/dist/ai-tracing/tracers/index.d.ts +6 -0
- package/dist/ai-tracing/tracers/index.d.ts.map +1 -0
- package/dist/ai-tracing/types.d.ts +696 -0
- package/dist/ai-tracing/types.d.ts.map +1 -0
- package/dist/ai-tracing/utils.d.ts +68 -0
- package/dist/ai-tracing/utils.d.ts.map +1 -0
- package/dist/base.cjs +12 -0
- package/dist/base.cjs.map +1 -0
- package/dist/base.d.ts +34 -0
- package/dist/base.d.ts.map +1 -0
- package/dist/base.js +3 -0
- package/dist/base.js.map +1 -0
- package/dist/base.warning.d.ts +9 -0
- package/dist/base.warning.d.ts.map +1 -0
- package/dist/bundler/index.cjs +12 -0
- package/dist/bundler/index.cjs.map +1 -0
- package/dist/bundler/index.d.ts +31 -0
- package/dist/bundler/index.d.ts.map +1 -0
- package/dist/bundler/index.js +3 -0
- package/dist/bundler/index.js.map +1 -0
- package/dist/bundler/index.warning.d.ts +9 -0
- package/dist/bundler/index.warning.d.ts.map +1 -0
- package/dist/bundler/types.d.ts +6 -0
- package/dist/bundler/types.d.ts.map +1 -0
- package/dist/cache/base.d.ts +14 -0
- package/dist/cache/base.d.ts.map +1 -0
- package/dist/cache/index.cjs +16 -0
- package/dist/cache/index.cjs.map +1 -0
- package/dist/cache/index.d.ts +3 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +3 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/inmemory.d.ts +13 -0
- package/dist/cache/inmemory.d.ts.map +1 -0
- package/dist/chunk-3HXBPDKN.js +105 -0
- package/dist/chunk-3HXBPDKN.js.map +1 -0
- package/dist/chunk-3NTOFNIU.js +60 -0
- package/dist/chunk-3NTOFNIU.js.map +1 -0
- package/dist/chunk-3PSWNGBF.js +3 -0
- package/dist/chunk-3PSWNGBF.js.map +1 -0
- package/dist/chunk-42RUESSD.cjs +3203 -0
- package/dist/chunk-42RUESSD.cjs.map +1 -0
- package/dist/chunk-436FFEF6.js +34 -0
- package/dist/chunk-436FFEF6.js.map +1 -0
- package/dist/chunk-46XGIEXM.cjs +47 -0
- package/dist/chunk-46XGIEXM.cjs.map +1 -0
- package/dist/chunk-4D4KB75Y.cjs +9 -0
- package/dist/chunk-4D4KB75Y.cjs.map +1 -0
- package/dist/chunk-4L63C6E5.cjs +2554 -0
- package/dist/chunk-4L63C6E5.cjs.map +1 -0
- package/dist/chunk-4LSFAAZW.js +3 -0
- package/dist/chunk-4LSFAAZW.js.map +1 -0
- package/dist/chunk-4R2TBRS7.cjs +191 -0
- package/dist/chunk-4R2TBRS7.cjs.map +1 -0
- package/dist/chunk-4WQYXT2I.cjs +12 -0
- package/dist/chunk-4WQYXT2I.cjs.map +1 -0
- package/dist/chunk-5NTO7S5I.cjs +173 -0
- package/dist/chunk-5NTO7S5I.cjs.map +1 -0
- package/dist/chunk-5O52O25J.js +65 -0
- package/dist/chunk-5O52O25J.js.map +1 -0
- package/dist/chunk-5X4TQR6K.js +12 -0
- package/dist/chunk-5X4TQR6K.js.map +1 -0
- package/dist/chunk-6D2K2CAA.js +776 -0
- package/dist/chunk-6D2K2CAA.js.map +1 -0
- package/dist/chunk-6KOL2B3A.cjs +75 -0
- package/dist/chunk-6KOL2B3A.cjs.map +1 -0
- package/dist/chunk-6TEQIYXV.cjs +96 -0
- package/dist/chunk-6TEQIYXV.cjs.map +1 -0
- package/dist/chunk-6VOPKVYH.cjs +57 -0
- package/dist/chunk-6VOPKVYH.cjs.map +1 -0
- package/dist/chunk-6XCINXZ7.cjs +194 -0
- package/dist/chunk-6XCINXZ7.cjs.map +1 -0
- package/dist/chunk-7J5DS33F.js +3 -0
- package/dist/chunk-7J5DS33F.js.map +1 -0
- package/dist/chunk-A5KDVZDL.cjs +124 -0
- package/dist/chunk-A5KDVZDL.cjs.map +1 -0
- package/dist/chunk-AAYCOJUL.cjs +14 -0
- package/dist/chunk-AAYCOJUL.cjs.map +1 -0
- package/dist/chunk-ABJOUEVA.cjs +10 -0
- package/dist/chunk-ABJOUEVA.cjs.map +1 -0
- package/dist/chunk-AQGLVU53.cjs +603 -0
- package/dist/chunk-AQGLVU53.cjs.map +1 -0
- package/dist/chunk-B7V6NYWH.cjs +67 -0
- package/dist/chunk-B7V6NYWH.cjs.map +1 -0
- package/dist/chunk-BJ6XIEC6.js +13 -0
- package/dist/chunk-BJ6XIEC6.js.map +1 -0
- package/dist/chunk-BLUDYAPI.js +596 -0
- package/dist/chunk-BLUDYAPI.js.map +1 -0
- package/dist/chunk-BVUMKER5.js +7 -0
- package/dist/chunk-BVUMKER5.js.map +1 -0
- package/dist/chunk-BWYU7D33.js +192 -0
- package/dist/chunk-BWYU7D33.js.map +1 -0
- package/dist/chunk-CNMPROPI.js +24 -0
- package/dist/chunk-CNMPROPI.js.map +1 -0
- package/dist/chunk-CT2DMHGC.cjs +271 -0
- package/dist/chunk-CT2DMHGC.cjs.map +1 -0
- package/dist/chunk-CYEQK4PM.cjs +778 -0
- package/dist/chunk-CYEQK4PM.cjs.map +1 -0
- package/dist/chunk-DMBN72QF.cjs +39 -0
- package/dist/chunk-DMBN72QF.cjs.map +1 -0
- package/dist/chunk-EBVYYC2Q.cjs +111 -0
- package/dist/chunk-EBVYYC2Q.cjs.map +1 -0
- package/dist/chunk-F7GI2OYP.js +3 -0
- package/dist/chunk-F7GI2OYP.js.map +1 -0
- package/dist/chunk-FUVNHPNL.cjs +4 -0
- package/dist/chunk-FUVNHPNL.cjs.map +1 -0
- package/dist/chunk-FVIT6JZ5.cjs +4 -0
- package/dist/chunk-FVIT6JZ5.cjs.map +1 -0
- package/dist/chunk-G3KSVDML.cjs +1310 -0
- package/dist/chunk-G3KSVDML.cjs.map +1 -0
- package/dist/chunk-GPWMM745.cjs +80 -0
- package/dist/chunk-GPWMM745.cjs.map +1 -0
- package/dist/chunk-GXSERFAG.js +3 -0
- package/dist/chunk-GXSERFAG.js.map +1 -0
- package/dist/chunk-HCCXJ5YJ.js +466 -0
- package/dist/chunk-HCCXJ5YJ.js.map +1 -0
- package/dist/chunk-HLRWYUFN.js +78 -0
- package/dist/chunk-HLRWYUFN.js.map +1 -0
- package/dist/chunk-HQDX7PWJ.cjs +26 -0
- package/dist/chunk-HQDX7PWJ.cjs.map +1 -0
- package/dist/chunk-HSX2K7HB.js +164 -0
- package/dist/chunk-HSX2K7HB.js.map +1 -0
- package/dist/chunk-IAJHRFO4.cjs +2936 -0
- package/dist/chunk-IAJHRFO4.cjs.map +1 -0
- package/dist/chunk-INOOZ2A2.js +3144 -0
- package/dist/chunk-INOOZ2A2.js.map +1 -0
- package/dist/chunk-IWU4YSYT.cjs +166 -0
- package/dist/chunk-IWU4YSYT.cjs.map +1 -0
- package/dist/chunk-JQE3BLYA.js +3 -0
- package/dist/chunk-JQE3BLYA.js.map +1 -0
- package/dist/chunk-JVV5LREI.js +431 -0
- package/dist/chunk-JVV5LREI.js.map +1 -0
- package/dist/chunk-LZPOIBOR.js +87 -0
- package/dist/chunk-LZPOIBOR.js.map +1 -0
- package/dist/chunk-MKCC5K77.js +90 -0
- package/dist/chunk-MKCC5K77.js.map +1 -0
- package/dist/chunk-N2ILP2YD.js +2539 -0
- package/dist/chunk-N2ILP2YD.js.map +1 -0
- package/dist/chunk-NLNKQD2T.js +7 -0
- package/dist/chunk-NLNKQD2T.js.map +1 -0
- package/dist/chunk-NPNGPMT2.js +39 -0
- package/dist/chunk-NPNGPMT2.js.map +1 -0
- package/dist/chunk-NSIYMRY7.cjs +91 -0
- package/dist/chunk-NSIYMRY7.cjs.map +1 -0
- package/dist/chunk-OIT3PCWA.js +72 -0
- package/dist/chunk-OIT3PCWA.js.map +1 -0
- package/dist/chunk-PAOBGBU7.cjs +471 -0
- package/dist/chunk-PAOBGBU7.cjs.map +1 -0
- package/dist/chunk-PE3V7GUL.cjs +4 -0
- package/dist/chunk-PE3V7GUL.cjs.map +1 -0
- package/dist/chunk-PFXXH2RP.js +91 -0
- package/dist/chunk-PFXXH2RP.js.map +1 -0
- package/dist/chunk-PJKCPRYF.js +3 -0
- package/dist/chunk-PJKCPRYF.js.map +1 -0
- package/dist/chunk-PZUZNPFM.js +166 -0
- package/dist/chunk-PZUZNPFM.js.map +1 -0
- package/dist/chunk-Q6LWNLAJ.js +3177 -0
- package/dist/chunk-Q6LWNLAJ.js.map +1 -0
- package/dist/chunk-QLMWFSDC.js +653 -0
- package/dist/chunk-QLMWFSDC.js.map +1 -0
- package/dist/chunk-R6XC4DV5.js +170 -0
- package/dist/chunk-R6XC4DV5.js.map +1 -0
- package/dist/chunk-RJOVFHWN.cjs +3160 -0
- package/dist/chunk-RJOVFHWN.cjs.map +1 -0
- package/dist/chunk-SJMKDSRF.js +179 -0
- package/dist/chunk-SJMKDSRF.js.map +1 -0
- package/dist/chunk-TCHOIK53.cjs +4 -0
- package/dist/chunk-TCHOIK53.cjs.map +1 -0
- package/dist/chunk-TEORHM5O.js +1222 -0
- package/dist/chunk-TEORHM5O.js.map +1 -0
- package/dist/chunk-TSNDVBUU.cjs +90 -0
- package/dist/chunk-TSNDVBUU.cjs.map +1 -0
- package/dist/chunk-TTELJD4F.js +86 -0
- package/dist/chunk-TTELJD4F.js.map +1 -0
- package/dist/chunk-TX4TTPYJ.cjs +436 -0
- package/dist/chunk-TX4TTPYJ.cjs.map +1 -0
- package/dist/chunk-UCPGYU55.cjs +15 -0
- package/dist/chunk-UCPGYU55.cjs.map +1 -0
- package/dist/chunk-UWTYVVVZ.js +42 -0
- package/dist/chunk-UWTYVVVZ.js.map +1 -0
- package/dist/chunk-UXG7PYML.js +118 -0
- package/dist/chunk-UXG7PYML.js.map +1 -0
- package/dist/chunk-V3VLOOSW.cjs +36 -0
- package/dist/chunk-V3VLOOSW.cjs.map +1 -0
- package/dist/chunk-VED2OIYL.cjs +4 -0
- package/dist/chunk-VED2OIYL.cjs.map +1 -0
- package/dist/chunk-VF676YCO.cjs +150 -0
- package/dist/chunk-VF676YCO.cjs.map +1 -0
- package/dist/chunk-VHEA3YXS.js +72 -0
- package/dist/chunk-VHEA3YXS.js.map +1 -0
- package/dist/chunk-VQASQG5D.js +55 -0
- package/dist/chunk-VQASQG5D.js.map +1 -0
- package/dist/chunk-VXHOOZSK.js +446 -0
- package/dist/chunk-VXHOOZSK.js.map +1 -0
- package/dist/chunk-W4UVO3HL.cjs +82 -0
- package/dist/chunk-W4UVO3HL.cjs.map +1 -0
- package/dist/chunk-WIMFJ2BA.js +2880 -0
- package/dist/chunk-WIMFJ2BA.js.map +1 -0
- package/dist/chunk-WM4RO23J.js +145 -0
- package/dist/chunk-WM4RO23J.js.map +1 -0
- package/dist/chunk-WMTXUQC4.cjs +657 -0
- package/dist/chunk-WMTXUQC4.cjs.map +1 -0
- package/dist/chunk-WNV57BEW.cjs +1705 -0
- package/dist/chunk-WNV57BEW.cjs.map +1 -0
- package/dist/chunk-X4RMXTXF.cjs +4 -0
- package/dist/chunk-X4RMXTXF.cjs.map +1 -0
- package/dist/chunk-X7F4CSGR.cjs +67 -0
- package/dist/chunk-X7F4CSGR.cjs.map +1 -0
- package/dist/chunk-XWGHD4C7.cjs +450 -0
- package/dist/chunk-XWGHD4C7.cjs.map +1 -0
- package/dist/chunk-YFKTLS32.js +1700 -0
- package/dist/chunk-YFKTLS32.js.map +1 -0
- package/dist/chunk-ZABG3SZ2.cjs +93 -0
- package/dist/chunk-ZABG3SZ2.cjs.map +1 -0
- package/dist/chunk-ZIWN73GQ.js +267 -0
- package/dist/chunk-ZIWN73GQ.js.map +1 -0
- package/dist/chunk-ZOYE65RA.cjs +173 -0
- package/dist/chunk-ZOYE65RA.cjs.map +1 -0
- package/dist/deployer/index.cjs +12 -0
- package/dist/deployer/index.cjs.map +1 -0
- package/dist/deployer/index.d.ts +12 -0
- package/dist/deployer/index.d.ts.map +1 -0
- package/dist/deployer/index.js +3 -0
- package/dist/deployer/index.js.map +1 -0
- package/dist/deployer/index.warning.d.ts +9 -0
- package/dist/deployer/index.warning.d.ts.map +1 -0
- package/dist/di/index.cjs +12 -0
- package/dist/di/index.cjs.map +1 -0
- package/dist/di/index.d.ts +2 -0
- package/dist/di/index.d.ts.map +1 -0
- package/dist/di/index.js +3 -0
- package/dist/di/index.js.map +1 -0
- package/dist/error/index.cjs +28 -0
- package/dist/error/index.cjs.map +1 -0
- package/dist/error/index.d.ts +89 -0
- package/dist/error/index.d.ts.map +1 -0
- package/dist/error/index.js +3 -0
- package/dist/error/index.js.map +1 -0
- package/dist/error/utils.d.ts +36 -0
- package/dist/error/utils.d.ts.map +1 -0
- package/dist/eval/evaluation.d.ts +14 -0
- package/dist/eval/evaluation.d.ts.map +1 -0
- package/dist/eval/index.cjs +16 -0
- package/dist/eval/index.cjs.map +1 -0
- package/dist/eval/index.d.ts +4 -0
- package/dist/eval/index.d.ts.map +1 -0
- package/dist/eval/index.js +3 -0
- package/dist/eval/index.js.map +1 -0
- package/dist/eval/metric.d.ts +8 -0
- package/dist/eval/metric.d.ts.map +1 -0
- package/dist/eval/types.d.ts +9 -0
- package/dist/eval/types.d.ts.map +1 -0
- package/dist/events/event-emitter.d.ts +11 -0
- package/dist/events/event-emitter.d.ts.map +1 -0
- package/dist/events/index.cjs +12 -0
- package/dist/events/index.cjs.map +1 -0
- package/dist/events/index.d.ts +3 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +3 -0
- package/dist/events/index.js.map +1 -0
- package/dist/events/processor.d.ts +11 -0
- package/dist/events/processor.d.ts.map +1 -0
- package/dist/events/pubsub.d.ts +8 -0
- package/dist/events/pubsub.d.ts.map +1 -0
- package/dist/events/types.d.ts +8 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/hooks/index.cjs +20 -0
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.ts +36 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/mitt.d.ts +22 -0
- package/dist/hooks/mitt.d.ts.map +1 -0
- package/dist/index.cjs +371 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +120 -0
- package/dist/index.js.map +1 -0
- package/dist/integration/index.cjs +16 -0
- package/dist/integration/index.cjs.map +1 -0
- package/dist/integration/index.d.ts +3 -0
- package/dist/integration/index.d.ts.map +1 -0
- package/dist/integration/index.js +3 -0
- package/dist/integration/index.js.map +1 -0
- package/dist/integration/index.warning.d.ts +3 -0
- package/dist/integration/index.warning.d.ts.map +1 -0
- package/dist/integration/integration.d.ts +21 -0
- package/dist/integration/integration.d.ts.map +1 -0
- package/dist/integration/integration.warning.d.ts +5 -0
- package/dist/integration/integration.warning.d.ts.map +1 -0
- package/dist/integration/openapi-toolset.d.ts +16 -0
- package/dist/integration/openapi-toolset.d.ts.map +1 -0
- package/dist/integration/openapi-toolset.warning.d.ts +5 -0
- package/dist/integration/openapi-toolset.warning.d.ts.map +1 -0
- package/dist/llm/index.cjs +48 -0
- package/dist/llm/index.cjs.map +1 -0
- package/dist/llm/index.d.ts +83 -0
- package/dist/llm/index.d.ts.map +1 -0
- package/dist/llm/index.js +7 -0
- package/dist/llm/index.js.map +1 -0
- package/dist/llm/model/aisdk/v5/model.d.ts +47 -0
- package/dist/llm/model/aisdk/v5/model.d.ts.map +1 -0
- package/dist/llm/model/base.types.d.ts +100 -0
- package/dist/llm/model/base.types.d.ts.map +1 -0
- package/dist/llm/model/embedding-router.d.ts +50 -0
- package/dist/llm/model/embedding-router.d.ts.map +1 -0
- package/dist/llm/model/gateway-resolver.d.ts +11 -0
- package/dist/llm/model/gateway-resolver.d.ts.map +1 -0
- package/dist/llm/model/gateways/base.d.ts +50 -0
- package/dist/llm/model/gateways/base.d.ts.map +1 -0
- package/dist/llm/model/gateways/constants.d.ts +3 -0
- package/dist/llm/model/gateways/constants.d.ts.map +1 -0
- package/dist/llm/model/gateways/index.d.ts +11 -0
- package/dist/llm/model/gateways/index.d.ts.map +1 -0
- package/dist/llm/model/gateways/models-dev.d.ts +19 -0
- package/dist/llm/model/gateways/models-dev.d.ts.map +1 -0
- package/dist/llm/model/gateways/netlify.d.ts +25 -0
- package/dist/llm/model/gateways/netlify.d.ts.map +1 -0
- package/dist/llm/model/index.d.ts +6 -0
- package/dist/llm/model/index.d.ts.map +1 -0
- package/dist/llm/model/is-v2-model.d.ts +3 -0
- package/dist/llm/model/is-v2-model.d.ts.map +1 -0
- package/dist/llm/model/model-method-from-agent.d.ts +4 -0
- package/dist/llm/model/model-method-from-agent.d.ts.map +1 -0
- package/dist/llm/model/model.d.ts +36 -0
- package/dist/llm/model/model.d.ts.map +1 -0
- package/dist/llm/model/model.loop.d.ts +26 -0
- package/dist/llm/model/model.loop.d.ts.map +1 -0
- package/dist/llm/model/model.loop.types.d.ts +31 -0
- package/dist/llm/model/model.loop.types.d.ts.map +1 -0
- package/dist/llm/model/provider-options.d.ts +42 -0
- package/dist/llm/model/provider-options.d.ts.map +1 -0
- package/dist/llm/model/provider-registry.d.ts +108 -0
- package/dist/llm/model/provider-registry.d.ts.map +1 -0
- package/dist/llm/model/provider-types.generated.d.ts +1205 -0
- package/dist/llm/model/registry-generator.d.ts +41 -0
- package/dist/llm/model/registry-generator.d.ts.map +1 -0
- package/dist/llm/model/resolve-model.d.ts +46 -0
- package/dist/llm/model/resolve-model.d.ts.map +1 -0
- package/dist/llm/model/router.d.ts +30 -0
- package/dist/llm/model/router.d.ts.map +1 -0
- package/dist/llm/model/shared.types.d.ts +40 -0
- package/dist/llm/model/shared.types.d.ts.map +1 -0
- package/dist/logger/constants.d.ts +28 -0
- package/dist/logger/constants.d.ts.map +1 -0
- package/dist/logger/default-logger.d.ts +49 -0
- package/dist/logger/default-logger.d.ts.map +1 -0
- package/dist/logger/index.cjs +45 -0
- package/dist/logger/index.cjs.map +1 -0
- package/dist/logger/index.d.ts +7 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +4 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/logger.d.ts +88 -0
- package/dist/logger/logger.d.ts.map +1 -0
- package/dist/logger/multi-logger.d.ts +46 -0
- package/dist/logger/multi-logger.d.ts.map +1 -0
- package/dist/logger/noop-logger.d.ts +3 -0
- package/dist/logger/noop-logger.d.ts.map +1 -0
- package/dist/logger/transport.d.ts +46 -0
- package/dist/logger/transport.d.ts.map +1 -0
- package/dist/loop/index.cjs +12 -0
- package/dist/loop/index.cjs.map +1 -0
- package/dist/loop/index.d.ts +2 -0
- package/dist/loop/index.d.ts.map +1 -0
- package/dist/loop/index.js +3 -0
- package/dist/loop/index.js.map +1 -0
- package/dist/loop/loop.d.ts +6 -0
- package/dist/loop/loop.d.ts.map +1 -0
- package/dist/loop/network/index.d.ts +145 -0
- package/dist/loop/network/index.d.ts.map +1 -0
- package/dist/loop/telemetry/index.d.ts +36 -0
- package/dist/loop/telemetry/index.d.ts.map +1 -0
- package/dist/loop/telemetry/noop.d.ts +3 -0
- package/dist/loop/telemetry/noop.d.ts.map +1 -0
- package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts +37 -0
- package/dist/loop/test-utils/MastraLanguageModelV2Mock.d.ts.map +1 -0
- package/dist/loop/test-utils/fullStream.d.ts +6 -0
- package/dist/loop/test-utils/fullStream.d.ts.map +1 -0
- package/dist/loop/test-utils/generateText.d.ts +6 -0
- package/dist/loop/test-utils/generateText.d.ts.map +1 -0
- package/dist/loop/test-utils/mock-server-response.d.ts +28 -0
- package/dist/loop/test-utils/mock-server-response.d.ts.map +1 -0
- package/dist/loop/test-utils/mockTracer.d.ts +47 -0
- package/dist/loop/test-utils/mockTracer.d.ts.map +1 -0
- package/dist/loop/test-utils/options.d.ts +6 -0
- package/dist/loop/test-utils/options.d.ts.map +1 -0
- package/dist/loop/test-utils/resultObject.d.ts +6 -0
- package/dist/loop/test-utils/resultObject.d.ts.map +1 -0
- package/dist/loop/test-utils/streamObject.d.ts +15 -0
- package/dist/loop/test-utils/streamObject.d.ts.map +1 -0
- package/dist/loop/test-utils/telemetry.d.ts +6 -0
- package/dist/loop/test-utils/telemetry.d.ts.map +1 -0
- package/dist/loop/test-utils/textStream.d.ts +6 -0
- package/dist/loop/test-utils/textStream.d.ts.map +1 -0
- package/dist/loop/test-utils/toUIMessageStream.d.ts +6 -0
- package/dist/loop/test-utils/toUIMessageStream.d.ts.map +1 -0
- package/dist/loop/test-utils/tools.d.ts +6 -0
- package/dist/loop/test-utils/tools.d.ts.map +1 -0
- package/dist/loop/test-utils/utils.d.ts +45 -0
- package/dist/loop/test-utils/utils.d.ts.map +1 -0
- package/dist/loop/types.d.ts +111 -0
- package/dist/loop/types.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-execution/index.d.ts +939 -0
- package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +629 -0
- package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +348 -0
- package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts +58 -0
- package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -0
- package/dist/loop/workflows/agentic-loop/index.d.ts +945 -0
- package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -0
- package/dist/loop/workflows/run-state.d.ts +29 -0
- package/dist/loop/workflows/run-state.d.ts.map +1 -0
- package/dist/loop/workflows/schema.d.ts +479 -0
- package/dist/loop/workflows/schema.d.ts.map +1 -0
- package/dist/loop/workflows/stream.d.ts +20 -0
- package/dist/loop/workflows/stream.d.ts.map +1 -0
- package/dist/mastra/hooks.d.ts +6 -0
- package/dist/mastra/hooks.d.ts.map +1 -0
- package/dist/mastra/index.cjs +12 -0
- package/dist/mastra/index.cjs.map +1 -0
- package/dist/mastra/index.d.ts +892 -0
- package/dist/mastra/index.d.ts.map +1 -0
- package/dist/mastra/index.js +3 -0
- package/dist/mastra/index.js.map +1 -0
- package/dist/mcp/index.cjs +112 -0
- package/dist/mcp/index.cjs.map +1 -0
- package/dist/mcp/index.d.ts +158 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +106 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/types.d.ts +255 -0
- package/dist/mcp/types.d.ts.map +1 -0
- package/dist/memory/index.cjs +20 -0
- package/dist/memory/index.cjs.map +1 -0
- package/dist/memory/index.d.ts +3 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +3 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/index.warning.d.ts +6 -0
- package/dist/memory/index.warning.d.ts.map +1 -0
- package/dist/memory/memory.d.ts +272 -0
- package/dist/memory/memory.d.ts.map +1 -0
- package/dist/memory/types.d.ts +393 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/models-dev-LJ4O6FNF.js +3 -0
- package/dist/models-dev-LJ4O6FNF.js.map +1 -0
- package/dist/models-dev-T2CXOEDH.cjs +12 -0
- package/dist/models-dev-T2CXOEDH.cjs.map +1 -0
- package/dist/netlify-BAEMIQNH.cjs +12 -0
- package/dist/netlify-BAEMIQNH.cjs.map +1 -0
- package/dist/netlify-L7AZ74PV.js +3 -0
- package/dist/netlify-L7AZ74PV.js.map +1 -0
- package/dist/processors/index.cjs +48 -0
- package/dist/processors/index.cjs.map +1 -0
- package/dist/processors/index.d.ts +43 -0
- package/dist/processors/index.d.ts.map +1 -0
- package/dist/processors/index.js +3 -0
- package/dist/processors/index.js.map +1 -0
- package/dist/processors/processors/batch-parts.d.ts +47 -0
- package/dist/processors/processors/batch-parts.d.ts.map +1 -0
- package/dist/processors/processors/index.d.ts +10 -0
- package/dist/processors/processors/index.d.ts.map +1 -0
- package/dist/processors/processors/language-detector.d.ts +153 -0
- package/dist/processors/processors/language-detector.d.ts.map +1 -0
- package/dist/processors/processors/moderation.d.ts +138 -0
- package/dist/processors/processors/moderation.d.ts.map +1 -0
- package/dist/processors/processors/pii-detector.d.ts +203 -0
- package/dist/processors/processors/pii-detector.d.ts.map +1 -0
- package/dist/processors/processors/prompt-injection-detector.d.ts +116 -0
- package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -0
- package/dist/processors/processors/structured-output.d.ts +53 -0
- package/dist/processors/processors/structured-output.d.ts.map +1 -0
- package/dist/processors/processors/system-prompt-scrubber.d.ts +105 -0
- package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -0
- package/dist/processors/processors/token-limiter.d.ts +66 -0
- package/dist/processors/processors/token-limiter.d.ts.map +1 -0
- package/dist/processors/processors/unicode-normalizer.d.ts +34 -0
- package/dist/processors/processors/unicode-normalizer.d.ts.map +1 -0
- package/dist/processors/runner.d.ts +46 -0
- package/dist/processors/runner.d.ts.map +1 -0
- package/dist/provider-registry-RUDYHG7J.cjs +40 -0
- package/dist/provider-registry-RUDYHG7J.cjs.map +1 -0
- package/dist/provider-registry-THITZUJ7.js +3 -0
- package/dist/provider-registry-THITZUJ7.js.map +1 -0
- package/dist/provider-registry.json +2748 -0
- package/dist/registry-generator-DL42NMBM.cjs +134 -0
- package/dist/registry-generator-DL42NMBM.cjs.map +1 -0
- package/dist/registry-generator-I6S4ARS6.js +124 -0
- package/dist/registry-generator-I6S4ARS6.js.map +1 -0
- package/dist/relevance/cohere/index.d.ts +9 -0
- package/dist/relevance/cohere/index.d.ts.map +1 -0
- package/dist/relevance/index.cjs +20 -0
- package/dist/relevance/index.cjs.map +1 -0
- package/dist/relevance/index.d.ts +4 -0
- package/dist/relevance/index.d.ts.map +1 -0
- package/dist/relevance/index.js +3 -0
- package/dist/relevance/index.js.map +1 -0
- package/dist/relevance/mastra-agent/index.d.ts +8 -0
- package/dist/relevance/mastra-agent/index.d.ts.map +1 -0
- package/dist/relevance/relevance-score-provider.d.ts +5 -0
- package/dist/relevance/relevance-score-provider.d.ts.map +1 -0
- package/dist/run/types.d.ts +6 -0
- package/dist/run/types.d.ts.map +1 -0
- package/dist/runtime-context/index.cjs +12 -0
- package/dist/runtime-context/index.cjs.map +1 -0
- package/dist/runtime-context/index.d.ts +57 -0
- package/dist/runtime-context/index.d.ts.map +1 -0
- package/dist/runtime-context/index.js +3 -0
- package/dist/runtime-context/index.js.map +1 -0
- package/dist/scores/base.d.ts +141 -0
- package/dist/scores/base.d.ts.map +1 -0
- package/dist/scores/base.test-utils.d.ts +124 -0
- package/dist/scores/base.test-utils.d.ts.map +1 -0
- package/dist/scores/hooks.d.ts +19 -0
- package/dist/scores/hooks.d.ts.map +1 -0
- package/dist/scores/index.cjs +37 -0
- package/dist/scores/index.cjs.map +1 -0
- package/dist/scores/index.d.ts +4 -0
- package/dist/scores/index.d.ts.map +1 -0
- package/dist/scores/index.js +4 -0
- package/dist/scores/index.js.map +1 -0
- package/dist/scores/run-experiment/index.d.ts +61 -0
- package/dist/scores/run-experiment/index.d.ts.map +1 -0
- package/dist/scores/run-experiment/scorerAccumulator.d.ts +12 -0
- package/dist/scores/run-experiment/scorerAccumulator.d.ts.map +1 -0
- package/dist/scores/scoreTraces/index.cjs +431 -0
- package/dist/scores/scoreTraces/index.cjs.map +1 -0
- package/dist/scores/scoreTraces/index.d.ts +3 -0
- package/dist/scores/scoreTraces/index.d.ts.map +1 -0
- package/dist/scores/scoreTraces/index.js +423 -0
- package/dist/scores/scoreTraces/index.js.map +1 -0
- package/dist/scores/scoreTraces/scoreTraces.d.ts +10 -0
- package/dist/scores/scoreTraces/scoreTraces.d.ts.map +1 -0
- package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts +95 -0
- package/dist/scores/scoreTraces/scoreTracesWorkflow.d.ts.map +1 -0
- package/dist/scores/scoreTraces/utils.d.ts +21 -0
- package/dist/scores/scoreTraces/utils.d.ts.map +1 -0
- package/dist/scores/types.d.ts +191 -0
- package/dist/scores/types.d.ts.map +1 -0
- package/dist/server/auth.d.ts +36 -0
- package/dist/server/auth.d.ts.map +1 -0
- package/dist/server/composite-auth.d.ts +9 -0
- package/dist/server/composite-auth.d.ts.map +1 -0
- package/dist/server/index.cjs +185 -0
- package/dist/server/index.cjs.map +1 -0
- package/dist/server/index.d.ts +37 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +180 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/simple-auth.d.ts +32 -0
- package/dist/server/simple-auth.d.ts.map +1 -0
- package/dist/server/types.d.ts +140 -0
- package/dist/server/types.d.ts.map +1 -0
- package/dist/storage/base.d.ts +360 -0
- package/dist/storage/base.d.ts.map +1 -0
- package/dist/storage/base.warning.d.ts +8 -0
- package/dist/storage/base.warning.d.ts.map +1 -0
- package/dist/storage/constants.d.ts +14 -0
- package/dist/storage/constants.d.ts.map +1 -0
- package/dist/storage/domains/index.d.ts +8 -0
- package/dist/storage/domains/index.d.ts.map +1 -0
- package/dist/storage/domains/legacy-evals/base.d.ts +13 -0
- package/dist/storage/domains/legacy-evals/base.d.ts.map +1 -0
- package/dist/storage/domains/legacy-evals/index.d.ts +2 -0
- package/dist/storage/domains/legacy-evals/index.d.ts.map +1 -0
- package/dist/storage/domains/legacy-evals/inmemory.d.ts +17 -0
- package/dist/storage/domains/legacy-evals/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/memory/base.d.ts +96 -0
- package/dist/storage/domains/memory/base.d.ts.map +1 -0
- package/dist/storage/domains/memory/index.d.ts +3 -0
- package/dist/storage/domains/memory/index.d.ts.map +1 -0
- package/dist/storage/domains/memory/inmemory.d.ts +85 -0
- package/dist/storage/domains/memory/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/observability/base.d.ts +60 -0
- package/dist/storage/domains/observability/base.d.ts.map +1 -0
- package/dist/storage/domains/observability/index.d.ts +3 -0
- package/dist/storage/domains/observability/index.d.ts.map +1 -0
- package/dist/storage/domains/observability/inmemory.d.ts +48 -0
- package/dist/storage/domains/observability/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/operations/base.d.ts +68 -0
- package/dist/storage/domains/operations/base.d.ts.map +1 -0
- package/dist/storage/domains/operations/index.d.ts +3 -0
- package/dist/storage/domains/operations/index.d.ts.map +1 -0
- package/dist/storage/domains/operations/inmemory.d.ts +37 -0
- package/dist/storage/domains/operations/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/scores/base.d.ts +46 -0
- package/dist/storage/domains/scores/base.d.ts.map +1 -0
- package/dist/storage/domains/scores/index.d.ts +3 -0
- package/dist/storage/domains/scores/index.d.ts.map +1 -0
- package/dist/storage/domains/scores/inmemory.d.ts +50 -0
- package/dist/storage/domains/scores/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/traces/base.d.ts +14 -0
- package/dist/storage/domains/traces/base.d.ts.map +1 -0
- package/dist/storage/domains/traces/index.d.ts +3 -0
- package/dist/storage/domains/traces/index.d.ts.map +1 -0
- package/dist/storage/domains/traces/inmemory.d.ts +22 -0
- package/dist/storage/domains/traces/inmemory.d.ts.map +1 -0
- package/dist/storage/domains/workflows/base.d.ts +47 -0
- package/dist/storage/domains/workflows/base.d.ts.map +1 -0
- package/dist/storage/domains/workflows/index.d.ts +3 -0
- package/dist/storage/domains/workflows/index.d.ts.map +1 -0
- package/dist/storage/domains/workflows/inmemory.d.ts +54 -0
- package/dist/storage/domains/workflows/inmemory.d.ts.map +1 -0
- package/dist/storage/index.cjs +1821 -0
- package/dist/storage/index.cjs.map +1 -0
- package/dist/storage/index.d.ts +7 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +1746 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/index.warning.d.ts +3 -0
- package/dist/storage/index.warning.d.ts.map +1 -0
- package/dist/storage/mock.d.ts +242 -0
- package/dist/storage/mock.d.ts.map +1 -0
- package/dist/storage/storageWithInit.d.ts +3 -0
- package/dist/storage/storageWithInit.d.ts.map +1 -0
- package/dist/storage/types.d.ts +206 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/utils.d.ts +2 -0
- package/dist/storage/utils.d.ts.map +1 -0
- package/dist/stream/MastraAgentNetworkStream.d.ts +22 -0
- package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -0
- package/dist/stream/MastraWorkflowStream.d.ts +19 -0
- package/dist/stream/MastraWorkflowStream.d.ts.map +1 -0
- package/dist/stream/RunOutput.d.ts +72 -0
- package/dist/stream/RunOutput.d.ts.map +1 -0
- package/dist/stream/aisdk/v4/input.d.ts +16 -0
- package/dist/stream/aisdk/v4/input.d.ts.map +1 -0
- package/dist/stream/aisdk/v4/transform.d.ts +5 -0
- package/dist/stream/aisdk/v4/transform.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/consume-stream.d.ts +8 -0
- package/dist/stream/aisdk/v5/compat/consume-stream.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/content.d.ts +7 -0
- package/dist/stream/aisdk/v5/compat/content.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts +23 -0
- package/dist/stream/aisdk/v5/compat/delayed-promise.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/index.d.ts +8 -0
- package/dist/stream/aisdk/v5/compat/index.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/media.d.ts +91 -0
- package/dist/stream/aisdk/v5/compat/media.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts +11 -0
- package/dist/stream/aisdk/v5/compat/prepare-tools.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/ui-message.d.ts +20 -0
- package/dist/stream/aisdk/v5/compat/ui-message.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/compat/validation.d.ts +17 -0
- package/dist/stream/aisdk/v5/compat/validation.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/execute.d.ts +41 -0
- package/dist/stream/aisdk/v5/execute.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/file.d.ts +38 -0
- package/dist/stream/aisdk/v5/file.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/input.d.ts +16 -0
- package/dist/stream/aisdk/v5/input.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/output-helpers.d.ts +66 -0
- package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/output.d.ts +173 -0
- package/dist/stream/aisdk/v5/output.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/test-utils.d.ts +19 -0
- package/dist/stream/aisdk/v5/test-utils.d.ts.map +1 -0
- package/dist/stream/aisdk/v5/transform.d.ts +27 -0
- package/dist/stream/aisdk/v5/transform.d.ts.map +1 -0
- package/dist/stream/base/base.d.ts +7 -0
- package/dist/stream/base/base.d.ts.map +1 -0
- package/dist/stream/base/consume-stream.d.ts +5 -0
- package/dist/stream/base/consume-stream.d.ts.map +1 -0
- package/dist/stream/base/index.d.ts +2 -0
- package/dist/stream/base/index.d.ts.map +1 -0
- package/dist/stream/base/input.d.ts +16 -0
- package/dist/stream/base/input.d.ts.map +1 -0
- package/dist/stream/base/output-format-handlers.d.ts +29 -0
- package/dist/stream/base/output-format-handlers.d.ts.map +1 -0
- package/dist/stream/base/output.d.ts +313 -0
- package/dist/stream/base/output.d.ts.map +1 -0
- package/dist/stream/base/schema.d.ts +31 -0
- package/dist/stream/base/schema.d.ts.map +1 -0
- package/dist/stream/index.cjs +45 -0
- package/dist/stream/index.cjs.map +1 -0
- package/dist/stream/index.d.ts +11 -0
- package/dist/stream/index.d.ts.map +1 -0
- package/dist/stream/index.js +4 -0
- package/dist/stream/index.js.map +1 -0
- package/dist/stream/types.d.ts +734 -0
- package/dist/stream/types.d.ts.map +1 -0
- package/dist/telemetry/composite-exporter.d.ts +10 -0
- package/dist/telemetry/composite-exporter.d.ts.map +1 -0
- package/dist/telemetry/index.cjs +32 -0
- package/dist/telemetry/index.cjs.map +1 -0
- package/dist/telemetry/index.d.ts +6 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +3 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/otel-vendor.cjs +105 -0
- package/dist/telemetry/otel-vendor.cjs.map +1 -0
- package/dist/telemetry/otel-vendor.d.ts +11 -0
- package/dist/telemetry/otel-vendor.d.ts.map +1 -0
- package/dist/telemetry/otel-vendor.js +59 -0
- package/dist/telemetry/otel-vendor.js.map +1 -0
- package/dist/telemetry/storage-exporter.d.ts +21 -0
- package/dist/telemetry/storage-exporter.d.ts.map +1 -0
- package/dist/telemetry/telemetry.d.ts +59 -0
- package/dist/telemetry/telemetry.d.ts.map +1 -0
- package/dist/telemetry/telemetry.decorators.d.ts +15 -0
- package/dist/telemetry/telemetry.decorators.d.ts.map +1 -0
- package/dist/telemetry/types.d.ts +74 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/utility.d.ts +15 -0
- package/dist/telemetry/utility.d.ts.map +1 -0
- package/dist/test-utils/llm-mock.cjs +181 -0
- package/dist/test-utils/llm-mock.cjs.map +1 -0
- package/dist/test-utils/llm-mock.d.ts +21 -0
- package/dist/test-utils/llm-mock.d.ts.map +1 -0
- package/dist/test-utils/llm-mock.js +178 -0
- package/dist/test-utils/llm-mock.js.map +1 -0
- package/dist/tools/index.cjs +25 -0
- package/dist/tools/index.cjs.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/index.warning.d.ts +8 -0
- package/dist/tools/index.warning.d.ts.map +1 -0
- package/dist/tools/is-vercel-tool.cjs +12 -0
- package/dist/tools/is-vercel-tool.cjs.map +1 -0
- package/dist/tools/is-vercel-tool.d.ts +2 -0
- package/dist/tools/is-vercel-tool.d.ts.map +1 -0
- package/dist/tools/is-vercel-tool.js +3 -0
- package/dist/tools/is-vercel-tool.js.map +1 -0
- package/dist/tools/stream.d.ts +19 -0
- package/dist/tools/stream.d.ts.map +1 -0
- package/dist/tools/tool-builder/builder.d.ts +28 -0
- package/dist/tools/tool-builder/builder.d.ts.map +1 -0
- package/dist/tools/tool.d.ts +186 -0
- package/dist/tools/tool.d.ts.map +1 -0
- package/dist/tools/toolchecks.d.ts +9 -0
- package/dist/tools/toolchecks.d.ts.map +1 -0
- package/dist/tools/types.d.ts +70 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/ui-types.d.ts +39 -0
- package/dist/tools/ui-types.d.ts.map +1 -0
- package/dist/tools/validation.d.ts +19 -0
- package/dist/tools/validation.d.ts.map +1 -0
- package/dist/tts/index.cjs +12 -0
- package/dist/tts/index.cjs.map +1 -0
- package/dist/tts/index.d.ts +22 -0
- package/dist/tts/index.d.ts.map +1 -0
- package/dist/tts/index.js +3 -0
- package/dist/tts/index.js.map +1 -0
- package/dist/tts/index.warning.d.ts +7 -0
- package/dist/tts/index.warning.d.ts.map +1 -0
- package/dist/types/dynamic-argument.d.ts +9 -0
- package/dist/types/dynamic-argument.d.ts.map +1 -0
- package/dist/types/index.cjs +4 -0
- package/dist/types/index.cjs.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/zod-compat.d.ts +23 -0
- package/dist/types/zod-compat.d.ts.map +1 -0
- package/dist/utils.cjs +72 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.ts +148 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +3 -0
- package/dist/utils.js.map +1 -0
- package/dist/vector/embed.d.ts +3 -0
- package/dist/vector/embed.d.ts.map +1 -0
- package/dist/vector/filter/base.d.ts +128 -0
- package/dist/vector/filter/base.d.ts.map +1 -0
- package/dist/vector/filter/index.cjs +12 -0
- package/dist/vector/filter/index.cjs.map +1 -0
- package/dist/vector/filter/index.d.ts +2 -0
- package/dist/vector/filter/index.d.ts.map +1 -0
- package/dist/vector/filter/index.js +3 -0
- package/dist/vector/filter/index.js.map +1 -0
- package/dist/vector/index.cjs +25 -0
- package/dist/vector/index.cjs.map +1 -0
- package/dist/vector/index.d.ts +5 -0
- package/dist/vector/index.d.ts.map +1 -0
- package/dist/vector/index.js +4 -0
- package/dist/vector/index.js.map +1 -0
- package/dist/vector/index.warning.d.ts +6 -0
- package/dist/vector/index.warning.d.ts.map +1 -0
- package/dist/vector/types.d.ts +152 -0
- package/dist/vector/types.d.ts.map +1 -0
- package/dist/vector/vector.d.ts +57 -0
- package/dist/vector/vector.d.ts.map +1 -0
- package/dist/voice/aisdk/index.d.ts +3 -0
- package/dist/voice/aisdk/index.d.ts.map +1 -0
- package/dist/voice/aisdk/speech.d.ts +23 -0
- package/dist/voice/aisdk/speech.d.ts.map +1 -0
- package/dist/voice/aisdk/transcription.d.ts +22 -0
- package/dist/voice/aisdk/transcription.d.ts.map +1 -0
- package/dist/voice/composite-voice.d.ts +78 -0
- package/dist/voice/composite-voice.d.ts.map +1 -0
- package/dist/voice/default-voice.d.ts +13 -0
- package/dist/voice/default-voice.d.ts.map +1 -0
- package/dist/voice/index.cjs +28 -0
- package/dist/voice/index.cjs.map +1 -0
- package/dist/voice/index.d.ts +5 -0
- package/dist/voice/index.d.ts.map +1 -0
- package/dist/voice/index.js +3 -0
- package/dist/voice/index.js.map +1 -0
- package/dist/voice/voice.d.ts +132 -0
- package/dist/voice/voice.d.ts.map +1 -0
- package/dist/workflows/constants.cjs +16 -0
- package/dist/workflows/constants.cjs.map +1 -0
- package/dist/workflows/constants.d.ts +3 -0
- package/dist/workflows/constants.d.ts.map +1 -0
- package/dist/workflows/constants.js +3 -0
- package/dist/workflows/constants.js.map +1 -0
- package/dist/workflows/default.d.ts +345 -0
- package/dist/workflows/default.d.ts.map +1 -0
- package/dist/workflows/evented/execution-engine.d.ts +41 -0
- package/dist/workflows/evented/execution-engine.d.ts.map +1 -0
- package/dist/workflows/evented/index.cjs +44 -0
- package/dist/workflows/evented/index.cjs.map +1 -0
- package/dist/workflows/evented/index.d.ts +5 -0
- package/dist/workflows/evented/index.d.ts.map +1 -0
- package/dist/workflows/evented/index.js +3 -0
- package/dist/workflows/evented/index.js.map +1 -0
- package/dist/workflows/evented/step-executor.d.ts +90 -0
- package/dist/workflows/evented/step-executor.d.ts.map +1 -0
- package/dist/workflows/evented/workflow-event-processor/index.d.ts +54 -0
- package/dist/workflows/evented/workflow-event-processor/index.d.ts.map +1 -0
- package/dist/workflows/evented/workflow-event-processor/loop.d.ts +21 -0
- package/dist/workflows/evented/workflow-event-processor/loop.d.ts.map +1 -0
- package/dist/workflows/evented/workflow-event-processor/parallel.d.ts +18 -0
- package/dist/workflows/evented/workflow-event-processor/parallel.d.ts.map +1 -0
- package/dist/workflows/evented/workflow-event-processor/sleep.d.ts +24 -0
- package/dist/workflows/evented/workflow-event-processor/sleep.d.ts.map +1 -0
- package/dist/workflows/evented/workflow-event-processor/utils.d.ts +30 -0
- package/dist/workflows/evented/workflow-event-processor/utils.d.ts.map +1 -0
- package/dist/workflows/evented/workflow.d.ts +81 -0
- package/dist/workflows/evented/workflow.d.ts.map +1 -0
- package/dist/workflows/execution-engine.d.ts +75 -0
- package/dist/workflows/execution-engine.d.ts.map +1 -0
- package/dist/workflows/index.cjs +60 -0
- package/dist/workflows/index.cjs.map +1 -0
- package/dist/workflows/index.d.ts +7 -0
- package/dist/workflows/index.d.ts.map +1 -0
- package/dist/workflows/index.js +3 -0
- package/dist/workflows/index.js.map +1 -0
- package/dist/workflows/index.warning.d.ts +6 -0
- package/dist/workflows/index.warning.d.ts.map +1 -0
- package/dist/workflows/legacy/index.cjs +92 -0
- package/dist/workflows/legacy/index.cjs.map +1 -0
- package/dist/workflows/legacy/index.d.ts +5 -0
- package/dist/workflows/legacy/index.d.ts.map +1 -0
- package/dist/workflows/legacy/index.js +3 -0
- package/dist/workflows/legacy/index.js.map +1 -0
- package/dist/workflows/legacy/machine.d.ts +386 -0
- package/dist/workflows/legacy/machine.d.ts.map +1 -0
- package/dist/workflows/legacy/step.d.ts +15 -0
- package/dist/workflows/legacy/step.d.ts.map +1 -0
- package/dist/workflows/legacy/types.d.ts +397 -0
- package/dist/workflows/legacy/types.d.ts.map +1 -0
- package/dist/workflows/legacy/utils.d.ts +68 -0
- package/dist/workflows/legacy/utils.d.ts.map +1 -0
- package/dist/workflows/legacy/workflow-instance.d.ts +97 -0
- package/dist/workflows/legacy/workflow-instance.d.ts.map +1 -0
- package/dist/workflows/legacy/workflow.d.ts +109 -0
- package/dist/workflows/legacy/workflow.d.ts.map +1 -0
- package/dist/workflows/step.d.ts +64 -0
- package/dist/workflows/step.d.ts.map +1 -0
- package/dist/workflows/types.d.ts +351 -0
- package/dist/workflows/types.d.ts.map +1 -0
- package/dist/workflows/utils.d.ts +19 -0
- package/dist/workflows/utils.d.ts.map +1 -0
- package/dist/workflows/workflow.d.ts +493 -0
- package/dist/workflows/workflow.d.ts.map +1 -0
- package/dist/workflows/workflow.warning.d.ts +9 -0
- package/dist/workflows/workflow.warning.d.ts.map +1 -0
- package/dist/zod-to-json.cjs +12 -0
- package/dist/zod-to-json.cjs.map +1 -0
- package/dist/zod-to-json.d.ts +2 -0
- package/dist/zod-to-json.d.ts.map +1 -0
- package/dist/zod-to-json.js +3 -0
- package/dist/zod-to-json.js.map +1 -0
- package/error.d.ts +1 -0
- package/eval.d.ts +1 -0
- package/events.d.ts +1 -0
- package/hooks.d.ts +1 -0
- package/integration.d.ts +1 -0
- package/llm.d.ts +1 -0
- package/logger.d.ts +1 -0
- package/loop.d.ts +1 -0
- package/mastra.d.ts +1 -0
- package/mcp.d.ts +1 -0
- package/memory.d.ts +1 -0
- package/package.json +305 -0
- package/processors.d.ts +1 -0
- package/relevance.d.ts +1 -0
- package/runtime-context.d.ts +1 -0
- package/scores/scoreTraces.d.ts +1 -0
- package/scores.d.ts +1 -0
- package/server.d.ts +1 -0
- package/src/llm/model/provider-types.generated.d.ts +1205 -0
- package/storage.d.ts +1 -0
- package/stream.d.ts +1 -0
- package/telemetry/otel-vendor.d.ts +1 -0
- package/telemetry.d.ts +1 -0
- package/test-utils/llm-mock.d.ts +1 -0
- package/tools/is-vercel-tool.d.ts +1 -0
- package/tools.d.ts +1 -0
- package/tts.d.ts +1 -0
- package/types.d.ts +1 -0
- package/utils/zod-to-json.d.ts +1 -0
- package/utils.d.ts +1 -0
- package/vector/filter.d.ts +1 -0
- package/vector.d.ts +1 -0
- package/voice.d.ts +1 -0
- package/workflows/_constants.d.ts +1 -0
- package/workflows/evented.d.ts +1 -0
- package/workflows/legacy.d.ts +1 -0
- package/workflows.d.ts +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/llm/model/model.ts"],"names":[],"mappings":"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","file":"chunk-6D2K2CAA.js","sourcesContent":["import {\n AnthropicSchemaCompatLayer,\n applyCompatLayer,\n DeepSeekSchemaCompatLayer,\n GoogleSchemaCompatLayer,\n MetaSchemaCompatLayer,\n OpenAIReasoningSchemaCompatLayer,\n OpenAISchemaCompatLayer,\n} from '@mastra/schema-compat';\nimport { zodToJsonSchema } from '@mastra/schema-compat/zod-to-json';\nimport type { CoreMessage, LanguageModel, Schema, StreamObjectOnFinishCallback, StreamTextOnFinishCallback } from 'ai';\nimport { generateObject, generateText, jsonSchema, Output, streamObject, streamText } from 'ai';\nimport type { JSONSchema7 } from 'json-schema';\nimport type { ZodSchema } from 'zod';\nimport { z } from 'zod';\nimport type { MastraPrimitives } from '../../action';\nimport { AISpanType } from '../../ai-tracing';\nimport { MastraBase } from '../../base';\nimport { MastraError, ErrorDomain, ErrorCategory } from '../../error';\nimport type { Mastra } from '../../mastra';\nimport { delay, isZodType } from '../../utils';\n\nimport type {\n GenerateObjectWithMessagesArgs,\n GenerateTextResult,\n GenerateObjectResult,\n GenerateTextWithMessagesArgs,\n OriginalGenerateTextOptions,\n ToolSet,\n GenerateReturn,\n OriginalGenerateObjectOptions,\n StreamTextWithMessagesArgs,\n StreamTextResult,\n OriginalStreamTextOptions,\n StreamObjectWithMessagesArgs,\n OriginalStreamObjectOptions,\n StreamObjectResult,\n StreamReturn,\n} from './base.types';\nimport type { inferOutput, MastraModelOptions } from './shared.types';\n\nexport class MastraLLMV1 extends MastraBase {\n #model: LanguageModel;\n #mastra?: Mastra;\n #options?: MastraModelOptions;\n\n constructor({ model, mastra, options }: { model: LanguageModel; mastra?: Mastra; options?: MastraModelOptions }) {\n super({ name: 'aisdk' });\n\n this.#model = model;\n this.#options = options;\n\n if (mastra) {\n this.#mastra = mastra;\n if (mastra.getLogger()) {\n this.__setLogger(this.#mastra.getLogger());\n }\n }\n }\n\n __registerPrimitives(p: MastraPrimitives) {\n if (p.telemetry) {\n this.__setTelemetry(p.telemetry);\n }\n\n if (p.logger) {\n this.__setLogger(p.logger);\n }\n }\n\n __registerMastra(p: Mastra) {\n this.#mastra = p;\n }\n\n getProvider() {\n return this.#model.provider;\n }\n\n getModelId() {\n return this.#model.modelId;\n }\n\n getModel() {\n return this.#model;\n }\n\n private _applySchemaCompat(schema: ZodSchema | JSONSchema7): Schema {\n const model = this.#model;\n\n const schemaCompatLayers = [];\n\n if (model) {\n const modelInfo = {\n modelId: model.modelId,\n supportsStructuredOutputs: model.supportsStructuredOutputs ?? false,\n provider: model.provider,\n };\n schemaCompatLayers.push(\n new OpenAIReasoningSchemaCompatLayer(modelInfo),\n new OpenAISchemaCompatLayer(modelInfo),\n new GoogleSchemaCompatLayer(modelInfo),\n new AnthropicSchemaCompatLayer(modelInfo),\n new DeepSeekSchemaCompatLayer(modelInfo),\n new MetaSchemaCompatLayer(modelInfo),\n );\n }\n\n return applyCompatLayer({\n schema: schema as any,\n compatLayers: schemaCompatLayers,\n mode: 'aiSdkSchema',\n });\n }\n\n async __text<Tools extends ToolSet, Z extends ZodSchema | JSONSchema7 | undefined>({\n runId,\n messages,\n maxSteps = 5,\n tools = {},\n temperature,\n toolChoice = 'auto',\n onStepFinish,\n experimental_output,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: GenerateTextWithMessagesArgs<Tools, Z>): Promise<GenerateTextResult<Tools, Z>> {\n const model = this.#model;\n\n this.logger.debug(`[LLM] - Generating text`, {\n runId,\n messages,\n maxSteps,\n threadId,\n resourceId,\n tools: Object.keys(tools),\n });\n\n let schema: z.ZodType<inferOutput<Z>> | Schema<inferOutput<Z>> | undefined = undefined;\n\n if (experimental_output) {\n this.logger.debug('[LLM] - Using experimental output', {\n runId,\n });\n\n if (isZodType(experimental_output)) {\n schema = experimental_output as z.ZodType<inferOutput<Z>>;\n if (schema instanceof z.ZodArray) {\n schema = schema._def.type as z.ZodType<inferOutput<Z>>;\n }\n\n let jsonSchemaToUse;\n jsonSchemaToUse = zodToJsonSchema(schema, 'jsonSchema7') as JSONSchema7;\n\n schema = jsonSchema(jsonSchemaToUse) as Schema<inferOutput<Z>>;\n } else {\n schema = jsonSchema(experimental_output as JSONSchema7) as Schema<inferOutput<Z>>;\n }\n }\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.MODEL_GENERATION,\n input: {\n messages,\n schema,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: false,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n tracingPolicy: this.#options?.tracingPolicy,\n });\n\n const argsForExecute: OriginalGenerateTextOptions<Tools, Z> = {\n ...rest,\n messages,\n model,\n temperature,\n tools: {\n ...(tools as Tools),\n },\n toolChoice,\n maxSteps,\n onStepFinish: async props => {\n try {\n await onStepFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_TEXT_ON_STEP_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Text Step Change:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n });\n\n const remainingTokens = parseInt(props?.response?.headers?.['x-ratelimit-remaining-tokens'] ?? '', 10);\n if (!isNaN(remainingTokens) && remainingTokens > 0 && remainingTokens < 2000) {\n this.logger.warn('Rate limit approaching, waiting 10 seconds', { runId });\n await delay(10 * 1000);\n }\n },\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n experimental_output: schema\n ? Output.object({\n schema,\n })\n : undefined,\n };\n\n try {\n const result: GenerateTextResult<Tools, Z> = await generateText(argsForExecute);\n\n if (schema && result.finishReason === 'stop') {\n result.object = (result as any).experimental_output;\n }\n llmSpan?.end({\n output: {\n text: result.text,\n object: result.object,\n reasoning: result.reasoningDetails,\n reasoningText: result.reasoning,\n files: result.files,\n sources: result.sources,\n warnings: result.warnings,\n },\n attributes: {\n finishReason: result.finishReason,\n usage: result.usage,\n },\n });\n\n return result;\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_TEXT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n async __textObject<Z extends ZodSchema | JSONSchema7>({\n messages,\n structuredOutput,\n runId,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: GenerateObjectWithMessagesArgs<Z>): Promise<GenerateObjectResult<Z>> {\n const model = this.#model;\n\n this.logger.debug(`[LLM] - Generating a text object`, { runId });\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.MODEL_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature: rest.temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: false,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n tracingPolicy: this.#options?.tracingPolicy,\n });\n\n try {\n let output: 'object' | 'array' = 'object';\n if (structuredOutput instanceof z.ZodArray) {\n output = 'array';\n structuredOutput = structuredOutput._def.type;\n }\n\n const processedSchema = this._applySchemaCompat(structuredOutput!);\n llmSpan?.update({\n input: {\n messages,\n schema: processedSchema,\n },\n });\n\n const argsForExecute: OriginalGenerateObjectOptions<Z> = {\n ...rest,\n messages,\n model,\n // @ts-expect-error - output in our implementation can only be object or array\n output,\n schema: processedSchema as Schema<Z>,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n };\n\n try {\n // @ts-expect-error - output in our implementation can only be object or array\n const result = await generateObject(argsForExecute);\n\n llmSpan?.end({\n output: {\n object: result.object,\n warnings: result.warnings,\n },\n attributes: {\n finishReason: result.finishReason,\n usage: result.usage,\n },\n });\n\n // @ts-expect-error - output in our implementation can only be object or array\n return result;\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_OBJECT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n } catch (e: unknown) {\n if (e instanceof MastraError) {\n throw e;\n }\n\n const mastraError = new MastraError(\n {\n id: 'LLM_GENERATE_OBJECT_AI_SDK_SCHEMA_CONVERSION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n __stream<Tools extends ToolSet, Z extends ZodSchema | JSONSchema7 | undefined = undefined>({\n messages,\n onStepFinish,\n onFinish,\n maxSteps = 5,\n tools = {},\n runId,\n temperature,\n toolChoice = 'auto',\n experimental_output,\n telemetry,\n threadId,\n resourceId,\n runtimeContext,\n tracingContext,\n ...rest\n }: StreamTextWithMessagesArgs<Tools, Z>): StreamTextResult<Tools, Z> {\n const model = this.#model;\n this.logger.debug(`[LLM] - Streaming text`, {\n runId,\n threadId,\n resourceId,\n messages,\n maxSteps,\n tools: Object.keys(tools || {}),\n });\n\n let schema: z.ZodType<Z> | Schema<Z> | undefined;\n if (experimental_output) {\n this.logger.debug('[LLM] - Using experimental output', {\n runId,\n });\n if (typeof (experimental_output as any).parse === 'function') {\n schema = experimental_output as z.ZodType<Z>;\n if (schema instanceof z.ZodArray) {\n schema = schema._def.type as z.ZodType<Z>;\n }\n } else {\n schema = jsonSchema(experimental_output as JSONSchema7) as Schema<Z>;\n }\n }\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.MODEL_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: true,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n tracingPolicy: this.#options?.tracingPolicy,\n });\n\n const argsForExecute: OriginalStreamTextOptions<Tools, Z> = {\n model,\n temperature,\n tools: {\n ...(tools as Tools),\n },\n maxSteps,\n toolChoice,\n onStepFinish: async props => {\n try {\n await onStepFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_ON_STEP_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n this.logger.trackException(mastraError);\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Stream Step Change:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n });\n\n const remainingTokens = parseInt(props?.response?.headers?.['x-ratelimit-remaining-tokens'] ?? '', 10);\n if (!isNaN(remainingTokens) && remainingTokens > 0 && remainingTokens < 2000) {\n this.logger.warn('Rate limit approaching, waiting 10 seconds', { runId });\n await delay(10 * 1000);\n }\n },\n onFinish: async props => {\n // End the model generation span BEFORE calling the user's onFinish callback\n // This ensures the model span ends before the agent span\n llmSpan?.end({\n output: {\n text: props?.text,\n reasoning: props?.reasoningDetails,\n reasoningText: props?.reasoning,\n files: props?.files,\n sources: props?.sources,\n warnings: props?.warnings,\n },\n attributes: {\n finishReason: props?.finishReason,\n usage: props?.usage,\n },\n });\n\n try {\n await onFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_ON_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n finishReason: props?.finishReason,\n toolCalls: props?.toolCalls ? JSON.stringify(props.toolCalls) : '',\n toolResults: props?.toolResults ? JSON.stringify(props.toolResults) : '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n this.logger.trackException(mastraError);\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Stream Finished:', {\n text: props?.text,\n toolCalls: props?.toolCalls,\n toolResults: props?.toolResults,\n finishReason: props?.finishReason,\n usage: props?.usage,\n runId,\n threadId,\n resourceId,\n });\n },\n ...rest,\n messages,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n experimental_output: schema\n ? (Output.object({\n schema,\n }) as any)\n : undefined,\n };\n\n try {\n return streamText(argsForExecute);\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_TEXT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n __streamObject<T extends ZodSchema | JSONSchema7>({\n messages,\n runId,\n runtimeContext,\n threadId,\n resourceId,\n onFinish,\n structuredOutput,\n telemetry,\n tracingContext,\n ...rest\n }: StreamObjectWithMessagesArgs<T>): StreamObjectResult<T> {\n const model = this.#model;\n this.logger.debug(`[LLM] - Streaming structured output`, {\n runId,\n messages,\n });\n\n const llmSpan = tracingContext.currentSpan?.createChildSpan({\n name: `llm: '${model.modelId}'`,\n type: AISpanType.MODEL_GENERATION,\n input: {\n messages,\n },\n attributes: {\n model: model.modelId,\n provider: model.provider,\n parameters: {\n temperature: rest.temperature,\n maxOutputTokens: rest.maxTokens,\n topP: rest.topP,\n frequencyPenalty: rest.frequencyPenalty,\n presencePenalty: rest.presencePenalty,\n },\n streaming: true,\n },\n metadata: {\n runId,\n threadId,\n resourceId,\n },\n tracingPolicy: this.#options?.tracingPolicy,\n });\n\n try {\n let output: 'object' | 'array' = 'object';\n if (structuredOutput instanceof z.ZodArray) {\n output = 'array';\n structuredOutput = structuredOutput._def.type;\n }\n\n const processedSchema = this._applySchemaCompat(structuredOutput!);\n llmSpan?.update({\n input: {\n messages,\n schema: processedSchema,\n },\n });\n\n const argsForExecute: OriginalStreamObjectOptions<T> = {\n ...rest,\n model,\n onFinish: async (props: any) => {\n // End the model generation span BEFORE calling the user's onFinish callback\n // This ensures the model span ends before the agent span\n llmSpan?.end({\n output: {\n text: props?.text,\n object: props?.object,\n reasoning: props?.reasoningDetails,\n reasoningText: props?.reasoning,\n files: props?.files,\n sources: props?.sources,\n warnings: props?.warnings,\n },\n attributes: {\n finishReason: props?.finishReason,\n usage: props?.usage,\n },\n });\n\n try {\n await onFinish?.({ ...props, runId: runId! });\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_ON_FINISH_CALLBACK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n toolCalls: '',\n toolResults: '',\n finishReason: '',\n usage: props?.usage ? JSON.stringify(props.usage) : '',\n },\n },\n e,\n );\n this.logger.trackException(mastraError);\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n\n this.logger.debug('[LLM] - Object Stream Finished:', {\n usage: props?.usage,\n runId,\n threadId,\n resourceId,\n });\n },\n messages,\n // @ts-expect-error - output in our implementation can only be object or array\n output,\n experimental_telemetry: {\n ...this.experimental_telemetry,\n ...telemetry,\n },\n schema: processedSchema as Schema<inferOutput<T>>,\n };\n\n try {\n return streamObject(argsForExecute as any);\n } catch (e: unknown) {\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_AI_SDK_EXECUTION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.THIRD_PARTY,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n } catch (e: unknown) {\n if (e instanceof MastraError) {\n llmSpan?.error({ error: e });\n throw e;\n }\n\n const mastraError = new MastraError(\n {\n id: 'LLM_STREAM_OBJECT_AI_SDK_SCHEMA_CONVERSION_FAILED',\n domain: ErrorDomain.LLM,\n category: ErrorCategory.USER,\n details: {\n modelId: model.modelId,\n modelProvider: model.provider,\n runId: runId ?? 'unknown',\n threadId: threadId ?? 'unknown',\n resourceId: resourceId ?? 'unknown',\n },\n },\n e,\n );\n llmSpan?.error({ error: mastraError });\n throw mastraError;\n }\n }\n\n convertToMessages(messages: string | string[] | CoreMessage[]): CoreMessage[] {\n if (Array.isArray(messages)) {\n return messages.map(m => {\n if (typeof m === 'string') {\n return {\n role: 'user',\n content: m,\n };\n }\n return m;\n });\n }\n\n return [\n {\n role: 'user',\n content: messages,\n },\n ];\n }\n\n async generate<\n Output extends ZodSchema | JSONSchema7 | undefined = undefined,\n StructuredOutput extends ZodSchema | JSONSchema7 | undefined = undefined,\n Tools extends ToolSet = ToolSet,\n >(\n messages: string | string[] | CoreMessage[],\n {\n output,\n ...rest\n }: Omit<\n Output extends undefined\n ? GenerateTextWithMessagesArgs<Tools, StructuredOutput>\n : Omit<GenerateObjectWithMessagesArgs<NonNullable<Output>>, 'structuredOutput' | 'output'>,\n 'messages'\n > & { output?: Output },\n ): Promise<GenerateReturn<Tools, Output, StructuredOutput>> {\n const msgs = this.convertToMessages(messages);\n\n if (!output) {\n const { maxSteps, onStepFinish, ...textOptions } = rest as Omit<\n GenerateTextWithMessagesArgs<Tools, StructuredOutput>,\n 'messages'\n >;\n return (await this.__text<Tools, StructuredOutput>({\n messages: msgs,\n maxSteps,\n onStepFinish,\n ...textOptions,\n })) as unknown as GenerateReturn<Tools, Output, StructuredOutput>;\n }\n\n return (await this.__textObject({\n messages: msgs,\n structuredOutput: output as NonNullable<Output>,\n ...rest,\n })) as unknown as GenerateReturn<Tools, Output, StructuredOutput>;\n }\n\n stream<\n Output extends ZodSchema | JSONSchema7 | undefined = undefined,\n StructuredOutput extends ZodSchema | JSONSchema7 | undefined = undefined,\n Tools extends ToolSet = ToolSet,\n >(\n messages: string | string[] | CoreMessage[],\n {\n maxSteps = 5,\n output,\n onFinish,\n ...rest\n }: Omit<\n Output extends undefined\n ? StreamTextWithMessagesArgs<Tools, StructuredOutput>\n : Omit<StreamObjectWithMessagesArgs<NonNullable<Output>>, 'structuredOutput' | 'output'> & { maxSteps?: never },\n 'messages'\n > & { output?: Output },\n ): StreamReturn<Tools, Output, StructuredOutput> {\n const msgs = this.convertToMessages(messages);\n\n if (!output) {\n return this.__stream({\n messages: msgs,\n maxSteps,\n onFinish: onFinish as StreamTextOnFinishCallback<Tools> | undefined,\n ...rest,\n }) as unknown as StreamReturn<Tools, Output, StructuredOutput>;\n }\n\n return this.__streamObject({\n messages: msgs,\n structuredOutput: output as NonNullable<Output>,\n onFinish: onFinish as StreamObjectOnFinishCallback<inferOutput<Output>> | undefined,\n ...rest,\n }) as unknown as StreamReturn<Tools, Output, StructuredOutput>;\n }\n}\n"]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkTSNDVBUU_cjs = require('./chunk-TSNDVBUU.cjs');
|
|
4
|
+
var chunk5NTO7S5I_cjs = require('./chunk-5NTO7S5I.cjs');
|
|
5
|
+
|
|
6
|
+
// src/eval/metric.ts
|
|
7
|
+
var Metric = class {
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
// src/eval/evaluation.ts
|
|
11
|
+
async function evaluate({
|
|
12
|
+
agentName,
|
|
13
|
+
input,
|
|
14
|
+
metric,
|
|
15
|
+
output,
|
|
16
|
+
runId,
|
|
17
|
+
globalRunId,
|
|
18
|
+
testInfo,
|
|
19
|
+
instructions
|
|
20
|
+
}) {
|
|
21
|
+
const runIdToUse = runId || crypto.randomUUID();
|
|
22
|
+
let metricResult;
|
|
23
|
+
let metricName = metric.constructor.name;
|
|
24
|
+
try {
|
|
25
|
+
metricResult = await metric.measure(input.toString(), output);
|
|
26
|
+
} catch (e) {
|
|
27
|
+
throw new chunk5NTO7S5I_cjs.MastraError(
|
|
28
|
+
{
|
|
29
|
+
id: "EVAL_METRIC_MEASURE_EXECUTION_FAILED",
|
|
30
|
+
domain: "EVAL" /* EVAL */,
|
|
31
|
+
category: "USER" /* USER */,
|
|
32
|
+
details: {
|
|
33
|
+
agentName,
|
|
34
|
+
metricName,
|
|
35
|
+
globalRunId
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
e
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
const traceObject = {
|
|
42
|
+
input: input.toString(),
|
|
43
|
+
output,
|
|
44
|
+
result: metricResult,
|
|
45
|
+
agentName,
|
|
46
|
+
metricName,
|
|
47
|
+
instructions,
|
|
48
|
+
globalRunId,
|
|
49
|
+
runId: runIdToUse,
|
|
50
|
+
testInfo
|
|
51
|
+
};
|
|
52
|
+
try {
|
|
53
|
+
chunkTSNDVBUU_cjs.executeHook("onEvaluation" /* ON_EVALUATION */, traceObject);
|
|
54
|
+
} catch (e) {
|
|
55
|
+
throw new chunk5NTO7S5I_cjs.MastraError(
|
|
56
|
+
{
|
|
57
|
+
id: "EVAL_HOOK_EXECUTION_FAILED",
|
|
58
|
+
domain: "EVAL" /* EVAL */,
|
|
59
|
+
category: "USER" /* USER */,
|
|
60
|
+
details: {
|
|
61
|
+
agentName,
|
|
62
|
+
metricName,
|
|
63
|
+
globalRunId
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
e
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
return { ...metricResult, output };
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
exports.Metric = Metric;
|
|
73
|
+
exports.evaluate = evaluate;
|
|
74
|
+
//# sourceMappingURL=chunk-6KOL2B3A.cjs.map
|
|
75
|
+
//# sourceMappingURL=chunk-6KOL2B3A.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/eval/metric.ts","../src/eval/evaluation.ts"],"names":["MastraError","executeHook"],"mappings":";;;;;;AAKO,IAAe,SAAf,MAAsB;AAE7B;;;ACDA,eAAsB,QAAA,CAA0B;AAAA,EAC9C,SAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF,CAAA,EAS8B;AAC5B,EAAA,MAAM,UAAA,GAAa,KAAA,IAAS,MAAA,CAAO,UAAA,EAAW;AAE9C,EAAA,IAAI,YAAA;AACJ,EAAA,IAAI,UAAA,GAAa,OAAO,WAAA,CAAY,IAAA;AACpC,EAAA,IAAI;AACF,IAAA,YAAA,GAAe,MAAM,MAAA,CAAO,OAAA,CAAQ,KAAA,CAAM,QAAA,IAAY,MAAM,CAAA;AAAA,EAC9D,SAAS,CAAA,EAAY;AACnB,IAAA,MAAM,IAAIA,6BAAA;AAAA,MACR;AAAA,QACE,EAAA,EAAI,sCAAA;AAAA,QACJ,MAAA,EAAA,MAAA;AAAA,QACA,QAAA,EAAA,MAAA;AAAA,QACA,OAAA,EAAS;AAAA,UACP,SAAA;AAAA,UACA,UAAA;AAAA,UACA;AAAA;AACF,OACF;AAAA,MACA;AAAA,KACF;AAAA,EACF;AACA,EAAA,MAAM,WAAA,GAAc;AAAA,IAClB,KAAA,EAAO,MAAM,QAAA,EAAS;AAAA,IACtB,MAAA;AAAA,IACA,MAAA,EAAQ,YAAA;AAAA,IACR,SAAA;AAAA,IACA,UAAA;AAAA,IACA,YAAA;AAAA,IACA,WAAA;AAAA,IACA,KAAA,EAAO,UAAA;AAAA,IACP;AAAA,GACF;AAEA,EAAA,IAAI;AACF,IAAAC,6BAAA,CAAA,cAAA,sBAA0C,WAAW,CAAA;AAAA,EACvD,SAAS,CAAA,EAAY;AACnB,IAAA,MAAM,IAAID,6BAAA;AAAA,MACR;AAAA,QACE,EAAA,EAAI,4BAAA;AAAA,QACJ,MAAA,EAAA,MAAA;AAAA,QACA,QAAA,EAAA,MAAA;AAAA,QACA,OAAA,EAAS;AAAA,UACP,SAAA;AAAA,UACA,UAAA;AAAA,UACA;AAAA;AACF,OACF;AAAA,MACA;AAAA,KACF;AAAA,EACF;AAEA,EAAA,OAAO,EAAE,GAAG,YAAA,EAAc,MAAA,EAAO;AACnC","file":"chunk-6KOL2B3A.cjs","sourcesContent":["export interface MetricResult {\n score: number;\n info?: Record<string, any>;\n}\n\nexport abstract class Metric {\n abstract measure(input: string, output: string): Promise<MetricResult>;\n}\n","import type { Agent } from '../agent';\nimport { MastraError, ErrorCategory, ErrorDomain } from '../error';\nimport { AvailableHooks, executeHook } from '../hooks';\nimport type { Metric } from './metric';\nimport type { TestInfo, EvaluationResult } from './types';\n\nexport async function evaluate<T extends Agent>({\n agentName,\n input,\n metric,\n output,\n runId,\n globalRunId,\n testInfo,\n instructions,\n}: {\n agentName: string;\n input: Parameters<T['generate']>[0];\n metric: Metric;\n output: string;\n globalRunId: string;\n runId?: string;\n testInfo?: TestInfo;\n instructions: string;\n}): Promise<EvaluationResult> {\n const runIdToUse = runId || crypto.randomUUID();\n\n let metricResult;\n let metricName = metric.constructor.name;\n try {\n metricResult = await metric.measure(input.toString(), output);\n } catch (e: unknown) {\n throw new MastraError(\n {\n id: 'EVAL_METRIC_MEASURE_EXECUTION_FAILED',\n domain: ErrorDomain.EVAL,\n category: ErrorCategory.USER,\n details: {\n agentName,\n metricName,\n globalRunId,\n },\n },\n e,\n );\n }\n const traceObject = {\n input: input.toString(),\n output: output,\n result: metricResult,\n agentName,\n metricName,\n instructions,\n globalRunId,\n runId: runIdToUse,\n testInfo,\n };\n\n try {\n executeHook(AvailableHooks.ON_EVALUATION, traceObject);\n } catch (e: unknown) {\n throw new MastraError(\n {\n id: 'EVAL_HOOK_EXECUTION_FAILED',\n domain: ErrorDomain.EVAL,\n category: ErrorCategory.USER,\n details: {\n agentName,\n metricName,\n globalRunId,\n },\n },\n e,\n );\n }\n\n return { ...metricResult, output };\n}\n"]}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var stream = require('stream');
|
|
4
|
+
|
|
5
|
+
// src/logger/multi-logger.ts
|
|
6
|
+
var MultiLogger = class {
|
|
7
|
+
loggers;
|
|
8
|
+
constructor(loggers) {
|
|
9
|
+
this.loggers = loggers;
|
|
10
|
+
}
|
|
11
|
+
debug(message, ...args) {
|
|
12
|
+
this.loggers.forEach((logger) => logger.debug(message, ...args));
|
|
13
|
+
}
|
|
14
|
+
info(message, ...args) {
|
|
15
|
+
this.loggers.forEach((logger) => logger.info(message, ...args));
|
|
16
|
+
}
|
|
17
|
+
warn(message, ...args) {
|
|
18
|
+
this.loggers.forEach((logger) => logger.warn(message, ...args));
|
|
19
|
+
}
|
|
20
|
+
error(message, ...args) {
|
|
21
|
+
this.loggers.forEach((logger) => logger.error(message, ...args));
|
|
22
|
+
}
|
|
23
|
+
trackException(error) {
|
|
24
|
+
this.loggers.forEach((logger) => logger.trackException(error));
|
|
25
|
+
}
|
|
26
|
+
getTransports() {
|
|
27
|
+
const transports = [];
|
|
28
|
+
this.loggers.forEach((logger) => transports.push(...logger.getTransports().entries()));
|
|
29
|
+
return new Map(transports);
|
|
30
|
+
}
|
|
31
|
+
async getLogs(transportId, params) {
|
|
32
|
+
for (const logger of this.loggers) {
|
|
33
|
+
const logs = await logger.getLogs(transportId, params);
|
|
34
|
+
if (logs.total > 0) {
|
|
35
|
+
return logs;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };
|
|
39
|
+
}
|
|
40
|
+
async getLogsByRunId(args) {
|
|
41
|
+
for (const logger of this.loggers) {
|
|
42
|
+
const logs = await logger.getLogsByRunId(args);
|
|
43
|
+
if (logs.total > 0) {
|
|
44
|
+
return logs;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return { logs: [], total: 0, page: args.page ?? 1, perPage: args.perPage ?? 100, hasMore: false };
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
// src/logger/noop-logger.ts
|
|
52
|
+
var noopLogger = {
|
|
53
|
+
debug: () => {
|
|
54
|
+
},
|
|
55
|
+
info: () => {
|
|
56
|
+
},
|
|
57
|
+
warn: () => {
|
|
58
|
+
},
|
|
59
|
+
error: () => {
|
|
60
|
+
},
|
|
61
|
+
cleanup: async () => {
|
|
62
|
+
},
|
|
63
|
+
getTransports: () => /* @__PURE__ */ new Map(),
|
|
64
|
+
trackException: () => {
|
|
65
|
+
},
|
|
66
|
+
getLogs: async () => ({ logs: [], total: 0, page: 1, perPage: 100, hasMore: false }),
|
|
67
|
+
getLogsByRunId: async () => ({ logs: [], total: 0, page: 1, perPage: 100, hasMore: false })
|
|
68
|
+
};
|
|
69
|
+
var LoggerTransport = class extends stream.Transform {
|
|
70
|
+
constructor(opts = {}) {
|
|
71
|
+
super({ ...opts, objectMode: true });
|
|
72
|
+
}
|
|
73
|
+
async getLogsByRunId(_args) {
|
|
74
|
+
return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };
|
|
75
|
+
}
|
|
76
|
+
async getLogs(_args) {
|
|
77
|
+
return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
var createCustomTransport = (stream, getLogs, getLogsByRunId) => {
|
|
81
|
+
let transport = stream;
|
|
82
|
+
if (getLogs) {
|
|
83
|
+
transport.getLogs = getLogs;
|
|
84
|
+
}
|
|
85
|
+
if (getLogsByRunId) {
|
|
86
|
+
transport.getLogsByRunId = getLogsByRunId;
|
|
87
|
+
}
|
|
88
|
+
return transport;
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
exports.LoggerTransport = LoggerTransport;
|
|
92
|
+
exports.MultiLogger = MultiLogger;
|
|
93
|
+
exports.createCustomTransport = createCustomTransport;
|
|
94
|
+
exports.noopLogger = noopLogger;
|
|
95
|
+
//# sourceMappingURL=chunk-6TEQIYXV.cjs.map
|
|
96
|
+
//# sourceMappingURL=chunk-6TEQIYXV.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/logger/multi-logger.ts","../src/logger/noop-logger.ts","../src/logger/transport.ts"],"names":["Transform"],"mappings":";;;;;AAKO,IAAM,cAAN,MAA2C;AAAA,EACxC,OAAA;AAAA,EAER,YAAY,OAAA,EAA0B;AACpC,IAAA,IAAA,CAAK,OAAA,GAAU,OAAA;AAAA,EACjB;AAAA,EAEA,KAAA,CAAM,YAAoB,IAAA,EAAmB;AAC3C,IAAA,IAAA,CAAK,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU,MAAA,CAAO,MAAM,OAAA,EAAS,GAAG,IAAI,CAAC,CAAA;AAAA,EAC/D;AAAA,EAEA,IAAA,CAAK,YAAoB,IAAA,EAAmB;AAC1C,IAAA,IAAA,CAAK,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU,MAAA,CAAO,KAAK,OAAA,EAAS,GAAG,IAAI,CAAC,CAAA;AAAA,EAC9D;AAAA,EAEA,IAAA,CAAK,YAAoB,IAAA,EAAmB;AAC1C,IAAA,IAAA,CAAK,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU,MAAA,CAAO,KAAK,OAAA,EAAS,GAAG,IAAI,CAAC,CAAA;AAAA,EAC9D;AAAA,EAEA,KAAA,CAAM,YAAoB,IAAA,EAAmB;AAC3C,IAAA,IAAA,CAAK,OAAA,CAAQ,QAAQ,CAAA,MAAA,KAAU,MAAA,CAAO,MAAM,OAAA,EAAS,GAAG,IAAI,CAAC,CAAA;AAAA,EAC/D;AAAA,EAEA,eAAe,KAAA,EAA0B;AACvC,IAAA,IAAA,CAAK,QAAQ,OAAA,CAAQ,CAAA,MAAA,KAAU,MAAA,CAAO,cAAA,CAAe,KAAK,CAAC,CAAA;AAAA,EAC7D;AAAA,EAEA,aAAA,GAA8C;AAC5C,IAAA,MAAM,aAA0C,EAAC;AACjD,IAAA,IAAA,CAAK,OAAA,CAAQ,OAAA,CAAQ,CAAA,MAAA,KAAU,UAAA,CAAW,IAAA,CAAK,GAAG,MAAA,CAAO,aAAA,EAAc,CAAE,OAAA,EAAS,CAAC,CAAA;AACnF,IAAA,OAAO,IAAI,IAAI,UAAU,CAAA;AAAA,EAC3B;AAAA,EAEA,MAAM,OAAA,CACJ,WAAA,EACA,MAAA,EASA;AACA,IAAA,KAAA,MAAW,MAAA,IAAU,KAAK,OAAA,EAAS;AACjC,MAAA,MAAM,IAAA,GAAO,MAAM,MAAA,CAAO,OAAA,CAAQ,aAAa,MAAM,CAAA;AACrD,MAAA,IAAI,IAAA,CAAK,QAAQ,CAAA,EAAG;AAClB,QAAA,OAAO,IAAA;AAAA,MACT;AAAA,IACF;AAEA,IAAA,OAAO,EAAE,IAAA,EAAM,EAAC,EAAG,OAAO,CAAA,EAAG,IAAA,EAAM,MAAA,EAAQ,IAAA,IAAQ,GAAG,OAAA,EAAS,MAAA,EAAQ,OAAA,IAAW,GAAA,EAAK,SAAS,KAAA,EAAM;AAAA,EACxG;AAAA,EAEA,MAAM,eAAe,IAAA,EASlB;AACD,IAAA,KAAA,MAAW,MAAA,IAAU,KAAK,OAAA,EAAS;AACjC,MAAA,MAAM,IAAA,GAAO,MAAM,MAAA,CAAO,cAAA,CAAe,IAAI,CAAA;AAC7C,MAAA,IAAI,IAAA,CAAK,QAAQ,CAAA,EAAG;AAClB,QAAA,OAAO,IAAA;AAAA,MACT;AAAA,IACF;AAEA,IAAA,OAAO,EAAE,IAAA,EAAM,EAAC,EAAG,OAAO,CAAA,EAAG,IAAA,EAAM,IAAA,CAAK,IAAA,IAAQ,GAAG,OAAA,EAAS,IAAA,CAAK,OAAA,IAAW,GAAA,EAAK,SAAS,KAAA,EAAM;AAAA,EAClG;AACF;;;AC7EO,IAAM,UAAA,GAAa;AAAA,EACxB,OAAO,MAAM;AAAA,EAAC,CAAA;AAAA,EACd,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,MAAM,MAAM;AAAA,EAAC,CAAA;AAAA,EACb,OAAO,MAAM;AAAA,EAAC,CAAA;AAAA,EACd,SAAS,YAAY;AAAA,EAAC,CAAA;AAAA,EACtB,aAAA,EAAe,sBAAM,IAAI,GAAA,EAAI;AAAA,EAC7B,gBAAgB,MAAM;AAAA,EAAC,CAAA;AAAA,EACvB,OAAA,EAAS,aAAa,EAAE,IAAA,EAAM,EAAC,EAAG,KAAA,EAAO,CAAA,EAAG,IAAA,EAAM,CAAA,EAAG,OAAA,EAAS,GAAA,EAAK,SAAS,KAAA,EAAM,CAAA;AAAA,EAClF,cAAA,EAAgB,aAAa,EAAE,IAAA,EAAM,EAAC,EAAG,KAAA,EAAO,CAAA,EAAG,IAAA,EAAM,CAAA,EAAG,OAAA,EAAS,GAAA,EAAK,SAAS,KAAA,EAAM;AAC3F;ACCO,IAAe,eAAA,GAAf,cAAuCA,gBAAA,CAAU;AAAA,EACtD,WAAA,CAAY,IAAA,GAAY,EAAC,EAAG;AAC1B,IAAA,KAAA,CAAM,EAAE,GAAG,IAAA,EAAM,UAAA,EAAY,MAAM,CAAA;AAAA,EACrC;AAAA,EAEA,MAAM,eAAe,KAAA,EAclB;AACD,IAAA,OAAO,EAAE,IAAA,EAAM,EAAC,EAAG,OAAO,CAAA,EAAG,IAAA,EAAM,KAAA,EAAO,IAAA,IAAQ,GAAG,OAAA,EAAS,KAAA,EAAO,OAAA,IAAW,GAAA,EAAK,SAAS,KAAA,EAAM;AAAA,EACtG;AAAA,EACA,MAAM,QAAQ,KAAA,EAcX;AACD,IAAA,OAAO,EAAE,IAAA,EAAM,EAAC,EAAG,OAAO,CAAA,EAAG,IAAA,EAAM,KAAA,EAAO,IAAA,IAAQ,GAAG,OAAA,EAAS,KAAA,EAAO,OAAA,IAAW,GAAA,EAAK,SAAS,KAAA,EAAM;AAAA,EACtG;AACF;AAEO,IAAM,qBAAA,GAAwB,CACnC,MAAA,EACA,OAAA,EACA,cAAA,KACG;AACH,EAAA,IAAI,SAAA,GAAY,MAAA;AAChB,EAAA,IAAI,OAAA,EAAS;AACX,IAAA,SAAA,CAAU,OAAA,GAAU,OAAA;AAAA,EACtB;AACA,EAAA,IAAI,cAAA,EAAgB;AAClB,IAAA,SAAA,CAAU,cAAA,GAAiB,cAAA;AAAA,EAC7B;AACA,EAAA,OAAO,SAAA;AACT","file":"chunk-6TEQIYXV.cjs","sourcesContent":["import type { MastraError } from '../error';\nimport type { LogLevel } from './constants';\nimport type { IMastraLogger } from './logger';\nimport type { LoggerTransport } from './transport';\n\nexport class MultiLogger implements IMastraLogger {\n private loggers: IMastraLogger[];\n\n constructor(loggers: IMastraLogger[]) {\n this.loggers = loggers;\n }\n\n debug(message: string, ...args: any[]): void {\n this.loggers.forEach(logger => logger.debug(message, ...args));\n }\n\n info(message: string, ...args: any[]): void {\n this.loggers.forEach(logger => logger.info(message, ...args));\n }\n\n warn(message: string, ...args: any[]): void {\n this.loggers.forEach(logger => logger.warn(message, ...args));\n }\n\n error(message: string, ...args: any[]): void {\n this.loggers.forEach(logger => logger.error(message, ...args));\n }\n\n trackException(error: MastraError): void {\n this.loggers.forEach(logger => logger.trackException(error));\n }\n\n getTransports(): Map<string, LoggerTransport> {\n const transports: [string, LoggerTransport][] = [];\n this.loggers.forEach(logger => transports.push(...logger.getTransports().entries()));\n return new Map(transports);\n }\n\n async getLogs(\n transportId: string,\n params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n },\n ) {\n for (const logger of this.loggers) {\n const logs = await logger.getLogs(transportId, params);\n if (logs.total > 0) {\n return logs;\n }\n }\n\n return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };\n }\n\n async getLogsByRunId(args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n for (const logger of this.loggers) {\n const logs = await logger.getLogsByRunId(args);\n if (logs.total > 0) {\n return logs;\n }\n }\n\n return { logs: [], total: 0, page: args.page ?? 1, perPage: args.perPage ?? 100, hasMore: false };\n }\n}\n","import type { IMastraLogger } from './logger';\n\nexport const noopLogger = {\n debug: () => {},\n info: () => {},\n warn: () => {},\n error: () => {},\n cleanup: async () => {},\n getTransports: () => new Map(),\n trackException: () => {},\n getLogs: async () => ({ logs: [], total: 0, page: 1, perPage: 100, hasMore: false }),\n getLogsByRunId: async () => ({ logs: [], total: 0, page: 1, perPage: 100, hasMore: false }),\n} as IMastraLogger;\n","import { Transform } from 'stream';\nimport type { LogLevel } from './constants';\n\nexport interface BaseLogMessage {\n runId?: string;\n msg: string;\n level: LogLevel;\n time: Date;\n pid: number;\n hostname: string;\n name: string;\n}\n\nexport abstract class LoggerTransport extends Transform {\n constructor(opts: any = {}) {\n super({ ...opts, objectMode: true });\n }\n\n async getLogsByRunId(_args: {\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };\n }\n async getLogs(_args?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };\n }\n}\n\nexport const createCustomTransport = (\n stream: Transform,\n getLogs?: LoggerTransport['getLogs'],\n getLogsByRunId?: LoggerTransport['getLogsByRunId'],\n) => {\n let transport = stream as LoggerTransport;\n if (getLogs) {\n transport.getLogs = getLogs;\n }\n if (getLogsByRunId) {\n transport.getLogsByRunId = getLogsByRunId;\n }\n return transport as LoggerTransport;\n};\n"]}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkA5KDVZDL_cjs = require('./chunk-A5KDVZDL.cjs');
|
|
4
|
+
|
|
5
|
+
// src/base.ts
|
|
6
|
+
var MastraBase = class {
|
|
7
|
+
component = chunkA5KDVZDL_cjs.RegisteredLogger.LLM;
|
|
8
|
+
logger;
|
|
9
|
+
name;
|
|
10
|
+
telemetry;
|
|
11
|
+
constructor({ component, name }) {
|
|
12
|
+
this.component = component || chunkA5KDVZDL_cjs.RegisteredLogger.LLM;
|
|
13
|
+
this.name = name;
|
|
14
|
+
this.logger = new chunkA5KDVZDL_cjs.ConsoleLogger({ name: `${this.component} - ${this.name}` });
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Set the logger for the agent
|
|
18
|
+
* @param logger
|
|
19
|
+
*/
|
|
20
|
+
__setLogger(logger) {
|
|
21
|
+
this.logger = logger;
|
|
22
|
+
if (this.component !== chunkA5KDVZDL_cjs.RegisteredLogger.LLM) {
|
|
23
|
+
this.logger.debug(`Logger updated [component=${this.component}] [name=${this.name}]`);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Set the telemetry for the
|
|
28
|
+
* @param telemetry
|
|
29
|
+
*/
|
|
30
|
+
__setTelemetry(telemetry) {
|
|
31
|
+
this.telemetry = telemetry;
|
|
32
|
+
if (this.component !== chunkA5KDVZDL_cjs.RegisteredLogger.LLM) {
|
|
33
|
+
this.logger.debug(`Telemetry updated [component=${this.component}] [name=${this.telemetry.name}]`);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get the telemetry on the vector
|
|
38
|
+
* @returns telemetry
|
|
39
|
+
*/
|
|
40
|
+
__getTelemetry() {
|
|
41
|
+
return this.telemetry;
|
|
42
|
+
}
|
|
43
|
+
/*
|
|
44
|
+
get experimental_telemetry config
|
|
45
|
+
*/
|
|
46
|
+
get experimental_telemetry() {
|
|
47
|
+
return this.telemetry ? {
|
|
48
|
+
// tracer: this.telemetry.tracer,
|
|
49
|
+
tracer: this.telemetry.getBaggageTracer(),
|
|
50
|
+
isEnabled: !!this.telemetry.tracer
|
|
51
|
+
} : void 0;
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
exports.MastraBase = MastraBase;
|
|
56
|
+
//# sourceMappingURL=chunk-6VOPKVYH.cjs.map
|
|
57
|
+
//# sourceMappingURL=chunk-6VOPKVYH.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/base.ts"],"names":["RegisteredLogger","ConsoleLogger"],"mappings":";;;;;AAMO,IAAM,aAAN,MAAiB;AAAA,EACtB,YAA8BA,kCAAA,CAAiB,GAAA;AAAA,EACrC,MAAA;AAAA,EACV,IAAA;AAAA,EACA,SAAA;AAAA,EAEA,WAAA,CAAY,EAAE,SAAA,EAAW,IAAA,EAAK,EAAoD;AAChF,IAAA,IAAA,CAAK,SAAA,GAAY,aAAaA,kCAAA,CAAiB,GAAA;AAC/C,IAAA,IAAA,CAAK,IAAA,GAAO,IAAA;AACZ,IAAA,IAAA,CAAK,MAAA,GAAS,IAAIC,+BAAA,CAAc,EAAE,IAAA,EAAM,CAAA,EAAG,IAAA,CAAK,SAAS,CAAA,GAAA,EAAM,IAAA,CAAK,IAAI,CAAA,CAAA,EAAI,CAAA;AAAA,EAC9E;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAAY,MAAA,EAAuB;AACjC,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AAEd,IAAA,IAAI,IAAA,CAAK,SAAA,KAAcD,kCAAA,CAAiB,GAAA,EAAK;AAC3C,MAAA,IAAA,CAAK,MAAA,CAAO,MAAM,CAAA,0BAAA,EAA6B,IAAA,CAAK,SAAS,CAAA,QAAA,EAAW,IAAA,CAAK,IAAI,CAAA,CAAA,CAAG,CAAA;AAAA,IACtF;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,eAAe,SAAA,EAAsB;AACnC,IAAA,IAAA,CAAK,SAAA,GAAY,SAAA;AAEjB,IAAA,IAAI,IAAA,CAAK,SAAA,KAAcA,kCAAA,CAAiB,GAAA,EAAK;AAC3C,MAAA,IAAA,CAAK,MAAA,CAAO,MAAM,CAAA,6BAAA,EAAgC,IAAA,CAAK,SAAS,CAAA,QAAA,EAAW,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA,CAAA,CAAG,CAAA;AAAA,IACnG;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,cAAA,GAAiB;AACf,IAAA,OAAO,IAAA,CAAK,SAAA;AAAA,EACd;AAAA;AAAA;AAAA;AAAA,EAKA,IAAI,sBAAA,GAAyB;AAC3B,IAAA,OAAO,KAAK,SAAA,GACR;AAAA;AAAA,MAEE,MAAA,EAAQ,IAAA,CAAK,SAAA,CAAU,gBAAA,EAAiB;AAAA,MACxC,SAAA,EAAW,CAAC,CAAC,IAAA,CAAK,SAAA,CAAU;AAAA,KAC9B,GACA,MAAA;AAAA,EACN;AACF","file":"chunk-6VOPKVYH.cjs","sourcesContent":["import type { IMastraLogger } from './logger';\nimport { RegisteredLogger } from './logger/constants';\nimport { ConsoleLogger } from './logger/default-logger';\n\nimport type { Telemetry } from './telemetry';\n\nexport class MastraBase {\n component: RegisteredLogger = RegisteredLogger.LLM;\n protected logger: IMastraLogger;\n name?: string;\n telemetry?: Telemetry;\n\n constructor({ component, name }: { component?: RegisteredLogger; name?: string }) {\n this.component = component || RegisteredLogger.LLM;\n this.name = name;\n this.logger = new ConsoleLogger({ name: `${this.component} - ${this.name}` });\n }\n\n /**\n * Set the logger for the agent\n * @param logger\n */\n __setLogger(logger: IMastraLogger) {\n this.logger = logger;\n\n if (this.component !== RegisteredLogger.LLM) {\n this.logger.debug(`Logger updated [component=${this.component}] [name=${this.name}]`);\n }\n }\n\n /**\n * Set the telemetry for the\n * @param telemetry\n */\n __setTelemetry(telemetry: Telemetry) {\n this.telemetry = telemetry;\n\n if (this.component !== RegisteredLogger.LLM) {\n this.logger.debug(`Telemetry updated [component=${this.component}] [name=${this.telemetry.name}]`);\n }\n }\n\n /**\n * Get the telemetry on the vector\n * @returns telemetry\n */\n __getTelemetry() {\n return this.telemetry;\n }\n\n /* \n get experimental_telemetry config\n */\n get experimental_telemetry() {\n return this.telemetry\n ? {\n // tracer: this.telemetry.tracer,\n tracer: this.telemetry.getBaggageTracer(),\n isEnabled: !!this.telemetry.tracer,\n }\n : undefined;\n }\n}\n\nexport * from './types';\n"]}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/vector/filter/base.ts
|
|
4
|
+
var BaseFilterTranslator = class _BaseFilterTranslator {
|
|
5
|
+
/**
|
|
6
|
+
* Operator type checks
|
|
7
|
+
*/
|
|
8
|
+
isOperator(key) {
|
|
9
|
+
return key.startsWith("$");
|
|
10
|
+
}
|
|
11
|
+
static BASIC_OPERATORS = ["$eq", "$ne"];
|
|
12
|
+
static NUMERIC_OPERATORS = ["$gt", "$gte", "$lt", "$lte"];
|
|
13
|
+
static ARRAY_OPERATORS = ["$in", "$nin", "$all", "$elemMatch"];
|
|
14
|
+
static LOGICAL_OPERATORS = ["$and", "$or", "$not", "$nor"];
|
|
15
|
+
static ELEMENT_OPERATORS = ["$exists"];
|
|
16
|
+
static REGEX_OPERATORS = ["$regex", "$options"];
|
|
17
|
+
static DEFAULT_OPERATORS = {
|
|
18
|
+
logical: _BaseFilterTranslator.LOGICAL_OPERATORS,
|
|
19
|
+
basic: _BaseFilterTranslator.BASIC_OPERATORS,
|
|
20
|
+
numeric: _BaseFilterTranslator.NUMERIC_OPERATORS,
|
|
21
|
+
array: _BaseFilterTranslator.ARRAY_OPERATORS,
|
|
22
|
+
element: _BaseFilterTranslator.ELEMENT_OPERATORS,
|
|
23
|
+
regex: _BaseFilterTranslator.REGEX_OPERATORS
|
|
24
|
+
};
|
|
25
|
+
isLogicalOperator(key) {
|
|
26
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.logical.includes(key);
|
|
27
|
+
}
|
|
28
|
+
isBasicOperator(key) {
|
|
29
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.basic.includes(key);
|
|
30
|
+
}
|
|
31
|
+
isNumericOperator(key) {
|
|
32
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.numeric.includes(key);
|
|
33
|
+
}
|
|
34
|
+
isArrayOperator(key) {
|
|
35
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.array.includes(key);
|
|
36
|
+
}
|
|
37
|
+
isElementOperator(key) {
|
|
38
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.element.includes(key);
|
|
39
|
+
}
|
|
40
|
+
isRegexOperator(key) {
|
|
41
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS.regex.includes(key);
|
|
42
|
+
}
|
|
43
|
+
isFieldOperator(key) {
|
|
44
|
+
return this.isOperator(key) && !this.isLogicalOperator(key);
|
|
45
|
+
}
|
|
46
|
+
isCustomOperator(key) {
|
|
47
|
+
const support = this.getSupportedOperators();
|
|
48
|
+
return support.custom?.includes(key) ?? false;
|
|
49
|
+
}
|
|
50
|
+
getSupportedOperators() {
|
|
51
|
+
return _BaseFilterTranslator.DEFAULT_OPERATORS;
|
|
52
|
+
}
|
|
53
|
+
isValidOperator(key) {
|
|
54
|
+
const support = this.getSupportedOperators();
|
|
55
|
+
const allSupported = Object.values(support).flat();
|
|
56
|
+
return allSupported.includes(key);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Value normalization for comparison operators
|
|
60
|
+
*/
|
|
61
|
+
normalizeComparisonValue(value) {
|
|
62
|
+
if (value instanceof Date) {
|
|
63
|
+
return value.toISOString();
|
|
64
|
+
}
|
|
65
|
+
if (typeof value === "number" && Object.is(value, -0)) {
|
|
66
|
+
return 0;
|
|
67
|
+
}
|
|
68
|
+
return value;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Helper method to simulate $all operator using $and + $eq when needed.
|
|
72
|
+
* Some vector stores don't support $all natively.
|
|
73
|
+
*/
|
|
74
|
+
simulateAllOperator(field, values) {
|
|
75
|
+
return {
|
|
76
|
+
$and: values.map((value) => ({
|
|
77
|
+
[field]: { $in: [this.normalizeComparisonValue(value)] }
|
|
78
|
+
}))
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Utility functions for type checking
|
|
83
|
+
*/
|
|
84
|
+
isPrimitive(value) {
|
|
85
|
+
return value === null || value === void 0 || typeof value === "string" || typeof value === "number" || typeof value === "boolean";
|
|
86
|
+
}
|
|
87
|
+
isRegex(value) {
|
|
88
|
+
return value instanceof RegExp;
|
|
89
|
+
}
|
|
90
|
+
isEmpty(obj) {
|
|
91
|
+
return obj === null || obj === void 0 || typeof obj === "object" && Object.keys(obj).length === 0;
|
|
92
|
+
}
|
|
93
|
+
static ErrorMessages = {
|
|
94
|
+
UNSUPPORTED_OPERATOR: (op) => `Unsupported operator: ${op}`,
|
|
95
|
+
INVALID_LOGICAL_OPERATOR_LOCATION: (op, path) => `Logical operator ${op} cannot be used at field level: ${path}`,
|
|
96
|
+
NOT_REQUIRES_OBJECT: `$not operator requires an object`,
|
|
97
|
+
NOT_CANNOT_BE_EMPTY: `$not operator cannot be empty`,
|
|
98
|
+
INVALID_LOGICAL_OPERATOR_CONTENT: (path) => `Logical operators must contain field conditions, not direct operators: ${path}`,
|
|
99
|
+
INVALID_TOP_LEVEL_OPERATOR: (op) => `Invalid top-level operator: ${op}`,
|
|
100
|
+
ELEM_MATCH_REQUIRES_OBJECT: `$elemMatch requires an object with conditions`
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Helper to handle array value normalization consistently
|
|
104
|
+
*/
|
|
105
|
+
normalizeArrayValues(values) {
|
|
106
|
+
return values.map((value) => this.normalizeComparisonValue(value));
|
|
107
|
+
}
|
|
108
|
+
validateFilter(filter) {
|
|
109
|
+
const validation = this.validateFilterSupport(filter);
|
|
110
|
+
if (!validation.supported) {
|
|
111
|
+
throw new Error(validation.messages.join(", "));
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Validates if a filter structure is supported by the specific vector DB
|
|
116
|
+
* and returns detailed validation information.
|
|
117
|
+
*/
|
|
118
|
+
validateFilterSupport(node, path = "") {
|
|
119
|
+
const messages = [];
|
|
120
|
+
if (this.isPrimitive(node) || this.isEmpty(node)) {
|
|
121
|
+
return { supported: true, messages: [] };
|
|
122
|
+
}
|
|
123
|
+
if (Array.isArray(node)) {
|
|
124
|
+
const arrayResults = node.map((item) => this.validateFilterSupport(item, path));
|
|
125
|
+
const arrayMessages = arrayResults.flatMap((r) => r.messages);
|
|
126
|
+
return {
|
|
127
|
+
supported: arrayResults.every((r) => r.supported),
|
|
128
|
+
messages: arrayMessages
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
const nodeObj = node;
|
|
132
|
+
let isSupported = true;
|
|
133
|
+
for (const [key, value] of Object.entries(nodeObj)) {
|
|
134
|
+
const newPath = path ? `${path}.${key}` : key;
|
|
135
|
+
if (this.isOperator(key)) {
|
|
136
|
+
if (!this.isValidOperator(key)) {
|
|
137
|
+
isSupported = false;
|
|
138
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.UNSUPPORTED_OPERATOR(key));
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
if (!path && !this.isLogicalOperator(key)) {
|
|
142
|
+
isSupported = false;
|
|
143
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.INVALID_TOP_LEVEL_OPERATOR(key));
|
|
144
|
+
continue;
|
|
145
|
+
}
|
|
146
|
+
if (key === "$elemMatch" && (typeof value !== "object" || Array.isArray(value))) {
|
|
147
|
+
isSupported = false;
|
|
148
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.ELEM_MATCH_REQUIRES_OBJECT);
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
if (this.isLogicalOperator(key)) {
|
|
152
|
+
if (key === "$not") {
|
|
153
|
+
if (Array.isArray(value) || typeof value !== "object") {
|
|
154
|
+
isSupported = false;
|
|
155
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.NOT_REQUIRES_OBJECT);
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
if (this.isEmpty(value)) {
|
|
159
|
+
isSupported = false;
|
|
160
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.NOT_CANNOT_BE_EMPTY);
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
163
|
+
continue;
|
|
164
|
+
}
|
|
165
|
+
if (path && !this.isLogicalOperator(path.split(".").pop())) {
|
|
166
|
+
isSupported = false;
|
|
167
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.INVALID_LOGICAL_OPERATOR_LOCATION(key, newPath));
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
170
|
+
if (Array.isArray(value)) {
|
|
171
|
+
const hasDirectOperators = value.some(
|
|
172
|
+
(item) => typeof item === "object" && Object.keys(item).length === 1 && this.isFieldOperator(Object.keys(item)[0])
|
|
173
|
+
);
|
|
174
|
+
if (hasDirectOperators) {
|
|
175
|
+
isSupported = false;
|
|
176
|
+
messages.push(_BaseFilterTranslator.ErrorMessages.INVALID_LOGICAL_OPERATOR_CONTENT(newPath));
|
|
177
|
+
continue;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
const nestedValidation = this.validateFilterSupport(value, newPath);
|
|
183
|
+
if (!nestedValidation.supported) {
|
|
184
|
+
isSupported = false;
|
|
185
|
+
messages.push(...nestedValidation.messages);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return { supported: isSupported, messages };
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
exports.BaseFilterTranslator = BaseFilterTranslator;
|
|
193
|
+
//# sourceMappingURL=chunk-6XCINXZ7.cjs.map
|
|
194
|
+
//# sourceMappingURL=chunk-6XCINXZ7.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/vector/filter/base.ts"],"names":[],"mappings":"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","file":"chunk-6XCINXZ7.cjs","sourcesContent":["type BasicOperator =\n | '$eq' // Matches values equal to specified value\n | '$ne'; // Matches values not equal\n\ntype NumericOperator =\n | '$gt' // Greater than\n | '$gte' // Greater than or equal\n | '$lt' // Less than\n | '$lte'; // Less than or equal\n\ntype LogicalOperator =\n | '$and' // Joins query clauses with logical AND\n | '$not' // Inverts the effect of a query expression\n | '$nor' // Joins query clauses with logical NOR\n | '$or'; // Joins query clauses with logical OR\n\ntype ArrayOperator =\n | '$all' // Matches arrays containing all elements\n | '$in' // Matches any value in array\n | '$nin' // Matches none of the values in array\n | '$elemMatch'; // Matches documents that contain an array field with at least one element that matches all the specified query criteria\n\ntype ElementOperator = '$exists'; // Matches documents that have the specified field\n\ntype RegexOperator = '$regex' | '$options'; // Matches documents that have the specified field\n\n// Union of all supported operators\ntype QueryOperator =\n | BasicOperator\n | NumericOperator\n | LogicalOperator\n | ArrayOperator\n | ElementOperator\n | RegexOperator;\n\ntype EmptyObject = Record<string, never>;\n\ntype FilterValue = string | number | boolean | Date | null | undefined | EmptyObject;\n\n// Logical operators are handled at the top level as objects, not as values here\n// $and, $or, $nor, $not are handled in LogicalCondition\ntype OperatorValueMap<Op extends string = string, ValueMap extends Record<string, any> = any> = {\n $eq: FilterValue;\n $ne: FilterValue;\n $gt: number | string | Date;\n $gte: number | string | Date;\n $lt: number | string | Date;\n $lte: number | string | Date;\n $all: FilterValue[];\n $in: FilterValue[];\n $nin: FilterValue[];\n $elemMatch: Record<string, unknown>;\n $exists: boolean;\n $regex: string | RegExp;\n $options: string;\n $not: OperatorCondition<Op, ValueMap> | RegExp;\n};\n\ntype LogicalOperatorValueMap = {\n $and: 'array';\n $or: 'array';\n $nor: 'array';\n $not: 'object';\n};\n\ntype BlacklistedRootOperators =\n | '$eq'\n | '$ne'\n | '$gt'\n | '$gte'\n | '$lt'\n | '$lte'\n | '$in'\n | '$nin'\n | '$all'\n | '$exists'\n | '$regex'\n | '$options'\n | '$elemMatch';\n\ntype VectorFieldValue = FilterValue | FilterValue[];\n\n// Vector filter parameterized by operator set\ntype VectorFilter<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n LogicalValueMap extends Record<string, any> = LogicalOperatorValueMap,\n Blacklisted extends string = BlacklistedRootOperators,\n FieldValue = VectorFieldValue,\n> = FilterCondition<Op, ValueMap, LogicalValueMap, Blacklisted, FieldValue> | null | undefined;\n\ntype FilterCondition<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n LogicalValueMap extends Record<string, any> = LogicalOperatorValueMap,\n Blacklisted extends string = BlacklistedRootOperators,\n FieldValue = VectorFieldValue,\n> = (FieldCondition<Op, ValueMap, FieldValue> | LogicalCondition<Op, ValueMap, LogicalValueMap>) &\n ForbiddenRootOperators<Blacklisted>;\n\n// Field condition can be a value or an operator condition\ntype FieldCondition<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n FieldValue = VectorFieldValue,\n> = {\n [field: string]: OperatorCondition<Op, ValueMap> | FieldValue;\n};\n\ntype ForbiddenRootOperators<Blacklisted extends string> = {\n [K in Blacklisted]?: never;\n};\n\n// Logical conditions\ntype LogicalCondition<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n LogicalValueMap extends Record<string, any> = LogicalOperatorValueMap,\n> = {\n [K in keyof LogicalValueMap]: LogicalValueMap[K] extends 'array'\n ? {\n [P in K]: Array<LogicalBranch<Op, ValueMap, LogicalValueMap>>;\n }\n : {\n [P in K]: LogicalBranch<Op, ValueMap, LogicalValueMap>;\n };\n}[keyof LogicalValueMap];\n\ntype LogicalBranch<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n LogicalValueMap extends Record<string, any> = LogicalOperatorValueMap,\n> = FieldCondition<Op, ValueMap> | LogicalCondition<Op, ValueMap, LogicalValueMap>;\n\n// Base operator condition, parameterized by operator set\ntype OperatorCondition<\n Op extends keyof ValueMap = keyof OperatorValueMap,\n ValueMap extends Record<string, any> = OperatorValueMap,\n> = {\n [K in Exclude<Op, '$and' | '$or' | '$nor'>]?: ValueMap[K];\n};\n\ntype OperatorSupport = {\n logical?: LogicalOperator[];\n array?: ArrayOperator[];\n basic?: BasicOperator[];\n numeric?: NumericOperator[];\n element?: ElementOperator[];\n regex?: RegexOperator[];\n custom?: string[];\n};\n\n// Base abstract class for filter translators\nabstract class BaseFilterTranslator<Filter = VectorFilter, Result = Filter> {\n abstract translate(filter: Filter): Result;\n\n /**\n * Operator type checks\n */\n protected isOperator(key: string): key is QueryOperator {\n return key.startsWith('$');\n }\n\n protected static readonly BASIC_OPERATORS: BasicOperator[] = ['$eq', '$ne'];\n protected static readonly NUMERIC_OPERATORS: NumericOperator[] = ['$gt', '$gte', '$lt', '$lte'];\n protected static readonly ARRAY_OPERATORS: ArrayOperator[] = ['$in', '$nin', '$all', '$elemMatch'];\n protected static readonly LOGICAL_OPERATORS: LogicalOperator[] = ['$and', '$or', '$not', '$nor'];\n protected static readonly ELEMENT_OPERATORS: ElementOperator[] = ['$exists'];\n protected static readonly REGEX_OPERATORS: RegexOperator[] = ['$regex', '$options'];\n\n public static readonly DEFAULT_OPERATORS = {\n logical: BaseFilterTranslator.LOGICAL_OPERATORS,\n basic: BaseFilterTranslator.BASIC_OPERATORS,\n numeric: BaseFilterTranslator.NUMERIC_OPERATORS,\n array: BaseFilterTranslator.ARRAY_OPERATORS,\n element: BaseFilterTranslator.ELEMENT_OPERATORS,\n regex: BaseFilterTranslator.REGEX_OPERATORS,\n };\n\n protected isLogicalOperator(key: string): key is LogicalOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.logical.includes(key as LogicalOperator);\n }\n\n protected isBasicOperator(key: string): key is BasicOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.basic.includes(key as BasicOperator);\n }\n\n protected isNumericOperator(key: string): key is NumericOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.numeric.includes(key as NumericOperator);\n }\n\n protected isArrayOperator(key: string): key is ArrayOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.array.includes(key as ArrayOperator);\n }\n\n protected isElementOperator(key: string): key is ElementOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.element.includes(key as ElementOperator);\n }\n\n protected isRegexOperator(key: string): key is RegexOperator {\n return BaseFilterTranslator.DEFAULT_OPERATORS.regex.includes(key as RegexOperator);\n }\n\n protected isFieldOperator(key: string): key is QueryOperator {\n return this.isOperator(key) && !this.isLogicalOperator(key);\n }\n\n protected isCustomOperator(key: string): boolean {\n const support = this.getSupportedOperators();\n return support.custom?.includes(key) ?? false;\n }\n\n protected getSupportedOperators(): OperatorSupport {\n return BaseFilterTranslator.DEFAULT_OPERATORS;\n }\n\n protected isValidOperator(key: string): boolean {\n const support = this.getSupportedOperators();\n const allSupported = Object.values(support).flat();\n return allSupported.includes(key as QueryOperator);\n }\n\n /**\n * Value normalization for comparison operators\n */\n protected normalizeComparisonValue(value: any): any {\n if (value instanceof Date) {\n return value.toISOString();\n }\n\n // Handle -0 case\n if (typeof value === 'number' && Object.is(value, -0)) {\n return 0;\n }\n return value;\n }\n\n /**\n * Helper method to simulate $all operator using $and + $eq when needed.\n * Some vector stores don't support $all natively.\n */\n protected simulateAllOperator(field: string, values: any[]): VectorFilter<keyof OperatorValueMap, OperatorValueMap> {\n return {\n $and: values.map(value => ({\n [field]: { $in: [this.normalizeComparisonValue(value)] },\n })),\n };\n }\n\n /**\n * Utility functions for type checking\n */\n protected isPrimitive(value: any): boolean {\n return (\n value === null ||\n value === undefined ||\n typeof value === 'string' ||\n typeof value === 'number' ||\n typeof value === 'boolean'\n );\n }\n\n protected isRegex(value: any): boolean {\n return value instanceof RegExp;\n }\n\n protected isEmpty(obj: any): boolean {\n return obj === null || obj === undefined || (typeof obj === 'object' && Object.keys(obj).length === 0);\n }\n\n protected static readonly ErrorMessages = {\n UNSUPPORTED_OPERATOR: (op: string) => `Unsupported operator: ${op}`,\n INVALID_LOGICAL_OPERATOR_LOCATION: (op: string, path: string) =>\n `Logical operator ${op} cannot be used at field level: ${path}`,\n NOT_REQUIRES_OBJECT: `$not operator requires an object`,\n NOT_CANNOT_BE_EMPTY: `$not operator cannot be empty`,\n INVALID_LOGICAL_OPERATOR_CONTENT: (path: string) =>\n `Logical operators must contain field conditions, not direct operators: ${path}`,\n INVALID_TOP_LEVEL_OPERATOR: (op: string) => `Invalid top-level operator: ${op}`,\n ELEM_MATCH_REQUIRES_OBJECT: `$elemMatch requires an object with conditions`,\n } as const;\n\n /**\n * Helper to handle array value normalization consistently\n */\n protected normalizeArrayValues(values: any[]): any[] {\n return values.map(value => this.normalizeComparisonValue(value));\n }\n\n protected validateFilter(filter: Filter): void {\n const validation = this.validateFilterSupport(filter);\n if (!validation.supported) {\n throw new Error(validation.messages.join(', '));\n }\n }\n\n /**\n * Validates if a filter structure is supported by the specific vector DB\n * and returns detailed validation information.\n */\n private validateFilterSupport(\n node: Filter,\n path: string = '',\n ): {\n supported: boolean;\n messages: string[];\n } {\n const messages: string[] = [];\n\n // Handle primitives and empty values\n if (this.isPrimitive(node) || this.isEmpty(node)) {\n return { supported: true, messages: [] };\n }\n\n // Handle arrays\n if (Array.isArray(node)) {\n const arrayResults = node.map(item => this.validateFilterSupport(item, path));\n const arrayMessages = arrayResults.flatMap(r => r.messages);\n return {\n supported: arrayResults.every(r => r.supported),\n messages: arrayMessages,\n };\n }\n\n // Process object entries\n const nodeObj = node as Record<string, any>;\n let isSupported = true;\n\n for (const [key, value] of Object.entries(nodeObj)) {\n const newPath = path ? `${path}.${key}` : key;\n // Check if the key is an operator\n if (this.isOperator(key)) {\n if (!this.isValidOperator(key)) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.UNSUPPORTED_OPERATOR(key));\n continue;\n }\n\n // Add check for non-logical operators at top level\n if (!path && !this.isLogicalOperator(key)) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.INVALID_TOP_LEVEL_OPERATOR(key));\n continue;\n }\n\n // In the translate method or wherever operators are handled\n if (key === '$elemMatch' && (typeof value !== 'object' || Array.isArray(value))) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.ELEM_MATCH_REQUIRES_OBJECT);\n continue;\n }\n\n // Special validation for logical operators\n if (this.isLogicalOperator(key)) {\n if (key === '$not') {\n if (Array.isArray(value) || typeof value !== 'object') {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.NOT_REQUIRES_OBJECT);\n continue;\n }\n if (this.isEmpty(value)) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.NOT_CANNOT_BE_EMPTY);\n continue;\n }\n // $not can be used at field level or top level\n continue;\n }\n // Other logical operators can only be at top level or nested in logical operators\n if (path && !this.isLogicalOperator(path.split('.').pop()!)) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.INVALID_LOGICAL_OPERATOR_LOCATION(key, newPath));\n continue;\n }\n\n if (Array.isArray(value)) {\n const hasDirectOperators = value.some(\n item =>\n typeof item === 'object' &&\n Object.keys(item).length === 1 &&\n this.isFieldOperator(Object.keys(item)[0]!),\n );\n\n if (hasDirectOperators) {\n isSupported = false;\n messages.push(BaseFilterTranslator.ErrorMessages.INVALID_LOGICAL_OPERATOR_CONTENT(newPath));\n continue;\n }\n }\n }\n }\n\n // Recursively validate nested value\n const nestedValidation = this.validateFilterSupport(value, newPath);\n if (!nestedValidation.supported) {\n isSupported = false;\n messages.push(...nestedValidation.messages);\n }\n }\n\n return { supported: isSupported, messages };\n }\n}\n\n// Export types and base class\nexport {\n type QueryOperator,\n type BasicOperator,\n type NumericOperator,\n type LogicalOperator,\n type ArrayOperator,\n type RegexOperator,\n type ElementOperator,\n type VectorFilter,\n type FilterValue,\n type VectorFieldValue,\n type FieldCondition,\n type OperatorCondition,\n type OperatorSupport,\n type OperatorValueMap,\n type LogicalOperatorValueMap,\n type BlacklistedRootOperators,\n BaseFilterTranslator,\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-7J5DS33F.js"}
|