@mastra/core 0.15.3-alpha.3 → 0.15.3-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/agent.types.d.ts +9 -4
- package/dist/agent/agent.types.d.ts.map +1 -1
- package/dist/agent/index.cjs +11 -11
- package/dist/agent/index.d.ts +33 -5
- package/dist/agent/index.d.ts.map +1 -1
- package/dist/agent/index.js +2 -2
- package/dist/agent/input-processor/index.cjs +6 -6
- package/dist/agent/input-processor/index.js +1 -1
- package/dist/agent/types.d.ts +11 -6
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/ai-tracing/context.d.ts.map +1 -1
- package/dist/ai-tracing/default.d.ts.map +1 -1
- package/dist/ai-tracing/index.cjs +43 -31
- package/dist/ai-tracing/index.js +1 -1
- package/dist/ai-tracing/no-op.d.ts +0 -1
- package/dist/ai-tracing/no-op.d.ts.map +1 -1
- package/dist/ai-tracing/types.d.ts +0 -2
- package/dist/ai-tracing/types.d.ts.map +1 -1
- package/dist/ai-tracing/utils.d.ts +44 -8
- package/dist/ai-tracing/utils.d.ts.map +1 -1
- package/dist/{chunk-TWNFR6MQ.cjs → chunk-5CJDO3UO.cjs} +8 -8
- package/dist/{chunk-TWNFR6MQ.cjs.map → chunk-5CJDO3UO.cjs.map} +1 -1
- package/dist/{chunk-ZAJTIZZF.cjs → chunk-ABRPHTOG.cjs} +2 -2
- package/dist/{chunk-ZAJTIZZF.cjs.map → chunk-ABRPHTOG.cjs.map} +1 -1
- package/dist/{chunk-GOG77M6R.js → chunk-BJGHUKKM.js} +2 -2
- package/dist/{chunk-GOG77M6R.js.map → chunk-BJGHUKKM.js.map} +1 -1
- package/dist/{chunk-5TFCIXWE.js → chunk-CKM2ESZF.js} +44 -21
- package/dist/chunk-CKM2ESZF.js.map +1 -0
- package/dist/{chunk-AYFN43FB.cjs → chunk-DZADAEAF.cjs} +68 -22
- package/dist/chunk-DZADAEAF.cjs.map +1 -0
- package/dist/{chunk-QHEB6ZLO.cjs → chunk-F2CAC2R2.cjs} +47 -24
- package/dist/chunk-F2CAC2R2.cjs.map +1 -0
- package/dist/{chunk-O7IQL4DX.js → chunk-F4SQXAXR.js} +7 -7
- package/dist/{chunk-O7IQL4DX.js.map → chunk-F4SQXAXR.js.map} +1 -1
- package/dist/{chunk-HXEHQLBD.cjs → chunk-F6XWBVVG.cjs} +4 -4
- package/dist/{chunk-HXEHQLBD.cjs.map → chunk-F6XWBVVG.cjs.map} +1 -1
- package/dist/{chunk-UGN2UU3K.cjs → chunk-FQRDHVZC.cjs} +4 -4
- package/dist/{chunk-UGN2UU3K.cjs.map → chunk-FQRDHVZC.cjs.map} +1 -1
- package/dist/{chunk-4DKPMUAC.cjs → chunk-I7OAONIW.cjs} +259 -177
- package/dist/chunk-I7OAONIW.cjs.map +1 -0
- package/dist/{chunk-EMAAAVRA.js → chunk-IODUKRQP.js} +3 -3
- package/dist/{chunk-EMAAAVRA.js.map → chunk-IODUKRQP.js.map} +1 -1
- package/dist/{chunk-DJKIK6ZB.cjs → chunk-KUNWELBC.cjs} +422 -250
- package/dist/chunk-KUNWELBC.cjs.map +1 -0
- package/dist/{chunk-WOTBMZCN.js → chunk-LOYT3WUA.js} +255 -176
- package/dist/chunk-LOYT3WUA.js.map +1 -0
- package/dist/{chunk-24TFSB6Z.cjs → chunk-LVGGMWSE.cjs} +8 -8
- package/dist/chunk-LVGGMWSE.cjs.map +1 -0
- package/dist/{chunk-TQRLZH64.js → chunk-OFPVAPUH.js} +4 -4
- package/dist/{chunk-TQRLZH64.js.map → chunk-OFPVAPUH.js.map} +1 -1
- package/dist/{chunk-BGOXFBFK.js → chunk-P2IJ74UW.js} +391 -219
- package/dist/chunk-P2IJ74UW.js.map +1 -0
- package/dist/{chunk-YTVX52NU.cjs → chunk-VVTB47UG.cjs} +6 -6
- package/dist/{chunk-YTVX52NU.cjs.map → chunk-VVTB47UG.cjs.map} +1 -1
- package/dist/{chunk-D2GH2HAK.cjs → chunk-W5CF7DLB.cjs} +9 -9
- package/dist/{chunk-D2GH2HAK.cjs.map → chunk-W5CF7DLB.cjs.map} +1 -1
- package/dist/{chunk-ZC64CG7J.js → chunk-WWQ3QRPF.js} +4 -4
- package/dist/chunk-WWQ3QRPF.js.map +1 -0
- package/dist/{chunk-WUQSFK7W.js → chunk-XPFWOBV4.js} +4 -4
- package/dist/{chunk-WUQSFK7W.js.map → chunk-XPFWOBV4.js.map} +1 -1
- package/dist/{chunk-MEROMP3Z.js → chunk-YAWYQH3N.js} +3 -3
- package/dist/{chunk-MEROMP3Z.js.map → chunk-YAWYQH3N.js.map} +1 -1
- package/dist/{chunk-APVV75XG.js → chunk-YVIYEC6R.js} +62 -16
- package/dist/chunk-YVIYEC6R.js.map +1 -0
- package/dist/index.cjs +44 -44
- package/dist/index.js +10 -10
- package/dist/integration/index.cjs +3 -3
- package/dist/integration/index.js +1 -1
- package/dist/llm/index.d.ts +2 -2
- package/dist/llm/index.d.ts.map +1 -1
- package/dist/llm/model/base.types.d.ts +2 -2
- package/dist/llm/model/base.types.d.ts.map +1 -1
- package/dist/llm/model/model.d.ts +4 -4
- package/dist/llm/model/model.d.ts.map +1 -1
- package/dist/llm/model/model.loop.d.ts +1 -1
- package/dist/llm/model/model.loop.d.ts.map +1 -1
- package/dist/llm/model/model.loop.types.d.ts +2 -0
- package/dist/llm/model/model.loop.types.d.ts.map +1 -1
- package/dist/loop/index.cjs +2 -2
- package/dist/loop/index.js +1 -1
- package/dist/loop/loop.d.ts +1 -1
- package/dist/loop/loop.d.ts.map +1 -1
- package/dist/loop/types.d.ts +2 -0
- package/dist/loop/types.d.ts.map +1 -1
- package/dist/loop/workflow/stream.d.ts +1 -1
- package/dist/loop/workflow/stream.d.ts.map +1 -1
- package/dist/mastra/hooks.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.d.ts +8 -3
- package/dist/mastra/index.d.ts.map +1 -1
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +4 -4
- package/dist/memory/index.js +1 -1
- package/dist/network/index.cjs +4 -4
- package/dist/network/index.js +2 -2
- package/dist/network/vNext/index.cjs +14 -14
- package/dist/network/vNext/index.js +2 -2
- package/dist/processors/index.cjs +13 -11
- package/dist/processors/index.cjs.map +1 -1
- package/dist/processors/index.d.ts +4 -0
- package/dist/processors/index.d.ts.map +1 -1
- package/dist/processors/index.js +7 -5
- package/dist/processors/index.js.map +1 -1
- package/dist/processors/processors/moderation.d.ts +4 -0
- package/dist/processors/processors/moderation.d.ts.map +1 -1
- package/dist/processors/processors/pii-detector.d.ts +3 -0
- package/dist/processors/processors/pii-detector.d.ts.map +1 -1
- package/dist/processors/processors/prompt-injection-detector.d.ts +2 -0
- package/dist/processors/processors/prompt-injection-detector.d.ts.map +1 -1
- package/dist/processors/processors/system-prompt-scrubber.d.ts +2 -0
- package/dist/processors/processors/system-prompt-scrubber.d.ts.map +1 -1
- package/dist/processors/runner.d.ts +5 -4
- package/dist/processors/runner.d.ts.map +1 -1
- package/dist/relevance/index.cjs +4 -4
- package/dist/relevance/index.js +1 -1
- package/dist/scores/base.d.ts +2 -0
- package/dist/scores/base.d.ts.map +1 -1
- package/dist/scores/hooks.d.ts +3 -1
- package/dist/scores/hooks.d.ts.map +1 -1
- package/dist/scores/index.cjs +27 -18
- package/dist/scores/index.cjs.map +1 -1
- package/dist/scores/index.js +23 -14
- package/dist/scores/index.js.map +1 -1
- package/dist/scores/run-experiment/index.d.ts +2 -0
- package/dist/scores/run-experiment/index.d.ts.map +1 -1
- package/dist/scores/types.d.ts +3 -0
- package/dist/scores/types.d.ts.map +1 -1
- package/dist/storage/index.cjs +3 -3
- package/dist/storage/index.js +1 -1
- package/dist/stream/index.cjs +3 -3
- package/dist/stream/index.js +1 -1
- package/dist/test-utils/llm-mock.cjs +2 -2
- package/dist/test-utils/llm-mock.js +1 -1
- package/dist/tools/index.cjs +4 -4
- package/dist/tools/index.js +1 -1
- package/dist/tools/is-vercel-tool.cjs +2 -2
- package/dist/tools/is-vercel-tool.js +1 -1
- package/dist/tools/tool.d.ts +3 -1
- package/dist/tools/tool.d.ts.map +1 -1
- package/dist/utils.cjs +17 -17
- package/dist/utils.d.ts +3 -3
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +1 -1
- package/dist/workflows/default.d.ts +13 -3
- package/dist/workflows/default.d.ts.map +1 -1
- package/dist/workflows/evented/index.cjs +10 -10
- package/dist/workflows/evented/index.js +1 -1
- package/dist/workflows/execution-engine.d.ts +2 -2
- package/dist/workflows/execution-engine.d.ts.map +1 -1
- package/dist/workflows/index.cjs +10 -10
- package/dist/workflows/index.js +1 -1
- package/dist/workflows/legacy/index.cjs +22 -22
- package/dist/workflows/legacy/index.js +1 -1
- package/dist/workflows/workflow.d.ts +8 -8
- package/dist/workflows/workflow.d.ts.map +1 -1
- package/package.json +6 -6
- package/dist/chunk-24TFSB6Z.cjs.map +0 -1
- package/dist/chunk-4DKPMUAC.cjs.map +0 -1
- package/dist/chunk-5TFCIXWE.js.map +0 -1
- package/dist/chunk-APVV75XG.js.map +0 -1
- package/dist/chunk-AYFN43FB.cjs.map +0 -1
- package/dist/chunk-BGOXFBFK.js.map +0 -1
- package/dist/chunk-DJKIK6ZB.cjs.map +0 -1
- package/dist/chunk-QHEB6ZLO.cjs.map +0 -1
- package/dist/chunk-WOTBMZCN.js.map +0 -1
- package/dist/chunk-ZC64CG7J.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkABRPHTOG_cjs = require('./chunk-ABRPHTOG.cjs');
|
|
4
4
|
var zod = require('zod');
|
|
5
5
|
|
|
6
6
|
// src/integration/integration.ts
|
|
@@ -68,7 +68,7 @@ var OpenAPIToolset = class {
|
|
|
68
68
|
const tools = Object.keys(clientMethods).reduce((acc, key) => {
|
|
69
69
|
const comment = documentations[key]?.comment;
|
|
70
70
|
const fallbackComment = `Execute ${key}`;
|
|
71
|
-
const tool =
|
|
71
|
+
const tool = chunkABRPHTOG_cjs.createTool({
|
|
72
72
|
id: key,
|
|
73
73
|
inputSchema: schemas[key] || zod.z.object({}),
|
|
74
74
|
description: comment || fallbackComment,
|
|
@@ -89,5 +89,5 @@ var OpenAPIToolset = class {
|
|
|
89
89
|
|
|
90
90
|
exports.Integration = Integration;
|
|
91
91
|
exports.OpenAPIToolset = OpenAPIToolset;
|
|
92
|
-
//# sourceMappingURL=chunk-
|
|
93
|
-
//# sourceMappingURL=chunk-
|
|
92
|
+
//# sourceMappingURL=chunk-F6XWBVVG.cjs.map
|
|
93
|
+
//# sourceMappingURL=chunk-F6XWBVVG.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/integration/integration.ts","../src/integration/openapi-toolset.ts"],"names":["createTool","z"],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/integration/integration.ts","../src/integration/openapi-toolset.ts"],"names":["createTool","z"],"mappings":";;;;;;AAGO,IAAM,cAAN,MAAwD;AAAA,EAC7D,IAAA,GAAe,aAAA;AAAA,EACP,SAAA;AAAA,EAER,WAAA,GAAc;AACZ,IAAA,IAAA,CAAK,YAAY,EAAC;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA,EAMA,gBAAA,CAAiB,MAAc,EAAA,EAAc;AAC3C,IAAA,IAAI,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA,EAAG;AACxB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,eAAA,EAAkB,IAAI,CAAA,oBAAA,CAAsB,CAAA;AAAA,IAC9D;AACA,IAAA,IAAA,CAAK,SAAA,CAAU,IAAI,CAAA,GAAI,EAAA;AAAA,EACzB;AAAA,EAEO,YAAA,CAAa,EAAE,UAAA,EAAW,EAAuD;AACtF,IAAA,IAAI,UAAA,EAAY;AACd,MAAA,OAAO,MAAA,CAAO,OAAA,CAAQ,IAAA,CAAK,SAAS,CAAA,CAAE,MAAA,CAAO,CAAC,GAAA,EAAK,CAAC,CAAA,EAAG,CAAC,CAAA,KAAM;AAC5D,QAAA,OAAO;AAAA,UACL,GAAG,GAAA;AAAA,UACH,CAAC,CAAC,GAAG;AAAA,YACH,MAAM,CAAA,CAAE;AAAA;AACV,SACF;AAAA,MACF,CAAA,EAAG,EAAE,CAAA;AAAA,IACP;AACA,IAAA,OAAO,IAAA,CAAK,SAAA;AAAA,EACd;AAAA;AAAA;AAAA;AAAA,EAKA,eAAe,OAAA,EAAkE;AAC/E,IAAA,MAAM,IAAI,MAAM,yBAAyB,CAAA;AAAA,EAC3C;AAAA,EAEA,MAAM,SAAS,OAAA,EAA2E;AACxF,IAAA,MAAM,IAAI,MAAM,yBAAyB,CAAA;AAAA,EAC3C;AAAA,EAEA,MAAM,YAAA,GAAmC;AACvC,IAAA,MAAM,IAAI,MAAM,wBAAwB,CAAA;AAAA,EAC1C;AACF;AC7CO,IAAe,iBAAf,MAA8B;AAAA,EAInC,QAAA,GAAmB,SAAA;AAAA,EAEnB,WAAA,GAAc;AAAA,EAAC;AAAA,EAEf,IAAc,WAAA,GAAmB;AAC/B,IAAA,OAAO,EAAC;AAAA,EACV;AAAA,EAEA,IAAc,kBAAA,GAAwE;AACpF,IAAA,OAAO,EAAC;AAAA,EACV;AAAA,EAEA,IAAc,UAAA,GAAkB;AAC9B,IAAA,OAAO,EAAC;AAAA,EACV;AAAA,EAEA,MAAM,YAAA,GAA6B;AACjC,IAAA,MAAM,IAAI,MAAM,qBAAqB,CAAA;AAAA,EACvC;AAAA,EAEU,yBAAA,GAA+B;AACvC,IAAA,MAAM,EAAE,MAAA,EAAQ,OAAA,EAAS,GAAG,aAAA,KAAkB,IAAA,CAAK,UAAA;AACnD,IAAA,MAAM,UAAU,IAAA,CAAK,WAAA;AACrB,IAAA,MAAM,iBAAiB,IAAA,CAAK,kBAAA;AAE5B,IAAA,MAAM,KAAA,GAAQ,OAAO,IAAA,CAAK,aAAa,EAAE,MAAA,CAAO,CAAC,KAAK,GAAA,KAAQ;AAC5D,MAAA,MAAM,OAAA,GAAU,cAAA,CAAe,GAAG,CAAA,EAAG,OAAA;AAErC,MAAA,MAAM,eAAA,GAAkB,WAAW,GAAG,CAAA,CAAA;AAEtC,MAAA,MAAM,OAAOA,4BAAA,CAAW;AAAA,QACtB,EAAA,EAAI,GAAA;AAAA,QACJ,aAAa,OAAA,CAAQ,GAAG,KAAKC,KAAA,CAAE,MAAA,CAAO,EAAE,CAAA;AAAA,QACxC,aAAa,OAAA,IAAW,eAAA;AAAA;AAAA,QAExB,OAAA,EAAS,OAAO,EAAE,OAAA,EAAQ,KAAM;AAC9B,UAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,YAAA,EAAa;AACvC,UAAA,MAAM,KAAA,GAAQ,OAAO,GAA0B,CAAA;AAC/C,UAAA,OAAQ,KAAA,CAAc;AAAA,YACpB,GAAI;AAAA,WACL,CAAA;AAAA,QACH;AAAA,OACD,CAAA;AAED,MAAA,OAAO,EAAE,GAAG,GAAA,EAAK,CAAC,GAAG,GAAG,IAAA,EAAK;AAAA,IAC/B,CAAA,EAAG,EAAE,CAAA;AAEL,IAAA,OAAO,KAAA;AAAA,EACT;AACF","file":"chunk-F6XWBVVG.cjs","sourcesContent":["import type { ToolAction } from '../tools';\nimport type { Workflow } from '../workflows';\n\nexport class Integration<ToolsParams = void, ApiClient = void> {\n name: string = 'Integration';\n private workflows: Record<string, Workflow>;\n\n constructor() {\n this.workflows = {};\n }\n\n /**\n * Workflows\n */\n\n registerWorkflow(name: string, fn: Workflow) {\n if (this.workflows[name]) {\n throw new Error(`Sync function \"${name}\" already registered`);\n }\n this.workflows[name] = fn;\n }\n\n public getWorkflows({ serialized }: { serialized?: boolean }): Record<string, Workflow> {\n if (serialized) {\n return Object.entries(this.workflows).reduce((acc, [k, v]) => {\n return {\n ...acc,\n [k]: {\n name: v.name,\n },\n };\n }, {});\n }\n return this.workflows;\n }\n\n /**\n * TOOLS\n */\n getStaticTools(_params?: ToolsParams): Record<string, ToolAction<any, any, any>> {\n throw new Error('Method not implemented.');\n }\n\n async getTools(_params?: ToolsParams): Promise<Record<string, ToolAction<any, any, any>>> {\n throw new Error('Method not implemented.');\n }\n\n async getApiClient(): Promise<ApiClient> {\n throw new Error('Method not implemented');\n }\n}\n","import { z } from 'zod';\n\nimport { createTool } from '../tools';\nimport type { ToolAction } from '../tools';\n\nexport abstract class OpenAPIToolset {\n abstract readonly name: string;\n abstract readonly tools: Record<string, ToolAction<any, any, any>>;\n\n authType: string = 'API_KEY';\n\n constructor() {}\n\n protected get toolSchemas(): any {\n return {};\n }\n\n protected get toolDocumentations(): Record<string, { comment: string; doc?: string }> {\n return {};\n }\n\n protected get baseClient(): any {\n return {};\n }\n\n async getApiClient(): Promise<any> {\n throw new Error('API not implemented');\n }\n\n protected _generateIntegrationTools<T>() {\n const { client: _client, ...clientMethods } = this.baseClient;\n const schemas = this.toolSchemas;\n const documentations = this.toolDocumentations;\n\n const tools = Object.keys(clientMethods).reduce((acc, key) => {\n const comment = documentations[key]?.comment;\n // const doc = documentations[key]?.doc;\n const fallbackComment = `Execute ${key}`;\n\n const tool = createTool({\n id: key,\n inputSchema: schemas[key] || z.object({}),\n description: comment || fallbackComment,\n // documentation: doc || fallbackComment,\n execute: async ({ context }) => {\n const client = await this.getApiClient();\n const value = client[key as keyof typeof client];\n return (value as any)({\n ...(context as any),\n });\n },\n });\n\n return { ...acc, [key]: tool };\n }, {});\n\n return tools as T;\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkKUNWELBC_cjs = require('./chunk-KUNWELBC.cjs');
|
|
4
4
|
|
|
5
5
|
// src/relevance/cohere/index.ts
|
|
6
6
|
var CohereRelevanceScorer = class {
|
|
@@ -54,7 +54,7 @@ Relevance score (0-1):`;
|
|
|
54
54
|
var MastraAgentRelevanceScorer = class {
|
|
55
55
|
agent;
|
|
56
56
|
constructor(name, model) {
|
|
57
|
-
this.agent = new
|
|
57
|
+
this.agent = new chunkKUNWELBC_cjs.Agent({
|
|
58
58
|
name: `Relevance Scorer ${name}`,
|
|
59
59
|
instructions: `You are a specialized agent for evaluating the relevance of text to queries.
|
|
60
60
|
Your task is to rate how well a text passage answers a given query.
|
|
@@ -87,5 +87,5 @@ Always return just the number, no explanation.`,
|
|
|
87
87
|
exports.CohereRelevanceScorer = CohereRelevanceScorer;
|
|
88
88
|
exports.MastraAgentRelevanceScorer = MastraAgentRelevanceScorer;
|
|
89
89
|
exports.createSimilarityPrompt = createSimilarityPrompt;
|
|
90
|
-
//# sourceMappingURL=chunk-
|
|
91
|
-
//# sourceMappingURL=chunk-
|
|
90
|
+
//# sourceMappingURL=chunk-FQRDHVZC.cjs.map
|
|
91
|
+
//# sourceMappingURL=chunk-FQRDHVZC.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/relevance/cohere/index.ts","../src/relevance/relevance-score-provider.ts","../src/relevance/mastra-agent/index.ts"],"names":["Agent"],"mappings":";;;;;AAoBO,IAAM,wBAAN,MAA8D;AAAA,EAC3D,KAAA;AAAA,EACA,MAAA;AAAA,EACR,WAAA,CAAY,OAAe,MAAA,EAAiB;AAC1C,IAAA,OAAA,CAAQ,IAAA;AAAA,MACN;AAAA,KACF;AACA,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,IAAA,IAAA,CAAK,KAAA,GAAQ,KAAA;AAAA,EACf;AAAA,EACA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,gCAAA,CAAA,EAAoC;AAAA,MAC/D,MAAA,EAAQ,MAAA;AAAA,MACR,OAAA,EAAS;AAAA,QACP,cAAA,EAAgB,kBAAA;AAAA,QAChB,aAAA,EAAe,CAAA,OAAA,EAAU,IAAA,CAAK,MAAM,CAAA;AAAA,OACtC;AAAA,MACA,IAAA,EAAM,KAAK,SAAA,CAAU;AAAA,QACnB,KAAA;AAAA,QACA,SAAA,EAAW,CAAC,IAAI,CAAA;AAAA,QAChB,OAAO,IAAA,CAAK,KAAA;AAAA,QACZ,KAAA,EAAO;AAAA,OACR;AAAA,KACF,CAAA;AAED,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,kBAAA,EAAqB,QAAA,CAAS,MAAM,IAAI,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CAAE,CAAA;AAAA,IACjF;AAEA,IAAA,MAAM,IAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,IAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,OAAA,CAAQ,CAAC,CAAA,EAAG,eAAA;AAExC,IAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,MAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,IAC/D;AAEA,IAAA,OAAO,cAAA;AAAA,EACT;AACF;;;ACpDO,SAAS,sBAAA,CAAuB,OAAe,IAAA,EAAsB;AAC1E,EAAA,OAAO,CAAA;;AAAA,OAAA,EAEA,KAAK;;AAAA,MAAA,EAEN,IAAI;;AAAA,sBAAA,CAAA;AAGZ;;;ACRO,IAAM,6BAAN,MAAmE;AAAA,EAChE,KAAA;AAAA,EAER,WAAA,CAAY,MAAc,KAAA,EAA4B;AACpD,IAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,uBAAA,CAAM;AAAA,MACrB,IAAA,EAAM,oBAAoB,IAAI,CAAA,CAAA;AAAA,MAC9B,YAAA,EAAc,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8CAAA,CAAA;AAAA,MAUd;AAAA,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,MAAA,GAAS,sBAAA,CAAuB,KAAA,EAAO,IAAI,CAAA;AAEjD,IAAA,MAAM,KAAA,GAAQ,MAAM,IAAA,CAAK,KAAA,CAAM,QAAA,EAAS;AAExC,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI,KAAA,CAAM,yBAAyB,IAAA,EAAM;AACvC,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,cAAc,MAAM,CAAA;AAC1D,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B,CAAA,MAAO;AACL,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,SAAS,MAAM,CAAA;AACrD,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B;AACA,IAAA,OAAO,WAAW,QAAQ,CAAA;AAAA,EAC5B;AACF","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../src/relevance/cohere/index.ts","../src/relevance/relevance-score-provider.ts","../src/relevance/mastra-agent/index.ts"],"names":["Agent"],"mappings":";;;;;AAoBO,IAAM,wBAAN,MAA8D;AAAA,EAC3D,KAAA;AAAA,EACA,MAAA;AAAA,EACR,WAAA,CAAY,OAAe,MAAA,EAAiB;AAC1C,IAAA,OAAA,CAAQ,IAAA;AAAA,MACN;AAAA,KACF;AACA,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AACd,IAAA,IAAA,CAAK,KAAA,GAAQ,KAAA;AAAA,EACf;AAAA,EACA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,CAAA,gCAAA,CAAA,EAAoC;AAAA,MAC/D,MAAA,EAAQ,MAAA;AAAA,MACR,OAAA,EAAS;AAAA,QACP,cAAA,EAAgB,kBAAA;AAAA,QAChB,aAAA,EAAe,CAAA,OAAA,EAAU,IAAA,CAAK,MAAM,CAAA;AAAA,OACtC;AAAA,MACA,IAAA,EAAM,KAAK,SAAA,CAAU;AAAA,QACnB,KAAA;AAAA,QACA,SAAA,EAAW,CAAC,IAAI,CAAA;AAAA,QAChB,OAAO,IAAA,CAAK,KAAA;AAAA,QACZ,KAAA,EAAO;AAAA,OACR;AAAA,KACF,CAAA;AAED,IAAA,IAAI,CAAC,SAAS,EAAA,EAAI;AAChB,MAAA,MAAM,IAAI,KAAA,CAAM,CAAA,kBAAA,EAAqB,QAAA,CAAS,MAAM,IAAI,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CAAE,CAAA;AAAA,IACjF;AAEA,IAAA,MAAM,IAAA,GAAQ,MAAM,QAAA,CAAS,IAAA,EAAK;AAClC,IAAA,MAAM,cAAA,GAAiB,IAAA,CAAK,OAAA,CAAQ,CAAC,CAAA,EAAG,eAAA;AAExC,IAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,MAAA,MAAM,IAAI,MAAM,6CAA6C,CAAA;AAAA,IAC/D;AAEA,IAAA,OAAO,cAAA;AAAA,EACT;AACF;;;ACpDO,SAAS,sBAAA,CAAuB,OAAe,IAAA,EAAsB;AAC1E,EAAA,OAAO,CAAA;;AAAA,OAAA,EAEA,KAAK;;AAAA,MAAA,EAEN,IAAI;;AAAA,sBAAA,CAAA;AAGZ;;;ACRO,IAAM,6BAAN,MAAmE;AAAA,EAChE,KAAA;AAAA,EAER,WAAA,CAAY,MAAc,KAAA,EAA4B;AACpD,IAAA,IAAA,CAAK,KAAA,GAAQ,IAAIA,uBAAA,CAAM;AAAA,MACrB,IAAA,EAAM,oBAAoB,IAAI,CAAA,CAAA;AAAA,MAC9B,YAAA,EAAc,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8CAAA,CAAA;AAAA,MAUd;AAAA,KACD,CAAA;AAAA,EACH;AAAA,EAEA,MAAM,iBAAA,CAAkB,KAAA,EAAe,IAAA,EAA+B;AACpE,IAAA,MAAM,MAAA,GAAS,sBAAA,CAAuB,KAAA,EAAO,IAAI,CAAA;AAEjD,IAAA,MAAM,KAAA,GAAQ,MAAM,IAAA,CAAK,KAAA,CAAM,QAAA,EAAS;AAExC,IAAA,IAAI,QAAA;AACJ,IAAA,IAAI,KAAA,CAAM,yBAAyB,IAAA,EAAM;AACvC,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,cAAc,MAAM,CAAA;AAC1D,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B,CAAA,MAAO;AACL,MAAA,MAAM,YAAA,GAAe,MAAM,IAAA,CAAK,KAAA,CAAM,SAAS,MAAM,CAAA;AACrD,MAAA,QAAA,GAAW,YAAA,CAAa,IAAA;AAAA,IAC1B;AACA,IAAA,OAAO,WAAW,QAAQ,CAAA;AAAA,EAC5B;AACF","file":"chunk-FQRDHVZC.cjs","sourcesContent":["import type { RelevanceScoreProvider } from '../relevance-score-provider';\n\ninterface CohereRerankingResponse {\n results: Array<{\n index: number;\n relevance_score: number;\n }>;\n id: string;\n meta: {\n api_version: {\n version: string;\n is_experimental: boolean;\n };\n billed_units: {\n search_units: number;\n };\n };\n}\n\n/** @deprecated Import from `@mastra/rag` instead */\nexport class CohereRelevanceScorer implements RelevanceScoreProvider {\n private model: string;\n private apiKey?: string;\n constructor(model: string, apiKey?: string) {\n console.warn(\n 'CohereRelevanceScorer exported from @mastra/core is deprecated. Please import from \"@mastra/rag\" instead.',\n );\n this.apiKey = apiKey;\n this.model = model;\n }\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const response = await fetch(`https://api.cohere.com/v2/rerank`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n Authorization: `Bearer ${this.apiKey}`,\n },\n body: JSON.stringify({\n query,\n documents: [text],\n model: this.model,\n top_n: 1,\n }),\n });\n\n if (!response.ok) {\n throw new Error(`Cohere API error: ${response.status} ${await response.text()}`);\n }\n\n const data = (await response.json()) as CohereRerankingResponse;\n const relevanceScore = data.results[0]?.relevance_score;\n\n if (!relevanceScore) {\n throw new Error('No relevance score found on Cohere response');\n }\n\n return relevanceScore;\n }\n}\n","// Provider interfaces\nexport interface RelevanceScoreProvider {\n getRelevanceScore(text1: string, text2: string): Promise<number>;\n}\n\n// Helper function used by providers\nexport function createSimilarityPrompt(query: string, text: string): string {\n return `Rate the semantic similarity between the following the query and the text on a scale from 0 to 1 (decimals allowed), where 1 means exactly the same meaning and 0 means completely different:\n\nQuery: ${query}\n\nText: ${text}\n\nRelevance score (0-1):`;\n}\n","import { Agent } from '../../agent';\nimport type { MastraLanguageModel } from '../../llm/model/shared.types';\nimport { createSimilarityPrompt } from '../relevance-score-provider';\nimport type { RelevanceScoreProvider } from '../relevance-score-provider';\n\n// Mastra Agent implementation\nexport class MastraAgentRelevanceScorer implements RelevanceScoreProvider {\n private agent: Agent;\n\n constructor(name: string, model: MastraLanguageModel) {\n this.agent = new Agent({\n name: `Relevance Scorer ${name}`,\n instructions: `You are a specialized agent for evaluating the relevance of text to queries.\nYour task is to rate how well a text passage answers a given query.\nOutput only a number between 0 and 1, where:\n1.0 = Perfectly relevant, directly answers the query\n0.0 = Completely irrelevant\nConsider:\n- Direct relevance to the question\n- Completeness of information\n- Quality and specificity\nAlways return just the number, no explanation.`,\n model,\n });\n }\n\n async getRelevanceScore(query: string, text: string): Promise<number> {\n const prompt = createSimilarityPrompt(query, text);\n\n const model = await this.agent.getModel();\n\n let response: string;\n if (model.specificationVersion === 'v2') {\n const responseText = await this.agent.generateVNext(prompt);\n response = responseText.text;\n } else {\n const responseText = await this.agent.generate(prompt);\n response = responseText.text;\n }\n return parseFloat(response);\n }\n}\n"]}
|
|
@@ -11,7 +11,6 @@ var NoOpAISpan = class _NoOpAISpan {
|
|
|
11
11
|
type;
|
|
12
12
|
attributes;
|
|
13
13
|
parent;
|
|
14
|
-
trace;
|
|
15
14
|
traceId;
|
|
16
15
|
startTime;
|
|
17
16
|
endTime;
|
|
@@ -28,7 +27,6 @@ var NoOpAISpan = class _NoOpAISpan {
|
|
|
28
27
|
this.attributes = options.attributes || {};
|
|
29
28
|
this.metadata = options.metadata;
|
|
30
29
|
this.parent = options.parent;
|
|
31
|
-
this.trace = options.parent ? options.parent.trace : this;
|
|
32
30
|
this.traceId = "no-op-trace";
|
|
33
31
|
this.startTime = /* @__PURE__ */ new Date();
|
|
34
32
|
this.aiTracing = aiTracing;
|
|
@@ -902,6 +900,232 @@ var DefaultExporter = class {
|
|
|
902
900
|
}
|
|
903
901
|
};
|
|
904
902
|
|
|
903
|
+
// src/ai-tracing/registry.ts
|
|
904
|
+
var AITracingRegistry = class {
|
|
905
|
+
instances = /* @__PURE__ */ new Map();
|
|
906
|
+
defaultInstance;
|
|
907
|
+
selector;
|
|
908
|
+
/**
|
|
909
|
+
* Register a tracing instance
|
|
910
|
+
*/
|
|
911
|
+
register(name, instance, isDefault = false) {
|
|
912
|
+
if (this.instances.has(name)) {
|
|
913
|
+
throw new Error(`AI Tracing instance '${name}' already registered`);
|
|
914
|
+
}
|
|
915
|
+
this.instances.set(name, instance);
|
|
916
|
+
if (isDefault || !this.defaultInstance) {
|
|
917
|
+
this.defaultInstance = instance;
|
|
918
|
+
}
|
|
919
|
+
}
|
|
920
|
+
/**
|
|
921
|
+
* Get a tracing instance by name
|
|
922
|
+
*/
|
|
923
|
+
get(name) {
|
|
924
|
+
return this.instances.get(name);
|
|
925
|
+
}
|
|
926
|
+
/**
|
|
927
|
+
* Get the default tracing instance
|
|
928
|
+
*/
|
|
929
|
+
getDefault() {
|
|
930
|
+
return this.defaultInstance;
|
|
931
|
+
}
|
|
932
|
+
/**
|
|
933
|
+
* Set the tracing selector function
|
|
934
|
+
*/
|
|
935
|
+
setSelector(selector) {
|
|
936
|
+
this.selector = selector;
|
|
937
|
+
}
|
|
938
|
+
/**
|
|
939
|
+
* Get the selected tracing instance based on context
|
|
940
|
+
*/
|
|
941
|
+
getSelected(context) {
|
|
942
|
+
if (this.selector) {
|
|
943
|
+
const selected = this.selector(context, this.instances);
|
|
944
|
+
if (selected && this.instances.has(selected)) {
|
|
945
|
+
return this.instances.get(selected);
|
|
946
|
+
}
|
|
947
|
+
}
|
|
948
|
+
return this.defaultInstance;
|
|
949
|
+
}
|
|
950
|
+
/**
|
|
951
|
+
* Unregister a tracing instance
|
|
952
|
+
*/
|
|
953
|
+
unregister(name) {
|
|
954
|
+
return this.instances.delete(name);
|
|
955
|
+
}
|
|
956
|
+
/**
|
|
957
|
+
* Shutdown all instances and clear the registry
|
|
958
|
+
*/
|
|
959
|
+
async shutdown() {
|
|
960
|
+
const shutdownPromises = Array.from(this.instances.values()).map((instance) => instance.shutdown());
|
|
961
|
+
await Promise.allSettled(shutdownPromises);
|
|
962
|
+
this.instances.clear();
|
|
963
|
+
}
|
|
964
|
+
/**
|
|
965
|
+
* Clear all instances without shutdown
|
|
966
|
+
*/
|
|
967
|
+
clear() {
|
|
968
|
+
this.instances.clear();
|
|
969
|
+
this.defaultInstance = void 0;
|
|
970
|
+
this.selector = void 0;
|
|
971
|
+
}
|
|
972
|
+
/**
|
|
973
|
+
* Get all registered instances
|
|
974
|
+
*/
|
|
975
|
+
getAll() {
|
|
976
|
+
return new Map(this.instances);
|
|
977
|
+
}
|
|
978
|
+
};
|
|
979
|
+
var aiTracingRegistry = new AITracingRegistry();
|
|
980
|
+
function registerAITracing(name, instance, isDefault = false) {
|
|
981
|
+
aiTracingRegistry.register(name, instance, isDefault);
|
|
982
|
+
}
|
|
983
|
+
function getAITracing(name) {
|
|
984
|
+
return aiTracingRegistry.get(name);
|
|
985
|
+
}
|
|
986
|
+
function getDefaultAITracing() {
|
|
987
|
+
return aiTracingRegistry.getDefault();
|
|
988
|
+
}
|
|
989
|
+
function setAITracingSelector(selector) {
|
|
990
|
+
aiTracingRegistry.setSelector(selector);
|
|
991
|
+
}
|
|
992
|
+
function getSelectedAITracing(context) {
|
|
993
|
+
return aiTracingRegistry.getSelected(context);
|
|
994
|
+
}
|
|
995
|
+
function unregisterAITracing(name) {
|
|
996
|
+
return aiTracingRegistry.unregister(name);
|
|
997
|
+
}
|
|
998
|
+
async function shutdownAITracingRegistry() {
|
|
999
|
+
await aiTracingRegistry.shutdown();
|
|
1000
|
+
}
|
|
1001
|
+
function clearAITracingRegistry() {
|
|
1002
|
+
aiTracingRegistry.clear();
|
|
1003
|
+
}
|
|
1004
|
+
function getAllAITracing() {
|
|
1005
|
+
return aiTracingRegistry.getAll();
|
|
1006
|
+
}
|
|
1007
|
+
function hasAITracing(name) {
|
|
1008
|
+
const tracing = getAITracing(name);
|
|
1009
|
+
if (!tracing) return false;
|
|
1010
|
+
const config = tracing.getConfig();
|
|
1011
|
+
const sampling = config.sampling;
|
|
1012
|
+
return sampling.type !== "never" /* NEVER */;
|
|
1013
|
+
}
|
|
1014
|
+
function isAITracingInstance(obj) {
|
|
1015
|
+
return obj instanceof MastraAITracing;
|
|
1016
|
+
}
|
|
1017
|
+
function setupAITracing(config) {
|
|
1018
|
+
const entries = Object.entries(config.instances);
|
|
1019
|
+
entries.forEach(([name, tracingDef], index) => {
|
|
1020
|
+
const instance = isAITracingInstance(tracingDef) ? tracingDef : new DefaultAITracing({ ...tracingDef, instanceName: name });
|
|
1021
|
+
const isDefault = index === 0;
|
|
1022
|
+
registerAITracing(name, instance, isDefault);
|
|
1023
|
+
});
|
|
1024
|
+
if (config.selector) {
|
|
1025
|
+
setAITracingSelector(config.selector);
|
|
1026
|
+
}
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
// src/ai-tracing/utils.ts
|
|
1030
|
+
function shallowCleanObject(obj) {
|
|
1031
|
+
const cleaned = {};
|
|
1032
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
1033
|
+
try {
|
|
1034
|
+
JSON.stringify(value);
|
|
1035
|
+
cleaned[key] = value;
|
|
1036
|
+
} catch (error) {
|
|
1037
|
+
cleaned[key] = `[${error instanceof Error ? error.message : String(error)}]`;
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
return cleaned;
|
|
1041
|
+
}
|
|
1042
|
+
function shallowCleanArray(arr) {
|
|
1043
|
+
return arr.map((item) => {
|
|
1044
|
+
if (item && typeof item === "object" && !Array.isArray(item)) {
|
|
1045
|
+
return shallowCleanObject(item);
|
|
1046
|
+
}
|
|
1047
|
+
try {
|
|
1048
|
+
JSON.stringify(item);
|
|
1049
|
+
return item;
|
|
1050
|
+
} catch (error) {
|
|
1051
|
+
return `[${error instanceof Error ? error.message : String(error)}]`;
|
|
1052
|
+
}
|
|
1053
|
+
});
|
|
1054
|
+
}
|
|
1055
|
+
function shallowClean(value) {
|
|
1056
|
+
if (value === null || value === void 0) {
|
|
1057
|
+
return value;
|
|
1058
|
+
}
|
|
1059
|
+
if (Array.isArray(value)) {
|
|
1060
|
+
return shallowCleanArray(value);
|
|
1061
|
+
}
|
|
1062
|
+
if (typeof value === "object") {
|
|
1063
|
+
return shallowCleanObject(value);
|
|
1064
|
+
}
|
|
1065
|
+
try {
|
|
1066
|
+
JSON.stringify(value);
|
|
1067
|
+
return value;
|
|
1068
|
+
} catch (error) {
|
|
1069
|
+
return `[${error instanceof Error ? error.message : String(error)}]`;
|
|
1070
|
+
}
|
|
1071
|
+
}
|
|
1072
|
+
function omitKeys(obj, keysToOmit) {
|
|
1073
|
+
return Object.fromEntries(Object.entries(obj).filter(([key]) => !keysToOmit.includes(key)));
|
|
1074
|
+
}
|
|
1075
|
+
function selectFields(obj, fields) {
|
|
1076
|
+
if (!obj || typeof obj !== "object") {
|
|
1077
|
+
return obj;
|
|
1078
|
+
}
|
|
1079
|
+
const result = {};
|
|
1080
|
+
for (const field of fields) {
|
|
1081
|
+
const value = getNestedValue(obj, field);
|
|
1082
|
+
if (value !== void 0) {
|
|
1083
|
+
setNestedValue(result, field, value);
|
|
1084
|
+
}
|
|
1085
|
+
}
|
|
1086
|
+
return result;
|
|
1087
|
+
}
|
|
1088
|
+
function getNestedValue(obj, path) {
|
|
1089
|
+
return path.split(".").reduce((current, key) => {
|
|
1090
|
+
return current && typeof current === "object" ? current[key] : void 0;
|
|
1091
|
+
}, obj);
|
|
1092
|
+
}
|
|
1093
|
+
function setNestedValue(obj, path, value) {
|
|
1094
|
+
const keys = path.split(".");
|
|
1095
|
+
const lastKey = keys.pop();
|
|
1096
|
+
if (!lastKey) {
|
|
1097
|
+
return;
|
|
1098
|
+
}
|
|
1099
|
+
const target = keys.reduce((current, key) => {
|
|
1100
|
+
if (!current[key] || typeof current[key] !== "object") {
|
|
1101
|
+
current[key] = {};
|
|
1102
|
+
}
|
|
1103
|
+
return current[key];
|
|
1104
|
+
}, obj);
|
|
1105
|
+
target[lastKey] = value;
|
|
1106
|
+
}
|
|
1107
|
+
function getOrCreateSpan(options) {
|
|
1108
|
+
const { type, attributes, tracingContext, runtimeContext, ...rest } = options;
|
|
1109
|
+
if (tracingContext?.currentSpan) {
|
|
1110
|
+
return tracingContext.currentSpan.createChildSpan({
|
|
1111
|
+
type,
|
|
1112
|
+
attributes,
|
|
1113
|
+
...rest
|
|
1114
|
+
});
|
|
1115
|
+
}
|
|
1116
|
+
const aiTracing = getSelectedAITracing({
|
|
1117
|
+
runtimeContext
|
|
1118
|
+
});
|
|
1119
|
+
return aiTracing?.startSpan({
|
|
1120
|
+
type,
|
|
1121
|
+
attributes,
|
|
1122
|
+
startOptions: {
|
|
1123
|
+
runtimeContext
|
|
1124
|
+
},
|
|
1125
|
+
...rest
|
|
1126
|
+
});
|
|
1127
|
+
}
|
|
1128
|
+
|
|
905
1129
|
// src/ai-tracing/default.ts
|
|
906
1130
|
function generateSpanId() {
|
|
907
1131
|
const bytes = new Uint8Array(8);
|
|
@@ -931,7 +1155,6 @@ var DefaultAISpan = class {
|
|
|
931
1155
|
type;
|
|
932
1156
|
attributes;
|
|
933
1157
|
parent;
|
|
934
|
-
trace;
|
|
935
1158
|
traceId;
|
|
936
1159
|
startTime;
|
|
937
1160
|
endTime;
|
|
@@ -946,13 +1169,12 @@ var DefaultAISpan = class {
|
|
|
946
1169
|
this.id = generateSpanId();
|
|
947
1170
|
this.name = options.name;
|
|
948
1171
|
this.type = options.type;
|
|
949
|
-
this.attributes = options.attributes || {};
|
|
950
|
-
this.metadata = options.metadata;
|
|
1172
|
+
this.attributes = shallowClean(options.attributes) || {};
|
|
1173
|
+
this.metadata = shallowClean(options.metadata);
|
|
951
1174
|
this.parent = options.parent;
|
|
952
|
-
this.trace = options.parent ? options.parent.trace : this;
|
|
953
1175
|
this.startTime = /* @__PURE__ */ new Date();
|
|
954
1176
|
this.aiTracing = aiTracing;
|
|
955
|
-
this.input = options.input;
|
|
1177
|
+
this.input = shallowClean(options.input);
|
|
956
1178
|
this.isEvent = options.isEvent;
|
|
957
1179
|
this.logger = new chunkV5WKCX3G_cjs.ConsoleLogger({
|
|
958
1180
|
name: "default-ai-span",
|
|
@@ -962,10 +1184,10 @@ var DefaultAISpan = class {
|
|
|
962
1184
|
if (!options.parent) {
|
|
963
1185
|
this.traceId = generateTraceId();
|
|
964
1186
|
} else {
|
|
965
|
-
this.traceId = options.parent.
|
|
1187
|
+
this.traceId = options.parent.traceId;
|
|
966
1188
|
}
|
|
967
1189
|
if (this.isEvent) {
|
|
968
|
-
this.output = options.output;
|
|
1190
|
+
this.output = shallowClean(options.output);
|
|
969
1191
|
}
|
|
970
1192
|
}
|
|
971
1193
|
end(options) {
|
|
@@ -975,13 +1197,13 @@ var DefaultAISpan = class {
|
|
|
975
1197
|
}
|
|
976
1198
|
this.endTime = /* @__PURE__ */ new Date();
|
|
977
1199
|
if (options?.output !== void 0) {
|
|
978
|
-
this.output = options.output;
|
|
1200
|
+
this.output = shallowClean(options.output);
|
|
979
1201
|
}
|
|
980
1202
|
if (options?.attributes) {
|
|
981
|
-
this.attributes = { ...this.attributes, ...options.attributes };
|
|
1203
|
+
this.attributes = { ...this.attributes, ...shallowClean(options.attributes) };
|
|
982
1204
|
}
|
|
983
1205
|
if (options?.metadata) {
|
|
984
|
-
this.metadata = { ...this.metadata, ...options.metadata };
|
|
1206
|
+
this.metadata = { ...this.metadata, ...shallowClean(options.metadata) };
|
|
985
1207
|
}
|
|
986
1208
|
}
|
|
987
1209
|
error(options) {
|
|
@@ -1000,10 +1222,10 @@ var DefaultAISpan = class {
|
|
|
1000
1222
|
message: error.message
|
|
1001
1223
|
};
|
|
1002
1224
|
if (attributes) {
|
|
1003
|
-
this.attributes = { ...this.attributes, ...attributes };
|
|
1225
|
+
this.attributes = { ...this.attributes, ...shallowClean(attributes) };
|
|
1004
1226
|
}
|
|
1005
1227
|
if (metadata) {
|
|
1006
|
-
this.metadata = { ...this.metadata, ...metadata };
|
|
1228
|
+
this.metadata = { ...this.metadata, ...shallowClean(metadata) };
|
|
1007
1229
|
}
|
|
1008
1230
|
if (endSpan) {
|
|
1009
1231
|
this.end();
|
|
@@ -1031,16 +1253,16 @@ var DefaultAISpan = class {
|
|
|
1031
1253
|
return;
|
|
1032
1254
|
}
|
|
1033
1255
|
if (options?.input !== void 0) {
|
|
1034
|
-
this.input = options.input;
|
|
1256
|
+
this.input = shallowClean(options.input);
|
|
1035
1257
|
}
|
|
1036
1258
|
if (options?.output !== void 0) {
|
|
1037
|
-
this.output = options.output;
|
|
1259
|
+
this.output = shallowClean(options.output);
|
|
1038
1260
|
}
|
|
1039
1261
|
if (options?.attributes) {
|
|
1040
|
-
this.attributes = { ...this.attributes, ...options.attributes };
|
|
1262
|
+
this.attributes = { ...this.attributes, ...shallowClean(options.attributes) };
|
|
1041
1263
|
}
|
|
1042
1264
|
if (options?.metadata) {
|
|
1043
|
-
this.metadata = { ...this.metadata, ...options.metadata };
|
|
1265
|
+
this.metadata = { ...this.metadata, ...shallowClean(options.metadata) };
|
|
1044
1266
|
}
|
|
1045
1267
|
}
|
|
1046
1268
|
get isRootSpan() {
|
|
@@ -1141,155 +1363,6 @@ var DefaultAITracing = class extends MastraAITracing {
|
|
|
1141
1363
|
}
|
|
1142
1364
|
};
|
|
1143
1365
|
|
|
1144
|
-
// src/ai-tracing/registry.ts
|
|
1145
|
-
var AITracingRegistry = class {
|
|
1146
|
-
instances = /* @__PURE__ */ new Map();
|
|
1147
|
-
defaultInstance;
|
|
1148
|
-
selector;
|
|
1149
|
-
/**
|
|
1150
|
-
* Register a tracing instance
|
|
1151
|
-
*/
|
|
1152
|
-
register(name, instance, isDefault = false) {
|
|
1153
|
-
if (this.instances.has(name)) {
|
|
1154
|
-
throw new Error(`AI Tracing instance '${name}' already registered`);
|
|
1155
|
-
}
|
|
1156
|
-
this.instances.set(name, instance);
|
|
1157
|
-
if (isDefault || !this.defaultInstance) {
|
|
1158
|
-
this.defaultInstance = instance;
|
|
1159
|
-
}
|
|
1160
|
-
}
|
|
1161
|
-
/**
|
|
1162
|
-
* Get a tracing instance by name
|
|
1163
|
-
*/
|
|
1164
|
-
get(name) {
|
|
1165
|
-
return this.instances.get(name);
|
|
1166
|
-
}
|
|
1167
|
-
/**
|
|
1168
|
-
* Get the default tracing instance
|
|
1169
|
-
*/
|
|
1170
|
-
getDefault() {
|
|
1171
|
-
return this.defaultInstance;
|
|
1172
|
-
}
|
|
1173
|
-
/**
|
|
1174
|
-
* Set the tracing selector function
|
|
1175
|
-
*/
|
|
1176
|
-
setSelector(selector) {
|
|
1177
|
-
this.selector = selector;
|
|
1178
|
-
}
|
|
1179
|
-
/**
|
|
1180
|
-
* Get the selected tracing instance based on context
|
|
1181
|
-
*/
|
|
1182
|
-
getSelected(context) {
|
|
1183
|
-
if (this.selector) {
|
|
1184
|
-
const selected = this.selector(context, this.instances);
|
|
1185
|
-
if (selected && this.instances.has(selected)) {
|
|
1186
|
-
return this.instances.get(selected);
|
|
1187
|
-
}
|
|
1188
|
-
}
|
|
1189
|
-
return this.defaultInstance;
|
|
1190
|
-
}
|
|
1191
|
-
/**
|
|
1192
|
-
* Unregister a tracing instance
|
|
1193
|
-
*/
|
|
1194
|
-
unregister(name) {
|
|
1195
|
-
return this.instances.delete(name);
|
|
1196
|
-
}
|
|
1197
|
-
/**
|
|
1198
|
-
* Shutdown all instances and clear the registry
|
|
1199
|
-
*/
|
|
1200
|
-
async shutdown() {
|
|
1201
|
-
const shutdownPromises = Array.from(this.instances.values()).map((instance) => instance.shutdown());
|
|
1202
|
-
await Promise.allSettled(shutdownPromises);
|
|
1203
|
-
this.instances.clear();
|
|
1204
|
-
}
|
|
1205
|
-
/**
|
|
1206
|
-
* Clear all instances without shutdown
|
|
1207
|
-
*/
|
|
1208
|
-
clear() {
|
|
1209
|
-
this.instances.clear();
|
|
1210
|
-
this.defaultInstance = void 0;
|
|
1211
|
-
this.selector = void 0;
|
|
1212
|
-
}
|
|
1213
|
-
/**
|
|
1214
|
-
* Get all registered instances
|
|
1215
|
-
*/
|
|
1216
|
-
getAll() {
|
|
1217
|
-
return new Map(this.instances);
|
|
1218
|
-
}
|
|
1219
|
-
};
|
|
1220
|
-
var aiTracingRegistry = new AITracingRegistry();
|
|
1221
|
-
function registerAITracing(name, instance, isDefault = false) {
|
|
1222
|
-
aiTracingRegistry.register(name, instance, isDefault);
|
|
1223
|
-
}
|
|
1224
|
-
function getAITracing(name) {
|
|
1225
|
-
return aiTracingRegistry.get(name);
|
|
1226
|
-
}
|
|
1227
|
-
function getDefaultAITracing() {
|
|
1228
|
-
return aiTracingRegistry.getDefault();
|
|
1229
|
-
}
|
|
1230
|
-
function setAITracingSelector(selector) {
|
|
1231
|
-
aiTracingRegistry.setSelector(selector);
|
|
1232
|
-
}
|
|
1233
|
-
function getSelectedAITracing(context) {
|
|
1234
|
-
return aiTracingRegistry.getSelected(context);
|
|
1235
|
-
}
|
|
1236
|
-
function unregisterAITracing(name) {
|
|
1237
|
-
return aiTracingRegistry.unregister(name);
|
|
1238
|
-
}
|
|
1239
|
-
async function shutdownAITracingRegistry() {
|
|
1240
|
-
await aiTracingRegistry.shutdown();
|
|
1241
|
-
}
|
|
1242
|
-
function clearAITracingRegistry() {
|
|
1243
|
-
aiTracingRegistry.clear();
|
|
1244
|
-
}
|
|
1245
|
-
function getAllAITracing() {
|
|
1246
|
-
return aiTracingRegistry.getAll();
|
|
1247
|
-
}
|
|
1248
|
-
function hasAITracing(name) {
|
|
1249
|
-
const tracing = getAITracing(name);
|
|
1250
|
-
if (!tracing) return false;
|
|
1251
|
-
const config = tracing.getConfig();
|
|
1252
|
-
const sampling = config.sampling;
|
|
1253
|
-
return sampling.type !== "never" /* NEVER */;
|
|
1254
|
-
}
|
|
1255
|
-
function isAITracingInstance(obj) {
|
|
1256
|
-
return obj instanceof MastraAITracing;
|
|
1257
|
-
}
|
|
1258
|
-
function setupAITracing(config) {
|
|
1259
|
-
const entries = Object.entries(config.instances);
|
|
1260
|
-
entries.forEach(([name, tracingDef], index) => {
|
|
1261
|
-
const instance = isAITracingInstance(tracingDef) ? tracingDef : new DefaultAITracing({ ...tracingDef, instanceName: name });
|
|
1262
|
-
const isDefault = index === 0;
|
|
1263
|
-
registerAITracing(name, instance, isDefault);
|
|
1264
|
-
});
|
|
1265
|
-
if (config.selector) {
|
|
1266
|
-
setAITracingSelector(config.selector);
|
|
1267
|
-
}
|
|
1268
|
-
}
|
|
1269
|
-
|
|
1270
|
-
// src/ai-tracing/utils.ts
|
|
1271
|
-
function sanitizeMetadata(metadata) {
|
|
1272
|
-
if (!metadata) return {};
|
|
1273
|
-
const sanitized = {};
|
|
1274
|
-
for (const [key, value] of Object.entries(metadata)) {
|
|
1275
|
-
if (isSerializable(value)) {
|
|
1276
|
-
sanitized[key] = value;
|
|
1277
|
-
}
|
|
1278
|
-
}
|
|
1279
|
-
return sanitized;
|
|
1280
|
-
}
|
|
1281
|
-
function isSerializable(value) {
|
|
1282
|
-
try {
|
|
1283
|
-
JSON.stringify(value);
|
|
1284
|
-
return true;
|
|
1285
|
-
} catch {
|
|
1286
|
-
return false;
|
|
1287
|
-
}
|
|
1288
|
-
}
|
|
1289
|
-
function omitKeys(obj, keysToOmit) {
|
|
1290
|
-
return Object.fromEntries(Object.entries(obj).filter(([key]) => !keysToOmit.includes(key)));
|
|
1291
|
-
}
|
|
1292
|
-
|
|
1293
1366
|
// src/ai-tracing/context.ts
|
|
1294
1367
|
var AGENT_GETTERS = ["getAgent", "getAgentById"];
|
|
1295
1368
|
var AGENT_METHODS_TO_WRAP = ["generate", "stream", "generateVNext", "streamVNext"];
|
|
@@ -1318,10 +1391,12 @@ function wrapMastra(mastra, tracingContext) {
|
|
|
1318
1391
|
return wrapWorkflow(workflow, tracingContext);
|
|
1319
1392
|
};
|
|
1320
1393
|
}
|
|
1321
|
-
|
|
1394
|
+
const value = target[prop];
|
|
1395
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1322
1396
|
} catch (error) {
|
|
1323
1397
|
console.warn("AI Tracing: Failed to wrap method, falling back to original", error);
|
|
1324
|
-
|
|
1398
|
+
const value = target[prop];
|
|
1399
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1325
1400
|
}
|
|
1326
1401
|
}
|
|
1327
1402
|
});
|
|
@@ -1346,10 +1421,12 @@ function wrapAgent(agent, tracingContext) {
|
|
|
1346
1421
|
});
|
|
1347
1422
|
};
|
|
1348
1423
|
}
|
|
1349
|
-
|
|
1424
|
+
const value = target[prop];
|
|
1425
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1350
1426
|
} catch (error) {
|
|
1351
1427
|
console.warn("AI Tracing: Failed to wrap agent method, falling back to original", error);
|
|
1352
|
-
|
|
1428
|
+
const value = target[prop];
|
|
1429
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1353
1430
|
}
|
|
1354
1431
|
}
|
|
1355
1432
|
});
|
|
@@ -1374,10 +1451,12 @@ function wrapWorkflow(workflow, tracingContext) {
|
|
|
1374
1451
|
});
|
|
1375
1452
|
};
|
|
1376
1453
|
}
|
|
1377
|
-
|
|
1454
|
+
const value = target[prop];
|
|
1455
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1378
1456
|
} catch (error) {
|
|
1379
1457
|
console.warn("AI Tracing: Failed to wrap workflow method, falling back to original", error);
|
|
1380
|
-
|
|
1458
|
+
const value = target[prop];
|
|
1459
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
1381
1460
|
}
|
|
1382
1461
|
}
|
|
1383
1462
|
});
|
|
@@ -1400,18 +1479,21 @@ exports.clearAITracingRegistry = clearAITracingRegistry;
|
|
|
1400
1479
|
exports.getAITracing = getAITracing;
|
|
1401
1480
|
exports.getAllAITracing = getAllAITracing;
|
|
1402
1481
|
exports.getDefaultAITracing = getDefaultAITracing;
|
|
1482
|
+
exports.getOrCreateSpan = getOrCreateSpan;
|
|
1403
1483
|
exports.getSelectedAITracing = getSelectedAITracing;
|
|
1404
1484
|
exports.hasAITracing = hasAITracing;
|
|
1405
|
-
exports.isSerializable = isSerializable;
|
|
1406
1485
|
exports.omitKeys = omitKeys;
|
|
1407
1486
|
exports.registerAITracing = registerAITracing;
|
|
1408
|
-
exports.
|
|
1487
|
+
exports.selectFields = selectFields;
|
|
1409
1488
|
exports.setAITracingSelector = setAITracingSelector;
|
|
1410
1489
|
exports.setupAITracing = setupAITracing;
|
|
1490
|
+
exports.shallowClean = shallowClean;
|
|
1491
|
+
exports.shallowCleanArray = shallowCleanArray;
|
|
1492
|
+
exports.shallowCleanObject = shallowCleanObject;
|
|
1411
1493
|
exports.shutdownAITracingRegistry = shutdownAITracingRegistry;
|
|
1412
1494
|
exports.unregisterAITracing = unregisterAITracing;
|
|
1413
1495
|
exports.wrapAgent = wrapAgent;
|
|
1414
1496
|
exports.wrapMastra = wrapMastra;
|
|
1415
1497
|
exports.wrapWorkflow = wrapWorkflow;
|
|
1416
|
-
//# sourceMappingURL=chunk-
|
|
1417
|
-
//# sourceMappingURL=chunk-
|
|
1498
|
+
//# sourceMappingURL=chunk-I7OAONIW.cjs.map
|
|
1499
|
+
//# sourceMappingURL=chunk-I7OAONIW.cjs.map
|