@mastra/auth-studio 1.3.4-alpha.0 → 1.3.5-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.
@@ -1,4 +1,4 @@
1
- import { i as IMastraLogger, u as RegisteredLogger } from "../index-S1lgaKO7.js";
1
+ import { i as IMastraLogger, u as RegisteredLogger } from "../index-Biaf3BmX.js";
2
2
  //#region src/base/MastraBase.d.ts
3
3
  declare class MastraBase {
4
4
  #private;
@@ -0,0 +1,319 @@
1
+ import { Transform } from "stream";
2
+ //#region src/logger/adapter.d.ts
3
+ /**
4
+ * OpenTelemetry-compatible trace correlation fields, injected at the top
5
+ * level of a logger's native record.
6
+ *
7
+ * Field names are part of the platform contract (snake_case, W3C formats):
8
+ * external consumers (e.g. the Studio logs view reading Railway stdout)
9
+ * parse structured log lines and look for exactly these keys.
10
+ */
11
+ interface TraceFields {
12
+ /** 32-char lowercase hex W3C trace id */
13
+ trace_id: string;
14
+ /**
15
+ * 16-char lowercase hex W3C span id.
16
+ *
17
+ * Optional, and omitted rather than emitted empty: the active span may be
18
+ * one observability never exports (an internal span, or one dropped by
19
+ * `excludeSpanTypes`), leaving no span id a consumer could look up. The
20
+ * trace is still addressable in that case, so the line keeps `trace_id` and
21
+ * drops only this field. Consumers must treat `span_id` as possibly absent.
22
+ */
23
+ span_id?: string;
24
+ }
25
+ /**
26
+ * Destination for log records derived from the logger's native record,
27
+ * exported to Mastra observability. Structurally compatible with
28
+ * `LoggerContext` from `@mastra/core/observability`.
29
+ */
30
+ interface AdapterLogSink {
31
+ debug(message: string, data?: Record<string, unknown>): void;
32
+ info(message: string, data?: Record<string, unknown>): void;
33
+ warn(message: string, data?: Record<string, unknown>): void;
34
+ error(message: string, data?: Record<string, unknown>): void;
35
+ }
36
+ interface LoggerAdapterOptions {
37
+ /** Inject trace_id/span_id into the logger's native records. */
38
+ correlation: boolean;
39
+ /** Export records derived from the native record to Mastra observability. */
40
+ export: boolean;
41
+ }
42
+ /**
43
+ * Context handed to an adaptable logger by Mastra when observability is
44
+ * wired up. All members are safe to call on every log call (synchronous,
45
+ * never throw).
46
+ */
47
+ interface LoggerAdapterContext {
48
+ /**
49
+ * Resolve correlation fields for the currently active span, or undefined
50
+ * when no span is active (in which case no trace fields are added).
51
+ */
52
+ resolveTraceFields: () => TraceFields | undefined;
53
+ /**
54
+ * Resolve the observability log sink at call time. Returns the
55
+ * span-correlated sink when a span is active, the global sink otherwise,
56
+ * and undefined when export is disabled or observability is not
57
+ * initialized. Records must still be written to the native destination
58
+ * regardless.
59
+ */
60
+ getLogSink: () => AdapterLogSink | undefined;
61
+ options: LoggerAdapterOptions;
62
+ }
63
+ /**
64
+ * Capability marker a logger implements to opt into native trace
65
+ * correlation and observability export. When a configured logger implements
66
+ * this, Mastra attaches observability directly instead of wrapping the
67
+ * logger in the deprecated `DualLogger`.
68
+ */
69
+ interface AdaptableLogger extends IMastraLogger {
70
+ __attachObservability(ctx: LoggerAdapterContext): void;
71
+ /**
72
+ * Stable identity for the attachment target. Loggers whose adapter context
73
+ * lives in state shared across a root/child family (e.g. PinoLogger's
74
+ * mixin ref cell) return that shared object, so attaching any family
75
+ * member is recognized as re-attaching the whole family. Defaults to the
76
+ * logger instance itself when absent.
77
+ */
78
+ __observabilityAttachmentKey?(): object;
79
+ }
80
+ declare function isAdaptableLogger(logger: IMastraLogger): logger is AdaptableLogger;
81
+ /**
82
+ * Export a tracked exception through the adapter sink, mirroring the
83
+ * DualLogger dual-write shape (`errorId`/`domain`/`category`/`details`/`cause`
84
+ * when present on a MastraError-like value). Never throws into the caller.
85
+ */
86
+ declare function exportTrackedException(ctx: LoggerAdapterContext | undefined, error: Error, metadata?: Record<string, unknown>): void;
87
+ /**
88
+ * Adapt IMastraLogger's variadic args into the structured `data` payload of
89
+ * an exported log record. Extracts the first plain object as data,
90
+ * serializes an Error arg, and collects remaining primitives under `args`
91
+ * so the derived record preserves all context from the native call.
92
+ */
93
+ declare function buildLogRecordData(args: unknown[]): Record<string, unknown> | undefined;
94
+ //#endregion
95
+ //#region src/logger/index.d.ts
96
+ declare const RegisteredLogger: {
97
+ readonly AGENT: 'AGENT';
98
+ readonly OBSERVABILITY: 'OBSERVABILITY';
99
+ readonly AUTH: 'AUTH';
100
+ readonly BROWSER: 'BROWSER';
101
+ readonly NETWORK: 'NETWORK';
102
+ readonly WORKFLOW: 'WORKFLOW';
103
+ readonly LLM: 'LLM';
104
+ readonly TTS: 'TTS';
105
+ readonly VOICE: 'VOICE';
106
+ readonly VECTOR: 'VECTOR';
107
+ readonly BUNDLER: 'BUNDLER';
108
+ readonly DEPLOYER: 'DEPLOYER';
109
+ readonly MEMORY: 'MEMORY';
110
+ readonly STORAGE: 'STORAGE';
111
+ readonly EMBEDDINGS: 'EMBEDDINGS';
112
+ readonly MCP_SERVER: 'MCP_SERVER';
113
+ readonly SERVER_CACHE: 'SERVER_CACHE';
114
+ readonly SERVER: 'SERVER';
115
+ readonly WORKSPACE: 'WORKSPACE';
116
+ readonly CHANNEL: 'CHANNEL';
117
+ };
118
+ type RegisteredLogger = (typeof RegisteredLogger)[keyof typeof RegisteredLogger];
119
+ declare const LogLevel: {
120
+ readonly DEBUG: 'debug';
121
+ readonly INFO: 'info';
122
+ readonly WARN: 'warn';
123
+ readonly ERROR: 'error';
124
+ readonly NONE: 'silent';
125
+ };
126
+ type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];
127
+ interface BaseLogMessage {
128
+ runId?: string;
129
+ msg: string;
130
+ level: LogLevel;
131
+ time: Date;
132
+ pid: number;
133
+ hostname: string;
134
+ name: string;
135
+ }
136
+ declare abstract class LoggerTransport extends Transform {
137
+ constructor(opts?: any);
138
+ listLogsByRunId(_args: {
139
+ runId: string;
140
+ fromDate?: Date;
141
+ toDate?: Date;
142
+ logLevel?: LogLevel;
143
+ filters?: Record<string, any>;
144
+ page?: number;
145
+ perPage?: number;
146
+ }): Promise<{
147
+ logs: BaseLogMessage[];
148
+ total: number;
149
+ page: number;
150
+ perPage: number;
151
+ hasMore: boolean;
152
+ }>;
153
+ listLogs(_args?: {
154
+ fromDate?: Date;
155
+ toDate?: Date;
156
+ logLevel?: LogLevel;
157
+ filters?: Record<string, any>;
158
+ returnPaginationResults?: boolean;
159
+ page?: number;
160
+ perPage?: number;
161
+ }): Promise<{
162
+ logs: BaseLogMessage[];
163
+ total: number;
164
+ page: number;
165
+ perPage: number;
166
+ hasMore: boolean;
167
+ }>;
168
+ }
169
+ declare const createCustomTransport: (stream: Transform, listLogs?: LoggerTransport['listLogs'], listLogsByRunId?: LoggerTransport['listLogsByRunId']) => LoggerTransport;
170
+ interface IMastraLogger {
171
+ debug(message: string, ...args: any[]): void;
172
+ info(message: string, ...args: any[]): void;
173
+ warn(message: string, ...args: any[]): void;
174
+ error(message: string, ...args: any[]): void;
175
+ trackException(error: Error, metadata?: Record<string, unknown>): void;
176
+ getTransports(): Map<string, LoggerTransport>;
177
+ listLogs(_transportId: string, _params?: {
178
+ fromDate?: Date;
179
+ toDate?: Date;
180
+ logLevel?: LogLevel;
181
+ filters?: Record<string, any>;
182
+ page?: number;
183
+ perPage?: number;
184
+ }): Promise<{
185
+ logs: BaseLogMessage[];
186
+ total: number;
187
+ page: number;
188
+ perPage: number;
189
+ hasMore: boolean;
190
+ }>;
191
+ listLogsByRunId(_args: {
192
+ transportId: string;
193
+ runId: string;
194
+ fromDate?: Date;
195
+ toDate?: Date;
196
+ logLevel?: LogLevel;
197
+ filters?: Record<string, any>;
198
+ page?: number;
199
+ perPage?: number;
200
+ }): Promise<{
201
+ logs: BaseLogMessage[];
202
+ total: number;
203
+ page: number;
204
+ perPage: number;
205
+ hasMore: boolean;
206
+ }>;
207
+ }
208
+ declare abstract class MastraLogger implements IMastraLogger {
209
+ protected name: string;
210
+ protected level: LogLevel;
211
+ protected transports: Map<string, LoggerTransport>;
212
+ constructor(options?: {
213
+ name?: string;
214
+ level?: LogLevel;
215
+ transports?: Record<string, LoggerTransport>;
216
+ });
217
+ abstract debug(message: string, ...args: any[]): void;
218
+ abstract info(message: string, ...args: any[]): void;
219
+ abstract warn(message: string, ...args: any[]): void;
220
+ abstract error(message: string, ...args: any[]): void;
221
+ getTransports(): Map<string, LoggerTransport>;
222
+ trackException(_error: Error, _metadata?: Record<string, unknown>): void;
223
+ listLogs(transportId: string, params?: {
224
+ fromDate?: Date;
225
+ toDate?: Date;
226
+ logLevel?: LogLevel;
227
+ filters?: Record<string, any>;
228
+ page?: number;
229
+ perPage?: number;
230
+ }): Promise<{
231
+ logs: BaseLogMessage[];
232
+ total: number;
233
+ page: number;
234
+ perPage: number;
235
+ hasMore: boolean;
236
+ }>;
237
+ listLogsByRunId({ transportId, runId, fromDate, toDate, logLevel, filters, page, perPage }: {
238
+ transportId: string;
239
+ runId: string;
240
+ fromDate?: Date;
241
+ toDate?: Date;
242
+ logLevel?: LogLevel;
243
+ filters?: Record<string, any>;
244
+ page?: number;
245
+ perPage?: number;
246
+ }): Promise<{
247
+ logs: BaseLogMessage[];
248
+ total: number;
249
+ page: number;
250
+ perPage: number;
251
+ hasMore: boolean;
252
+ }>;
253
+ }
254
+ type LogFilterContext = {
255
+ component?: RegisteredLogger;
256
+ level: LogLevel;
257
+ message: string;
258
+ args: unknown[];
259
+ };
260
+ type LogFilter = (ctx: LogFilterContext) => boolean;
261
+ interface ConsoleLoggerOptions {
262
+ name?: string;
263
+ level?: LogLevel;
264
+ component?: RegisteredLogger;
265
+ filter?: LogFilter;
266
+ }
267
+ declare class ConsoleLogger extends MastraLogger {
268
+ #private;
269
+ protected component?: RegisteredLogger;
270
+ protected filter?: LogFilter;
271
+ constructor(options?: ConsoleLoggerOptions);
272
+ /**
273
+ * Adapter hook (see `AdaptableLogger`): enables native trace correlation
274
+ * (trace_id/span_id appended to console output) and observability export
275
+ * derived from the same record. Called by Mastra during setup.
276
+ */
277
+ __attachObservability(ctx: LoggerAdapterContext): void;
278
+ child(componentOrBindings: RegisteredLogger | Record<string, unknown>): ConsoleLogger;
279
+ private shouldLog;
280
+ private prefix;
281
+ debug(message: string, ...args: any[]): void;
282
+ info(message: string, ...args: any[]): void;
283
+ warn(message: string, ...args: any[]): void;
284
+ error(message: string, ...args: any[]): void;
285
+ trackException(error: Error, metadata?: Record<string, unknown>): void;
286
+ listLogs(_transportId: string, _params?: {
287
+ fromDate?: Date;
288
+ toDate?: Date;
289
+ logLevel?: LogLevel;
290
+ filters?: Record<string, any>;
291
+ page?: number;
292
+ perPage?: number;
293
+ }): Promise<{
294
+ logs: never[];
295
+ total: number;
296
+ page: number;
297
+ perPage: number;
298
+ hasMore: boolean;
299
+ }>;
300
+ listLogsByRunId(_args: {
301
+ transportId: string;
302
+ runId: string;
303
+ fromDate?: Date;
304
+ toDate?: Date;
305
+ logLevel?: LogLevel;
306
+ filters?: Record<string, any>;
307
+ page?: number;
308
+ perPage?: number;
309
+ }): Promise<{
310
+ logs: never[];
311
+ total: number;
312
+ page: number;
313
+ perPage: number;
314
+ hasMore: boolean;
315
+ }>;
316
+ }
317
+ //#endregion
318
+ export { buildLogRecordData as _, LogFilter as a, LoggerTransport as c, createCustomTransport as d, AdaptableLogger as f, TraceFields as g, LoggerAdapterOptions as h, IMastraLogger as i, MastraLogger as l, LoggerAdapterContext as m, ConsoleLogger as n, LogFilterContext as o, AdapterLogSink as p, ConsoleLoggerOptions as r, LogLevel as s, BaseLogMessage as t, RegisteredLogger as u, exportTrackedException as v, isAdaptableLogger as y };
319
+ //# sourceMappingURL=index-Biaf3BmX.d.ts.map
@@ -35,6 +35,17 @@ export type ActorSignal = true | {
35
35
  permissions?: MastraFGAPermissionInput[];
36
36
  /** Additional provider-specific scope for the actor (e.g. tenant, environment). */
37
37
  scope?: Record<string, string>;
38
+ /**
39
+ * Opt in to propagating this actor into the agent/tool calls the framework
40
+ * makes for declarative workflow steps (`.then(agent)` / `.then(tool)`)
41
+ * within this run's own execution tree.
42
+ *
43
+ * Never implicit, and ignored by authorization itself. Custom step
44
+ * `execute` closures are not covered — they already receive `actor` on the
45
+ * step context and must pass it explicitly. The `true` shorthand cannot
46
+ * opt in; use this object form.
47
+ */
48
+ propagate?: boolean;
38
49
  };
39
50
  /**
40
51
  * Optional context for an authorization check.