@mastra/core 0.16.3-alpha.1 → 0.16.4-alpha.0

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.
Files changed (151) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/dist/agent/agent.d.ts +1 -1
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/agent.types.d.ts +7 -1
  5. package/dist/agent/agent.types.d.ts.map +1 -1
  6. package/dist/agent/index.cjs +11 -11
  7. package/dist/agent/index.js +2 -2
  8. package/dist/agent/input-processor/index.cjs +6 -6
  9. package/dist/agent/input-processor/index.js +1 -1
  10. package/dist/ai-tracing/exporters/cloud.d.ts.map +1 -1
  11. package/dist/ai-tracing/exporters/default.d.ts.map +1 -1
  12. package/dist/ai-tracing/index.cjs +42 -30
  13. package/dist/ai-tracing/index.d.ts +3 -2
  14. package/dist/ai-tracing/index.d.ts.map +1 -1
  15. package/dist/ai-tracing/index.js +1 -1
  16. package/dist/ai-tracing/registry.d.ts +11 -12
  17. package/dist/ai-tracing/registry.d.ts.map +1 -1
  18. package/dist/ai-tracing/span_processors/index.d.ts +5 -0
  19. package/dist/ai-tracing/span_processors/index.d.ts.map +1 -0
  20. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts +79 -0
  21. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts.map +1 -0
  22. package/dist/ai-tracing/spans/base.d.ts +59 -0
  23. package/dist/ai-tracing/spans/base.d.ts.map +1 -0
  24. package/dist/ai-tracing/spans/default.d.ts +13 -0
  25. package/dist/ai-tracing/spans/default.d.ts.map +1 -0
  26. package/dist/ai-tracing/spans/index.d.ts +7 -0
  27. package/dist/ai-tracing/spans/index.d.ts.map +1 -0
  28. package/dist/ai-tracing/spans/no-op.d.ts +15 -0
  29. package/dist/ai-tracing/spans/no-op.d.ts.map +1 -0
  30. package/dist/ai-tracing/{base.d.ts → tracers/base.d.ts} +11 -24
  31. package/dist/ai-tracing/tracers/base.d.ts.map +1 -0
  32. package/dist/ai-tracing/tracers/default.d.ts +7 -0
  33. package/dist/ai-tracing/tracers/default.d.ts.map +1 -0
  34. package/dist/ai-tracing/tracers/index.d.ts +6 -0
  35. package/dist/ai-tracing/tracers/index.d.ts.map +1 -0
  36. package/dist/ai-tracing/types.d.ts +181 -97
  37. package/dist/ai-tracing/types.d.ts.map +1 -1
  38. package/dist/ai-tracing/utils.d.ts +13 -30
  39. package/dist/ai-tracing/utils.d.ts.map +1 -1
  40. package/dist/{chunk-37GX66ZQ.cjs → chunk-2S2YFQ3W.cjs} +7 -7
  41. package/dist/{chunk-37GX66ZQ.cjs.map → chunk-2S2YFQ3W.cjs.map} +1 -1
  42. package/dist/{chunk-2LEMTQEN.cjs → chunk-6ACAYXAV.cjs} +4 -4
  43. package/dist/{chunk-2LEMTQEN.cjs.map → chunk-6ACAYXAV.cjs.map} +1 -1
  44. package/dist/{chunk-YW7UILPE.js → chunk-A3QHQYMC.js} +9 -4
  45. package/dist/chunk-A3QHQYMC.js.map +1 -0
  46. package/dist/{chunk-DWGGSV3L.js → chunk-BVE3UPHV.js} +4 -4
  47. package/dist/{chunk-DWGGSV3L.js.map → chunk-BVE3UPHV.js.map} +1 -1
  48. package/dist/{chunk-I77GWNQI.cjs → chunk-DUUXEPE5.cjs} +4 -4
  49. package/dist/{chunk-I77GWNQI.cjs.map → chunk-DUUXEPE5.cjs.map} +1 -1
  50. package/dist/{chunk-VVUCWRGD.cjs → chunk-ERRIEUC2.cjs} +415 -371
  51. package/dist/chunk-ERRIEUC2.cjs.map +1 -0
  52. package/dist/{chunk-AV5QBG6P.cjs → chunk-GJKL73EJ.cjs} +14 -10
  53. package/dist/chunk-GJKL73EJ.cjs.map +1 -0
  54. package/dist/{chunk-SLQGF75B.js → chunk-MS6HHGRW.js} +3 -3
  55. package/dist/{chunk-SLQGF75B.js.map → chunk-MS6HHGRW.js.map} +1 -1
  56. package/dist/{chunk-WAN6BRTN.js → chunk-O5GOFG6A.js} +11 -7
  57. package/dist/chunk-O5GOFG6A.js.map +1 -0
  58. package/dist/{chunk-W5K2KOZX.js → chunk-ODLGLX2R.js} +410 -369
  59. package/dist/chunk-ODLGLX2R.js.map +1 -0
  60. package/dist/{chunk-HHRWDBFK.js → chunk-OSMP67E2.js} +27 -24
  61. package/dist/chunk-OSMP67E2.js.map +1 -0
  62. package/dist/{chunk-S6MAHT7F.cjs → chunk-OXAN5SM7.cjs} +9 -4
  63. package/dist/chunk-OXAN5SM7.cjs.map +1 -0
  64. package/dist/{chunk-BE6HGZV7.js → chunk-P5BVWWMV.js} +3 -3
  65. package/dist/{chunk-BE6HGZV7.js.map → chunk-P5BVWWMV.js.map} +1 -1
  66. package/dist/{chunk-6ILOFPTU.js → chunk-SWI3TK2R.js} +21 -141
  67. package/dist/chunk-SWI3TK2R.js.map +1 -0
  68. package/dist/{chunk-3CYEVZGC.cjs → chunk-VH3RNDZA.cjs} +6 -6
  69. package/dist/{chunk-3CYEVZGC.cjs.map → chunk-VH3RNDZA.cjs.map} +1 -1
  70. package/dist/{chunk-46ZMVRXN.js → chunk-XKXZ6I72.js} +5 -5
  71. package/dist/chunk-XKXZ6I72.js.map +1 -0
  72. package/dist/{chunk-PPMRSBCA.cjs → chunk-Z3DIAA2J.cjs} +25 -145
  73. package/dist/chunk-Z3DIAA2J.cjs.map +1 -0
  74. package/dist/{chunk-7ARB2XCY.js → chunk-ZDMAOD35.js} +3 -3
  75. package/dist/{chunk-7ARB2XCY.js.map → chunk-ZDMAOD35.js.map} +1 -1
  76. package/dist/{chunk-VK7LOYGD.cjs → chunk-ZJRDXVAR.cjs} +12 -12
  77. package/dist/chunk-ZJRDXVAR.cjs.map +1 -0
  78. package/dist/{chunk-CM4UEIAB.cjs → chunk-ZL6RHYVT.cjs} +51 -48
  79. package/dist/chunk-ZL6RHYVT.cjs.map +1 -0
  80. package/dist/index.cjs +38 -38
  81. package/dist/index.js +7 -7
  82. package/dist/llm/model/model.d.ts.map +1 -1
  83. package/dist/llm/model/model.loop.d.ts.map +1 -1
  84. package/dist/loop/index.cjs +2 -2
  85. package/dist/loop/index.js +1 -1
  86. package/dist/loop/network/index.d.ts +2 -1
  87. package/dist/loop/network/index.d.ts.map +1 -1
  88. package/dist/mastra/index.cjs +2 -2
  89. package/dist/mastra/index.d.ts +2 -2
  90. package/dist/mastra/index.d.ts.map +1 -1
  91. package/dist/mastra/index.js +1 -1
  92. package/dist/memory/index.cjs +4 -4
  93. package/dist/memory/index.js +1 -1
  94. package/dist/network/index.cjs +2 -2
  95. package/dist/network/index.js +1 -1
  96. package/dist/network/vNext/index.cjs +29 -29
  97. package/dist/network/vNext/index.js +2 -2
  98. package/dist/processors/index.cjs +8 -8
  99. package/dist/processors/index.js +2 -2
  100. package/dist/relevance/index.cjs +4 -4
  101. package/dist/relevance/index.js +1 -1
  102. package/dist/scores/index.cjs +8 -8
  103. package/dist/scores/index.js +1 -1
  104. package/dist/server/types.d.ts +3 -0
  105. package/dist/server/types.d.ts.map +1 -1
  106. package/dist/storage/index.cjs +3 -3
  107. package/dist/storage/index.js +1 -1
  108. package/dist/stream/MastraAgentNetworkStream.d.ts +18 -0
  109. package/dist/stream/MastraAgentNetworkStream.d.ts.map +1 -0
  110. package/dist/stream/MastraWorkflowStream.d.ts.map +1 -1
  111. package/dist/stream/base/output.d.ts.map +1 -1
  112. package/dist/stream/index.cjs +3 -3
  113. package/dist/stream/index.js +1 -1
  114. package/dist/test-utils/llm-mock.cjs +2 -2
  115. package/dist/test-utils/llm-mock.js +1 -1
  116. package/dist/tools/index.cjs +2 -2
  117. package/dist/tools/index.js +1 -1
  118. package/dist/tools/stream.d.ts.map +1 -1
  119. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  120. package/dist/utils.cjs +17 -17
  121. package/dist/utils.js +1 -1
  122. package/dist/workflows/default.d.ts.map +1 -1
  123. package/dist/workflows/evented/index.cjs +10 -10
  124. package/dist/workflows/evented/index.js +1 -1
  125. package/dist/workflows/evented/workflow.d.ts +1 -21
  126. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  127. package/dist/workflows/index.cjs +10 -10
  128. package/dist/workflows/index.js +1 -1
  129. package/dist/workflows/legacy/index.cjs +22 -22
  130. package/dist/workflows/legacy/index.js +1 -1
  131. package/dist/workflows/types.d.ts +3 -14
  132. package/dist/workflows/types.d.ts.map +1 -1
  133. package/dist/workflows/workflow.d.ts.map +1 -1
  134. package/package.json +4 -4
  135. package/dist/ai-tracing/base.d.ts.map +0 -1
  136. package/dist/ai-tracing/default.d.ts +0 -17
  137. package/dist/ai-tracing/default.d.ts.map +0 -1
  138. package/dist/ai-tracing/no-op.d.ts +0 -62
  139. package/dist/ai-tracing/no-op.d.ts.map +0 -1
  140. package/dist/chunk-46ZMVRXN.js.map +0 -1
  141. package/dist/chunk-6ILOFPTU.js.map +0 -1
  142. package/dist/chunk-AV5QBG6P.cjs.map +0 -1
  143. package/dist/chunk-CM4UEIAB.cjs.map +0 -1
  144. package/dist/chunk-HHRWDBFK.js.map +0 -1
  145. package/dist/chunk-PPMRSBCA.cjs.map +0 -1
  146. package/dist/chunk-S6MAHT7F.cjs.map +0 -1
  147. package/dist/chunk-VK7LOYGD.cjs.map +0 -1
  148. package/dist/chunk-VVUCWRGD.cjs.map +0 -1
  149. package/dist/chunk-W5K2KOZX.js.map +0 -1
  150. package/dist/chunk-WAN6BRTN.js.map +0 -1
  151. package/dist/chunk-YW7UILPE.js.map +0 -1
@@ -0,0 +1,79 @@
1
+ import type { AISpanProcessor, AnyAISpan } from '../types.js';
2
+ export type RedactionStyle = 'full' | 'partial';
3
+ /**
4
+ * Options for configuring the SensitiveDataFilter.
5
+ */
6
+ export interface SensitiveDataFilterOptions {
7
+ /**
8
+ * List of sensitive field names to redact.
9
+ * Matching is case-insensitive and normalizes separators (`api-key`, `api_key`, `Api Key` → `apikey`).
10
+ *
11
+ * Defaults include: password, token, secret, key, apikey, auth, authorization,
12
+ * bearer, bearertoken, jwt, credential, clientsecret, privatekey, refresh, ssn.
13
+ */
14
+ sensitiveFields?: string[];
15
+ /**
16
+ * The token used for full redaction.
17
+ * Default: "[REDACTED]"
18
+ */
19
+ redactionToken?: string;
20
+ /**
21
+ * Style of redaction to use:
22
+ * - "full": always replace with redactionToken.
23
+ * - "partial": show 3 characters from the start and end, redact the middle.
24
+ *
25
+ * Default: "full"
26
+ */
27
+ redactionStyle?: RedactionStyle;
28
+ }
29
+ /**
30
+ * SensitiveDataFilter
31
+ *
32
+ * An AISpanProcessor that redacts sensitive information from span fields.
33
+ *
34
+ * - Sensitive keys are matched case-insensitively, normalized to remove separators.
35
+ * - Sensitive values are redacted using either full or partial redaction.
36
+ * - Partial redaction always keeps 3 chars at the start and end.
37
+ * - If filtering a field fails, the field is replaced with:
38
+ * `{ error: { processor: "sensitive-data-filter" } }`
39
+ */
40
+ export declare class SensitiveDataFilter implements AISpanProcessor {
41
+ name: string;
42
+ private sensitiveFields;
43
+ private redactionToken;
44
+ private redactionStyle;
45
+ constructor(options?: SensitiveDataFilterOptions);
46
+ /**
47
+ * Process a span by filtering sensitive data across its key fields.
48
+ * Fields processed: attributes, metadata, input, output, errorInfo.
49
+ *
50
+ * @param span - The input span to filter
51
+ * @returns A new span with sensitive values redacted
52
+ */
53
+ process(span: AnyAISpan): AnyAISpan;
54
+ /**
55
+ * Recursively filter objects/arrays for sensitive keys.
56
+ * Handles circular references by replacing with a marker.
57
+ */
58
+ private deepFilter;
59
+ private tryFilter;
60
+ /**
61
+ * Normalize keys by lowercasing and stripping non-alphanumeric characters.
62
+ * Ensures consistent matching for variants like "api-key", "api_key", "Api Key".
63
+ */
64
+ private normalizeKey;
65
+ /**
66
+ * Check whether a normalized key matches any sensitive field substring.
67
+ */
68
+ private isSensitive;
69
+ /**
70
+ * Redact a sensitive value.
71
+ * - Full style: replaces with a fixed token.
72
+ * - Partial style: shows 3 chars at start and end, hides the middle.
73
+ *
74
+ * Non-string values are converted to strings before partial redaction.
75
+ */
76
+ private redactValue;
77
+ shutdown(): Promise<void>;
78
+ }
79
+ //# sourceMappingURL=sensitive-data-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sensitive-data-filter.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/span_processors/sensitive-data-filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,IAAI,SAA2B;IAC/B,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,cAAc,CAAiB;gBAE3B,OAAO,GAAE,0BAA+B;IAyBpD;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS;IASnC;;;OAGG;IACH,OAAO,CAAC,UAAU;IAgClB,OAAO,CAAC,SAAS;IAQjB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAab,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC"}
@@ -0,0 +1,59 @@
1
+ import type { AISpan, AISpanType, AISpanTypeMap, AnyAISpan, ChildSpanOptions, ChildEventOptions, EndSpanOptions, ErrorSpanOptions, UpdateSpanOptions, CreateSpanOptions, AITracing, ExportedAISpan } from '../types.js';
2
+ export declare abstract class BaseAISpan<TType extends AISpanType = any> implements AISpan<TType> {
3
+ abstract id: string;
4
+ abstract traceId: string;
5
+ name: string;
6
+ type: TType;
7
+ attributes: AISpanTypeMap[TType];
8
+ parent?: AnyAISpan;
9
+ startTime: Date;
10
+ endTime?: Date;
11
+ isEvent: boolean;
12
+ isInternal: boolean;
13
+ aiTracing: AITracing;
14
+ input?: any;
15
+ output?: any;
16
+ errorInfo?: {
17
+ message: string;
18
+ id?: string;
19
+ domain?: string;
20
+ category?: string;
21
+ details?: Record<string, any>;
22
+ };
23
+ metadata?: Record<string, any>;
24
+ constructor(options: CreateSpanOptions<TType>, aiTracing: AITracing);
25
+ /** End the span */
26
+ abstract end(options?: EndSpanOptions<TType>): void;
27
+ /** Record an error for the span, optionally end the span as well */
28
+ abstract error(options: ErrorSpanOptions<TType>): void;
29
+ /** Update span attributes */
30
+ abstract update(options: UpdateSpanOptions<TType>): void;
31
+ createChildSpan<TChildType extends AISpanType>(options: ChildSpanOptions<TChildType>): AISpan<TChildType>;
32
+ createEventSpan<TChildType extends AISpanType>(options: ChildEventOptions<TChildType>): AISpan<TChildType>;
33
+ /** Returns `TRUE` if the span is the root span of a trace */
34
+ get isRootSpan(): boolean;
35
+ /** Returns `TRUE` if the span is a valid span (not a NO-OP Span) */
36
+ abstract get isValid(): boolean;
37
+ /** Get the closest parent spanId that isn't an internal span */
38
+ getParentSpanId(includeInternalSpans?: boolean): string | undefined;
39
+ /** Returns a lightweight span ready for export */
40
+ exportSpan(includeInternalSpans?: boolean): ExportedAISpan<TType>;
41
+ }
42
+ export interface DeepCleanOptions {
43
+ keysToStrip?: Set<string>;
44
+ maxDepth?: number;
45
+ }
46
+ /**
47
+ * Recursively cleans a value by removing circular references and stripping problematic or sensitive keys.
48
+ * Circular references are replaced with "[Circular]". Unserializable values are replaced with error messages.
49
+ * Keys like "logger" and "tracingContext" are stripped by default.
50
+ * A maximum recursion depth is enforced to avoid stack overflow or excessive memory usage.
51
+ *
52
+ * @param value - The value to clean (object, array, primitive, etc.)
53
+ * @param options - Optional configuration:
54
+ * - keysToStrip: Set of keys to remove from objects (default: logger, tracingContext)
55
+ * - maxDepth: Maximum recursion depth before values are replaced with "[MaxDepth]" (default: 10)
56
+ * @returns A cleaned version of the input with circular references, specified keys, and overly deep values handled
57
+ */
58
+ export declare function deepClean(value: any, options?: DeepCleanOptions, _seen?: WeakSet<any>, _depth?: number): any;
59
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/spans/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,UAAU,EACV,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACT,cAAc,EACf,MAAM,UAAU,CAAC;AAElB,8BAAsB,UAAU,CAAC,KAAK,SAAS,UAAU,GAAG,GAAG,CAAE,YAAW,MAAM,CAAC,KAAK,CAAC;IACvF,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,OAAO,EAAE,MAAM,CAAC;IAEzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,UAAU,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,SAAS,CAAC,EAAE;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC/B,CAAC;IACK,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAE1B,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS;IAqBnE,mBAAmB;IACnB,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI;IAEnD,oEAAoE;IACpE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI;IAEtD,6BAA6B;IAC7B,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI;IAExD,eAAe,CAAC,UAAU,SAAS,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IAIzG,eAAe,CAAC,UAAU,SAAS,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC;IAI1G,6DAA6D;IAC7D,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,oEAAoE;IACpE,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC;IAEhC,gEAAgE;IACzD,eAAe,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS;IAQ1E,kDAAkD;IAC3C,UAAU,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC;CAkBzE;AASD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,GAAG,EACV,OAAO,GAAE,gBAAqB,EAC9B,KAAK,GAAE,OAAO,CAAC,GAAG,CAAiB,EACnC,MAAM,GAAE,MAAU,GACjB,GAAG,CAwCL"}
@@ -0,0 +1,13 @@
1
+ import type { AISpanType, AITracing, EndSpanOptions, ErrorSpanOptions, UpdateSpanOptions, CreateSpanOptions } from '../types.js';
2
+ import { BaseAISpan } from './base.js';
3
+ export declare class DefaultAISpan<TType extends AISpanType> extends BaseAISpan<TType> {
4
+ id: string;
5
+ traceId: string;
6
+ constructor(options: CreateSpanOptions<TType>, aiTracing: AITracing);
7
+ end(options?: EndSpanOptions<TType>): void;
8
+ error(options: ErrorSpanOptions<TType>): void;
9
+ update(options: UpdateSpanOptions<TType>): void;
10
+ get isValid(): boolean;
11
+ export(): Promise<string>;
12
+ }
13
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/spans/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AAE/C,qBAAa,aAAa,CAAC,KAAK,SAAS,UAAU,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACrE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;gBAEX,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS;IAcnE,GAAG,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI;IAiB1C,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI;IAoC7C,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI;IAoB/C,IAAI,OAAO,IAAI,OAAO,CAErB;IAEK,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;CAUhC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Mastra AI Spans
3
+ */
4
+ export * from './base.js';
5
+ export * from './default.js';
6
+ export * from './no-op.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/spans/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * No Op Implementation for MastraAITracing
3
+ */
4
+ import type { AITracing, AISpanType, CreateSpanOptions, EndSpanOptions, UpdateSpanOptions, ErrorSpanOptions } from '../types.js';
5
+ import { BaseAISpan } from './base.js';
6
+ export declare class NoOpAISpan<TType extends AISpanType = any> extends BaseAISpan<TType> {
7
+ id: string;
8
+ traceId: string;
9
+ constructor(options: CreateSpanOptions<TType>, aiTracing: AITracing);
10
+ end(_options?: EndSpanOptions<TType>): void;
11
+ error(_options: ErrorSpanOptions<TType>): void;
12
+ update(_options: UpdateSpanOptions<TType>): void;
13
+ get isValid(): boolean;
14
+ }
15
+ //# sourceMappingURL=no-op.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"no-op.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/spans/no-op.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,qBAAa,UAAU,CAAC,KAAK,SAAS,UAAU,GAAG,GAAG,CAAE,SAAQ,UAAU,CAAC,KAAK,CAAC;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;gBAEX,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS;IAMnE,GAAG,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI;IAE3C,KAAK,CAAC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI;IAE9C,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,IAAI;IAEhD,IAAI,OAAO,IAAI,OAAO,CAErB;CACF"}
@@ -1,17 +1,15 @@
1
1
  /**
2
2
  * MastraAITracing - Abstract base class for AI Tracing implementations
3
3
  */
4
- import { MastraBase } from '../base.js';
5
- import type { IMastraLogger } from '../logger/index.js';
6
- import type { RuntimeContext } from '../runtime-context/index.js';
7
- import type { AITracingInstanceConfig, AISpan, AISpanOptions, AISpanType, AITracingExporter, AISpanProcessor, AITracingEvent, TraceContext, AISpanTypeMap, AnyAISpan } from './types.js';
4
+ import { MastraBase } from '../../base.js';
5
+ import type { IMastraLogger } from '../../logger/index.js';
6
+ import type { TracingConfig, AISpan, AISpanType, AITracingExporter, AISpanProcessor, AITracingEvent, AnyAISpan, StartSpanOptions, CreateSpanOptions, AITracing, CustomSamplerOptions, AnyExportedAISpan } from '../types.js';
8
7
  /**
9
8
  * Abstract base class for all AI Tracing implementations in Mastra.
10
- *
11
9
  */
12
- export declare abstract class MastraAITracing extends MastraBase {
13
- protected config: Required<AITracingInstanceConfig>;
14
- constructor(config: AITracingInstanceConfig);
10
+ export declare abstract class BaseAITracing extends MastraBase implements AITracing {
11
+ protected config: Required<TracingConfig>;
12
+ constructor(config: TracingConfig);
15
13
  /**
16
14
  * Override setLogger to add AI tracing specific initialization log
17
15
  */
@@ -21,19 +19,7 @@ export declare abstract class MastraAITracing extends MastraBase {
21
19
  /**
22
20
  * Start a new span of a specific AISpanType
23
21
  */
24
- startSpan<TType extends AISpanType>(options: {
25
- type: TType;
26
- name: string;
27
- input?: any;
28
- output?: any;
29
- attributes?: AISpanTypeMap[TType];
30
- metadata?: Record<string, any>;
31
- parent?: AnyAISpan;
32
- startOptions?: {
33
- runtimeContext?: RuntimeContext;
34
- };
35
- isEvent?: boolean;
36
- }): AISpan<TType>;
22
+ startSpan<TType extends AISpanType>(options: StartSpanOptions<TType>): AISpan<TType>;
37
23
  /**
38
24
  * Create a new span (called after sampling)
39
25
  *
@@ -46,11 +32,11 @@ export declare abstract class MastraAITracing extends MastraBase {
46
32
  * - Wire span lifecycle callbacks
47
33
  * - Emit span_started event
48
34
  */
49
- protected abstract createSpan<TType extends AISpanType>(options: AISpanOptions<TType>): AISpan<TType>;
35
+ protected abstract createSpan<TType extends AISpanType>(options: CreateSpanOptions<TType>): AISpan<TType>;
50
36
  /**
51
37
  * Get current configuration
52
38
  */
53
- getConfig(): Readonly<Required<AITracingInstanceConfig>>;
39
+ getConfig(): Readonly<Required<TracingConfig>>;
54
40
  /**
55
41
  * Get all exporters
56
42
  */
@@ -71,11 +57,12 @@ export declare abstract class MastraAITracing extends MastraBase {
71
57
  /**
72
58
  * Check if an AI trace should be sampled
73
59
  */
74
- protected shouldSample(traceContext: TraceContext): boolean;
60
+ protected shouldSample(options?: CustomSamplerOptions): boolean;
75
61
  /**
76
62
  * Process a span through all processors
77
63
  */
78
64
  private processSpan;
65
+ getSpanForExport(span: AnyAISpan): AnyExportedAISpan | undefined;
79
66
  /**
80
67
  * Emit a span started event
81
68
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/tracers/base.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAGlD,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,SAAS,EAGT,gBAAgB,EAChB,iBAAiB,EACjB,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAOlB;;GAEG;AACH,8BAAsB,aAAc,SAAQ,UAAW,YAAW,SAAS;IACzE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAE9B,MAAM,EAAE,aAAa;IAcjC;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,aAAa;IAYjC,SAAS,KAAK,SAAS,IAAI,iBAAiB,EAAE,CAE7C;IAED,SAAS,KAAK,UAAU,IAAI,eAAe,EAAE,CAE5C;IAMD;;OAEG;IACH,SAAS,CAAC,KAAK,SAAS,UAAU,EAAE,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IA0BpF;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,SAAS,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;IAMzG;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAQ9C;;OAEG;IACH,YAAY,IAAI,SAAS,iBAAiB,EAAE;IAI5C;;OAEG;IACH,aAAa,IAAI,SAAS,eAAe,EAAE;IAI3C;;OAEG;IACH,SAAS;IAQT;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAkCzB;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO;IAwB/D;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,iBAAiB,GAAG,SAAS;IAQhE;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAShD;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAS9C;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI;IAShD;;OAEG;cACa,WAAW,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBjE;;OAEG;IACH,IAAI,IAAI,IAAI;IASZ;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAUhC"}
@@ -0,0 +1,7 @@
1
+ import type { AISpanType, AISpan, TracingConfig, CreateSpanOptions } from '../types.js';
2
+ import { BaseAITracing } from './base.js';
3
+ export declare class DefaultAITracing extends BaseAITracing {
4
+ constructor(config: TracingConfig);
5
+ protected createSpan<TType extends AISpanType>(options: CreateSpanOptions<TType>): AISpan<TType>;
6
+ }
7
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/tracers/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,qBAAa,gBAAiB,SAAQ,aAAa;gBACrC,MAAM,EAAE,aAAa;IAIjC,SAAS,CAAC,UAAU,CAAC,KAAK,SAAS,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;CAIjG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Mastra AI Tracers
3
+ */
4
+ export * from './base.js';
5
+ export * from './default.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ai-tracing/tracers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC"}