@cyanheads/mcp-ts-core 0.13.7 → 0.13.8
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/AGENTS.md +3 -3
- package/CLAUDE.md +3 -3
- package/README.md +3 -1
- package/changelog/0.13.x/0.13.8.md +101 -0
- package/dist/config/index.d.ts +9 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +19 -0
- package/dist/config/index.js.map +1 -1
- package/dist/core/app.d.ts.map +1 -1
- package/dist/core/app.js +14 -2
- package/dist/core/app.js.map +1 -1
- package/dist/core/context.d.ts.map +1 -1
- package/dist/core/context.js +13 -3
- package/dist/core/context.js.map +1 -1
- package/dist/core/worker.d.ts +2 -0
- package/dist/core/worker.d.ts.map +1 -1
- package/dist/core/worker.js +2 -0
- package/dist/core/worker.js.map +1 -1
- package/dist/linter/rules/enrichment-rules.d.ts +3 -2
- package/dist/linter/rules/enrichment-rules.d.ts.map +1 -1
- package/dist/linter/rules/enrichment-rules.js +9 -2
- package/dist/linter/rules/enrichment-rules.js.map +1 -1
- package/dist/linter/rules/handler-body-rules.d.ts.map +1 -1
- package/dist/linter/rules/handler-body-rules.js +10 -4
- package/dist/linter/rules/handler-body-rules.js.map +1 -1
- package/dist/linter/rules/schema-rules.d.ts +5 -0
- package/dist/linter/rules/schema-rules.d.ts.map +1 -1
- package/dist/linter/rules/schema-rules.js +44 -17
- package/dist/linter/rules/schema-rules.js.map +1 -1
- package/dist/mcp-server/outputContract.d.ts +33 -0
- package/dist/mcp-server/outputContract.d.ts.map +1 -0
- package/dist/mcp-server/outputContract.js +43 -0
- package/dist/mcp-server/outputContract.js.map +1 -0
- package/dist/mcp-server/resources/utils/resourceHandlerFactory.d.ts.map +1 -1
- package/dist/mcp-server/resources/utils/resourceHandlerFactory.js +10 -2
- package/dist/mcp-server/resources/utils/resourceHandlerFactory.js.map +1 -1
- package/dist/mcp-server/tools/utils/toolHandlerFactory.d.ts +16 -5
- package/dist/mcp-server/tools/utils/toolHandlerFactory.d.ts.map +1 -1
- package/dist/mcp-server/tools/utils/toolHandlerFactory.js +65 -13
- package/dist/mcp-server/tools/utils/toolHandlerFactory.js.map +1 -1
- package/dist/mcp-server/transports/auth/lib/authUtils.js +4 -1
- package/dist/mcp-server/transports/auth/lib/authUtils.js.map +1 -1
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.d.ts.map +1 -1
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js +1 -1
- package/dist/mcp-server/transports/auth/strategies/jwtStrategy.js.map +1 -1
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.d.ts.map +1 -1
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js +2 -5
- package/dist/mcp-server/transports/auth/strategies/oauthStrategy.js.map +1 -1
- package/dist/mcp-server/transports/http/sessionStore.d.ts.map +1 -1
- package/dist/mcp-server/transports/http/sessionStore.js +2 -2
- package/dist/mcp-server/transports/http/sessionStore.js.map +1 -1
- package/dist/services/canvas/core/CanvasRegistry.js +1 -1
- package/dist/services/canvas/core/CanvasRegistry.js.map +1 -1
- package/dist/services/canvas/core/DataCanvas.d.ts.map +1 -1
- package/dist/services/canvas/core/DataCanvas.js +7 -5
- package/dist/services/canvas/core/DataCanvas.js.map +1 -1
- package/dist/services/canvas/core/canvasFactory.d.ts.map +1 -1
- package/dist/services/canvas/core/canvasFactory.js +2 -2
- package/dist/services/canvas/core/canvasFactory.js.map +1 -1
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.d.ts.map +1 -1
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.js +25 -16
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.js.map +1 -1
- package/dist/services/llm/providers/openrouter.provider.js +1 -1
- package/dist/services/llm/providers/openrouter.provider.js.map +1 -1
- package/dist/services/speech/providers/elevenlabs.provider.js +3 -3
- package/dist/services/speech/providers/elevenlabs.provider.js.map +1 -1
- package/dist/services/speech/providers/whisper.provider.d.ts.map +1 -1
- package/dist/services/speech/providers/whisper.provider.js +5 -5
- package/dist/services/speech/providers/whisper.provider.js.map +1 -1
- package/dist/storage/core/StorageService.d.ts.map +1 -1
- package/dist/storage/core/StorageService.js +3 -6
- package/dist/storage/core/StorageService.js.map +1 -1
- package/dist/storage/core/storageFactory.d.ts.map +1 -1
- package/dist/storage/core/storageFactory.js +12 -15
- package/dist/storage/core/storageFactory.js.map +1 -1
- package/dist/storage/core/storageValidation.d.ts +13 -13
- package/dist/storage/core/storageValidation.d.ts.map +1 -1
- package/dist/storage/core/storageValidation.js +49 -125
- package/dist/storage/core/storageValidation.js.map +1 -1
- package/dist/storage/providers/cloudflare/d1Provider.d.ts.map +1 -1
- package/dist/storage/providers/cloudflare/d1Provider.js +5 -3
- package/dist/storage/providers/cloudflare/d1Provider.js.map +1 -1
- package/dist/storage/providers/cloudflare/kvProvider.d.ts.map +1 -1
- package/dist/storage/providers/cloudflare/kvProvider.js +1 -1
- package/dist/storage/providers/cloudflare/kvProvider.js.map +1 -1
- package/dist/storage/providers/cloudflare/r2Provider.d.ts.map +1 -1
- package/dist/storage/providers/cloudflare/r2Provider.js +3 -3
- package/dist/storage/providers/cloudflare/r2Provider.js.map +1 -1
- package/dist/storage/providers/fileSystem/fileSystemProvider.js +4 -4
- package/dist/storage/providers/fileSystem/fileSystemProvider.js.map +1 -1
- package/dist/storage/providers/inMemory/inMemoryProvider.d.ts +1 -1
- package/dist/storage/providers/inMemory/inMemoryProvider.d.ts.map +1 -1
- package/dist/storage/providers/inMemory/inMemoryProvider.js +6 -5
- package/dist/storage/providers/inMemory/inMemoryProvider.js.map +1 -1
- package/dist/testing/fuzz.d.ts.map +1 -1
- package/dist/testing/fuzz.js +7 -1
- package/dist/testing/fuzz.js.map +1 -1
- package/dist/testing/index.d.ts +15 -2
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +51 -6
- package/dist/testing/index.js.map +1 -1
- package/dist/types-global/errors.d.ts +7 -4
- package/dist/types-global/errors.d.ts.map +1 -1
- package/dist/types-global/errors.js.map +1 -1
- package/dist/utils/formatting/codeSpan.d.ts +27 -0
- package/dist/utils/formatting/codeSpan.d.ts.map +1 -0
- package/dist/utils/formatting/codeSpan.js +42 -0
- package/dist/utils/formatting/codeSpan.js.map +1 -0
- package/dist/utils/formatting/diffFormatter.d.ts.map +1 -1
- package/dist/utils/formatting/diffFormatter.js +7 -15
- package/dist/utils/formatting/diffFormatter.js.map +1 -1
- package/dist/utils/formatting/markdownBuilder.d.ts +12 -5
- package/dist/utils/formatting/markdownBuilder.d.ts.map +1 -1
- package/dist/utils/formatting/markdownBuilder.js +14 -2
- package/dist/utils/formatting/markdownBuilder.js.map +1 -1
- package/dist/utils/formatting/tableFormatter.d.ts.map +1 -1
- package/dist/utils/formatting/tableFormatter.js +5 -9
- package/dist/utils/formatting/tableFormatter.js.map +1 -1
- package/dist/utils/formatting/treeFormatter.d.ts.map +1 -1
- package/dist/utils/formatting/treeFormatter.js +5 -9
- package/dist/utils/formatting/treeFormatter.js.map +1 -1
- package/dist/utils/internal/error-handler/errorHandler.d.ts +17 -10
- package/dist/utils/internal/error-handler/errorHandler.d.ts.map +1 -1
- package/dist/utils/internal/error-handler/errorHandler.js +47 -26
- package/dist/utils/internal/error-handler/errorHandler.js.map +1 -1
- package/dist/utils/internal/error-handler/mappings.d.ts +17 -1
- package/dist/utils/internal/error-handler/mappings.d.ts.map +1 -1
- package/dist/utils/internal/error-handler/mappings.js +22 -1
- package/dist/utils/internal/error-handler/mappings.js.map +1 -1
- package/dist/utils/internal/error-handler/types.d.ts +2 -0
- package/dist/utils/internal/error-handler/types.d.ts.map +1 -1
- package/dist/utils/internal/logger.d.ts +75 -3
- package/dist/utils/internal/logger.d.ts.map +1 -1
- package/dist/utils/internal/logger.js +181 -52
- package/dist/utils/internal/logger.js.map +1 -1
- package/dist/utils/internal/performance.d.ts +11 -0
- package/dist/utils/internal/performance.d.ts.map +1 -1
- package/dist/utils/internal/performance.js +46 -12
- package/dist/utils/internal/performance.js.map +1 -1
- package/dist/utils/network/fetchWithTimeout.d.ts +11 -5
- package/dist/utils/network/fetchWithTimeout.d.ts.map +1 -1
- package/dist/utils/network/fetchWithTimeout.js +50 -23
- package/dist/utils/network/fetchWithTimeout.js.map +1 -1
- package/dist/utils/network/retry.d.ts +16 -8
- package/dist/utils/network/retry.d.ts.map +1 -1
- package/dist/utils/network/retry.js +19 -8
- package/dist/utils/network/retry.js.map +1 -1
- package/dist/utils/overflow/outlineOnOverflow.d.ts +18 -2
- package/dist/utils/overflow/outlineOnOverflow.d.ts.map +1 -1
- package/dist/utils/overflow/outlineOnOverflow.js +28 -3
- package/dist/utils/overflow/outlineOnOverflow.js.map +1 -1
- package/dist/utils/pagination/pagination.d.ts +3 -1
- package/dist/utils/pagination/pagination.d.ts.map +1 -1
- package/dist/utils/pagination/pagination.js +10 -2
- package/dist/utils/pagination/pagination.js.map +1 -1
- package/dist/utils/parsing/csvParser.d.ts.map +1 -1
- package/dist/utils/parsing/csvParser.js +4 -2
- package/dist/utils/parsing/csvParser.js.map +1 -1
- package/dist/utils/parsing/htmlExtractor.js +1 -1
- package/dist/utils/parsing/htmlExtractor.js.map +1 -1
- package/dist/utils/parsing/jsonParser.d.ts.map +1 -1
- package/dist/utils/parsing/jsonParser.js +3 -1
- package/dist/utils/parsing/jsonParser.js.map +1 -1
- package/dist/utils/parsing/xmlParser.d.ts.map +1 -1
- package/dist/utils/parsing/xmlParser.js +3 -1
- package/dist/utils/parsing/xmlParser.js.map +1 -1
- package/dist/utils/parsing/yamlParser.d.ts.map +1 -1
- package/dist/utils/parsing/yamlParser.js +3 -1
- package/dist/utils/parsing/yamlParser.js.map +1 -1
- package/dist/utils/security/idGenerator.d.ts.map +1 -1
- package/dist/utils/security/idGenerator.js +20 -4
- package/dist/utils/security/idGenerator.js.map +1 -1
- package/dist/utils/security/sanitization.d.ts +31 -0
- package/dist/utils/security/sanitization.d.ts.map +1 -1
- package/dist/utils/security/sanitization.js +98 -11
- package/dist/utils/security/sanitization.js.map +1 -1
- package/dist/utils/telemetry/attributes.d.ts +16 -1
- package/dist/utils/telemetry/attributes.d.ts.map +1 -1
- package/dist/utils/telemetry/attributes.js +16 -1
- package/dist/utils/telemetry/attributes.js.map +1 -1
- package/dist/utils/telemetry/instrumentation.d.ts +9 -3
- package/dist/utils/telemetry/instrumentation.d.ts.map +1 -1
- package/dist/utils/telemetry/instrumentation.js +85 -13
- package/dist/utils/telemetry/instrumentation.js.map +1 -1
- package/framework-skills/api-auth/SKILL.md +3 -1
- package/framework-skills/api-canvas/SKILL.md +3 -3
- package/framework-skills/api-config/SKILL.md +6 -3
- package/framework-skills/api-context/SKILL.md +3 -3
- package/framework-skills/api-errors/SKILL.md +16 -11
- package/framework-skills/api-linter/SKILL.md +7 -3
- package/framework-skills/api-telemetry/SKILL.md +31 -11
- package/framework-skills/api-testing/SKILL.md +5 -3
- package/framework-skills/api-utils/SKILL.md +9 -9
- package/framework-skills/api-utils/references/formatting.md +1 -1
- package/framework-skills/api-utils/references/parsing.md +2 -2
- package/framework-skills/api-utils/references/security.md +6 -4
- package/framework-skills/git-wrapup/SKILL.md +5 -2
- package/framework-skills/maintenance/SKILL.md +2 -2
- package/framework-skills/polish-docs-meta/SKILL.md +1 -1
- package/framework-skills/polish-docs-meta/references/readme.md +1 -0
- package/framework-skills/release-and-publish/SKILL.md +2 -2
- package/framework-skills/techniques/SKILL.md +1 -1
- package/framework-skills/techniques/references/outline-on-overflow.md +12 -7
- package/package.json +18 -3
- package/scripts/check-skill-versions.ts +103 -22
- package/scripts/devcheck.ts +4 -3
- package/scripts/lint-packaging.ts +38 -1
- package/templates/.env.example +4 -0
- package/templates/Dockerfile +26 -6
- package/templates/package.json +1 -0
|
@@ -9,6 +9,34 @@ import { type RequestContext } from './requestContext.js';
|
|
|
9
9
|
* - `alert` / `emerg` → pino `fatal`
|
|
10
10
|
*/
|
|
11
11
|
export type McpLogLevel = 'debug' | 'info' | 'notice' | 'warning' | 'error' | 'crit' | 'alert' | 'emerg';
|
|
12
|
+
/** The three file sinks under `logsPath`. */
|
|
13
|
+
declare const FILE_SINK_NAMES: readonly ['combined.log', 'error.log', 'interactions.log'];
|
|
14
|
+
type FileSinkName = (typeof FILE_SINK_NAMES)[number];
|
|
15
|
+
/** A file sink the startup probe could not open, with the error code that stopped it. */
|
|
16
|
+
interface DroppedFileSink {
|
|
17
|
+
code: string;
|
|
18
|
+
name: FileSinkName;
|
|
19
|
+
path: string;
|
|
20
|
+
}
|
|
21
|
+
/** Outcome of {@link probeFileSinks}: the openable destinations by name, and the rest. */
|
|
22
|
+
interface FileSinkProbe {
|
|
23
|
+
dropped: DroppedFileSink[];
|
|
24
|
+
writable: Partial<Record<FileSinkName, string>>;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Opens each file sink under `dir` for append and closes it again,
|
|
28
|
+
* synchronously, before any transport exists. `pino/file` opens its
|
|
29
|
+
* destination inside the transport worker, where a failure surfaces as an
|
|
30
|
+
* unhandled `'error'` that ends the process and takes the stderr sink sharing
|
|
31
|
+
* that worker with it — so an unwritable destination has to be found here and
|
|
32
|
+
* left out, not discovered there.
|
|
33
|
+
*
|
|
34
|
+
* A directory that cannot be created drops every sink under it with the
|
|
35
|
+
* `mkdir` error code.
|
|
36
|
+
*
|
|
37
|
+
* @internal Exported only for unit testing. Not part of the public API.
|
|
38
|
+
*/
|
|
39
|
+
export declare function probeFileSinks(dir: string): Promise<FileSinkProbe>;
|
|
12
40
|
/**
|
|
13
41
|
* Pino `formatters.log` hook. Strips values that break pino-redact's wildcard
|
|
14
42
|
* traversal on Node 25+ — notably `AbortSignal` (via `ctx.signal`) and the
|
|
@@ -19,14 +47,52 @@ export type McpLogLevel = 'debug' | 'info' | 'notice' | 'warning' | 'error' | 'c
|
|
|
19
47
|
* @internal Exported only for unit testing. Not part of the public API.
|
|
20
48
|
*/
|
|
21
49
|
export declare function sanitizeLogBindings(obj: Record<string, unknown>): Record<string, unknown>;
|
|
50
|
+
/**
|
|
51
|
+
* The record shape an OTel Logs API `Logger` accepts, narrowed to the fields
|
|
52
|
+
* the framework sets. Declared here rather than imported so this module's
|
|
53
|
+
* public types never require the optional `@opentelemetry/api-logs` peer.
|
|
54
|
+
*
|
|
55
|
+
* @internal Exported only for tests that capture records. Not part of the public API.
|
|
56
|
+
*/
|
|
57
|
+
export interface OtelLogRecord {
|
|
58
|
+
attributes: Record<string, OtelAttributeValue>;
|
|
59
|
+
body: string;
|
|
60
|
+
severityNumber: number;
|
|
61
|
+
severityText: McpLogLevel;
|
|
62
|
+
}
|
|
63
|
+
/** An attribute value as the OTel Logs API `AnyValue` accepts it. */
|
|
64
|
+
type OtelAttributeValue = string | number | boolean | Uint8Array | null | undefined | OtelAttributeValue[] | {
|
|
65
|
+
[key: string]: OtelAttributeValue;
|
|
66
|
+
};
|
|
67
|
+
/** The one method of an OTel Logs API `Logger` the framework logger calls. */
|
|
68
|
+
interface OtelLogSink {
|
|
69
|
+
emit(record: OtelLogRecord): void;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Attaches (or, with `undefined`, detaches) the OTel Logs API sink that every
|
|
73
|
+
* record passing the logger's level filter and rate limit is also emitted to.
|
|
74
|
+
* `initializeOpenTelemetry` attaches it when OTLP log export is configured
|
|
75
|
+
* and `shutdownOpenTelemetry` detaches it.
|
|
76
|
+
*
|
|
77
|
+
* A module function rather than a `Logger` method, so the published `Logger`
|
|
78
|
+
* type carries no telemetry-lifecycle hook.
|
|
79
|
+
*
|
|
80
|
+
* @internal Called by the telemetry lifecycle and tests. Not part of the public API.
|
|
81
|
+
*/
|
|
82
|
+
export declare function setOtelLogSink(sink: OtelLogSink | undefined): void;
|
|
22
83
|
/**
|
|
23
84
|
* Singleton structured logger backed by Pino with RFC 5424 level semantics.
|
|
24
85
|
*
|
|
25
86
|
* Features:
|
|
26
87
|
* - Environment-adaptive output: pretty-printed (pino-pretty) in HTTP development mode,
|
|
27
88
|
* JSON to stderr in stdio/production mode (MCP spec requires clean stdout).
|
|
28
|
-
* - Optional file sinks: `combined.log`
|
|
29
|
-
* errors and above, and `interactions.log` for structured
|
|
89
|
+
* - Optional file sinks: `combined.log` with every record the active level admits,
|
|
90
|
+
* `error.log` for errors and above, and `interactions.log` for structured
|
|
91
|
+
* interaction records. A file sink that cannot be opened at startup is dropped
|
|
92
|
+
* with one `warning` naming it; the process and the remaining sinks carry on.
|
|
93
|
+
* - Optional OTel log export: once `initializeOpenTelemetry` attaches a Logs API
|
|
94
|
+
* sink, every record that passes the level filter and rate limit is also emitted
|
|
95
|
+
* there, redacted like the pino output.
|
|
30
96
|
* - Sensitive field redaction via Pino's `redact` option.
|
|
31
97
|
* - Rate limiting per level + message to suppress log storms, configurable via
|
|
32
98
|
* `MCP_LOG_RATE_LIMIT_THRESHOLD` (0 disables) and `MCP_LOG_RATE_LIMIT_WINDOW_MS`.
|
|
@@ -59,6 +125,8 @@ export declare class Logger {
|
|
|
59
125
|
private pendingRecords;
|
|
60
126
|
private droppedPendingRecords;
|
|
61
127
|
private everInitialized;
|
|
128
|
+
/** Set when the startup probe dropped `interactions.log`, which the startup warning already reported. */
|
|
129
|
+
private interactionSinkDropped;
|
|
62
130
|
private constructor();
|
|
63
131
|
/**
|
|
64
132
|
* Returns the singleton `Logger` instance.
|
|
@@ -93,6 +161,8 @@ export declare class Logger {
|
|
|
93
161
|
* ```
|
|
94
162
|
*/
|
|
95
163
|
initialize(level?: McpLogLevel, transportType?: 'stdio' | 'http'): Promise<void>;
|
|
164
|
+
/** Emits the one warning that names every file sink the startup probe dropped. */
|
|
165
|
+
private reportDroppedFileSinks;
|
|
96
166
|
/**
|
|
97
167
|
* Changes the active log level at runtime without restarting transports.
|
|
98
168
|
*
|
|
@@ -354,7 +424,8 @@ export declare class Logger {
|
|
|
354
424
|
* `Logger.getInstance()` in most contexts.
|
|
355
425
|
*
|
|
356
426
|
* Must be initialized once at startup via `logger.initialize()` before any log methods
|
|
357
|
-
* will produce output. Log calls made before initialization are
|
|
427
|
+
* will produce output. Log calls made before initialization are held in a bounded
|
|
428
|
+
* buffer and replayed once the sinks exist.
|
|
358
429
|
*
|
|
359
430
|
* @example
|
|
360
431
|
* ```ts
|
|
@@ -369,4 +440,5 @@ export declare class Logger {
|
|
|
369
440
|
* ```
|
|
370
441
|
*/
|
|
371
442
|
export declare const logger: Logger;
|
|
443
|
+
export {};
|
|
372
444
|
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/internal/logger.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,cAAc,EAGpB,MAAM,oCAAoC,CAAC;AAI5C;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,MAAM,GACN,QAAQ,GACR,SAAS,GACT,OAAO,GACP,MAAM,GACN,OAAO,GACP,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/internal/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,6 +20,73 @@ const pinoToMcpLevelSeverity = {
|
|
|
20
20
|
info: 6,
|
|
21
21
|
debug: 7,
|
|
22
22
|
};
|
|
23
|
+
/**
|
|
24
|
+
* OTel `SeverityNumber` per MCP level. Each RFC 5424 level sharing a pino level
|
|
25
|
+
* with a milder one takes the next step inside the same OTel range, so export
|
|
26
|
+
* keeps the ordering pino collapses.
|
|
27
|
+
*/
|
|
28
|
+
const mcpToOtelSeverity = {
|
|
29
|
+
debug: 5, // DEBUG
|
|
30
|
+
info: 9, // INFO
|
|
31
|
+
notice: 10, // INFO2
|
|
32
|
+
warning: 13, // WARN
|
|
33
|
+
error: 17, // ERROR
|
|
34
|
+
crit: 18, // ERROR2
|
|
35
|
+
alert: 21, // FATAL
|
|
36
|
+
emerg: 22, // FATAL2
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Level every non-error sink is built with: the lowest the framework emits.
|
|
40
|
+
* A transport target without its own `level` defaults to `info`, and target
|
|
41
|
+
* levels are fixed when the transport is built, so anything higher would
|
|
42
|
+
* filter records the logger's active level — the only intended gate — admits,
|
|
43
|
+
* at startup and after {@link Logger.setLevel} alike.
|
|
44
|
+
*/
|
|
45
|
+
const ALL_RECORDS_LEVEL = 'debug';
|
|
46
|
+
/** A `pino/file` transport target writing to a file path or file descriptor. */
|
|
47
|
+
function fileTarget(destination, level = ALL_RECORDS_LEVEL) {
|
|
48
|
+
return { level, target: 'pino/file', options: { destination } };
|
|
49
|
+
}
|
|
50
|
+
/** The three file sinks under `logsPath`. */
|
|
51
|
+
const FILE_SINK_NAMES = ['combined.log', 'error.log', 'interactions.log'];
|
|
52
|
+
/**
|
|
53
|
+
* Opens each file sink under `dir` for append and closes it again,
|
|
54
|
+
* synchronously, before any transport exists. `pino/file` opens its
|
|
55
|
+
* destination inside the transport worker, where a failure surfaces as an
|
|
56
|
+
* unhandled `'error'` that ends the process and takes the stderr sink sharing
|
|
57
|
+
* that worker with it — so an unwritable destination has to be found here and
|
|
58
|
+
* left out, not discovered there.
|
|
59
|
+
*
|
|
60
|
+
* A directory that cannot be created drops every sink under it with the
|
|
61
|
+
* `mkdir` error code.
|
|
62
|
+
*
|
|
63
|
+
* @internal Exported only for unit testing. Not part of the public API.
|
|
64
|
+
*/
|
|
65
|
+
export async function probeFileSinks(dir) {
|
|
66
|
+
const { default: fs } = await import('node:fs');
|
|
67
|
+
const { default: path } = await import('node:path');
|
|
68
|
+
const probe = { dropped: [], writable: {} };
|
|
69
|
+
const codeOf = (err) => err.code ?? (err instanceof Error ? err.message : String(err));
|
|
70
|
+
try {
|
|
71
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
72
|
+
}
|
|
73
|
+
catch (err) {
|
|
74
|
+
const code = codeOf(err);
|
|
75
|
+
probe.dropped = FILE_SINK_NAMES.map((name) => ({ code, name, path: path.join(dir, name) }));
|
|
76
|
+
return probe;
|
|
77
|
+
}
|
|
78
|
+
for (const name of FILE_SINK_NAMES) {
|
|
79
|
+
const destination = path.join(dir, name);
|
|
80
|
+
try {
|
|
81
|
+
fs.closeSync(fs.openSync(destination, 'a'));
|
|
82
|
+
probe.writable[name] = destination;
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
probe.dropped.push({ code: codeOf(err), name, path: destination });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return probe;
|
|
89
|
+
}
|
|
23
90
|
/**
|
|
24
91
|
* Evaluated at call time (not module load) so worker.ts can set
|
|
25
92
|
* `process.env.IS_SERVERLESS = 'true'` before the first log call. The
|
|
@@ -116,14 +183,87 @@ function sanitizeValue(value, depth) {
|
|
|
116
183
|
export function sanitizeLogBindings(obj) {
|
|
117
184
|
return sanitizeValue(obj, 0);
|
|
118
185
|
}
|
|
186
|
+
const SENSITIVE_FIELD_NAMES = new Set(DEFAULT_SENSITIVE_FIELDS);
|
|
187
|
+
/**
|
|
188
|
+
* Converts one sanitized binding into an attribute value: an `Error` becomes
|
|
189
|
+
* the `type`/`message`/`stack` object pino's serializer would have written, and
|
|
190
|
+
* a primitive JSON has no form for becomes its string.
|
|
191
|
+
*/
|
|
192
|
+
function toExportValue(value) {
|
|
193
|
+
if (value instanceof Error)
|
|
194
|
+
return { message: value.message, stack: value.stack, type: value.name };
|
|
195
|
+
if (Array.isArray(value))
|
|
196
|
+
return value.map(toExportValue);
|
|
197
|
+
if (value !== null && typeof value === 'object') {
|
|
198
|
+
return toExportAttributes(value);
|
|
199
|
+
}
|
|
200
|
+
if (typeof value === 'bigint' || typeof value === 'symbol')
|
|
201
|
+
return String(value);
|
|
202
|
+
return value;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Builds exported attributes from sanitized bindings, replacing every field
|
|
206
|
+
* named in {@link DEFAULT_SENSITIVE_FIELDS} at any depth. OTel records bypass
|
|
207
|
+
* pino's `redact`, so without this a value kept out of every file and stream
|
|
208
|
+
* would leave the process in the clear.
|
|
209
|
+
*/
|
|
210
|
+
function toExportAttributes(fields) {
|
|
211
|
+
const out = {};
|
|
212
|
+
for (const [key, field] of Object.entries(fields)) {
|
|
213
|
+
out[key] = SENSITIVE_FIELD_NAMES.has(key) ? '[REDACTED]' : toExportValue(field);
|
|
214
|
+
}
|
|
215
|
+
return out;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Builds the OTel record for one framework log line: the message as the body,
|
|
219
|
+
* the sanitized and redacted bindings as attributes, and an `Error` as the
|
|
220
|
+
* `exception.*` semantic-convention attributes. Trace context is left to the
|
|
221
|
+
* Logs API, which takes it from the active context at emit time.
|
|
222
|
+
*/
|
|
223
|
+
function toOtelLogRecord(level, msg, bindings, error) {
|
|
224
|
+
const attributes = toExportAttributes(sanitizeLogBindings(bindings));
|
|
225
|
+
if (error) {
|
|
226
|
+
attributes['exception.type'] = error.name;
|
|
227
|
+
attributes['exception.message'] = error.message;
|
|
228
|
+
if (error.stack)
|
|
229
|
+
attributes['exception.stacktrace'] = error.stack;
|
|
230
|
+
}
|
|
231
|
+
return {
|
|
232
|
+
attributes,
|
|
233
|
+
body: msg,
|
|
234
|
+
severityNumber: mcpToOtelSeverity[level],
|
|
235
|
+
severityText: level,
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
/** The OTel Logs API sink every written record is also emitted to, when attached. */
|
|
239
|
+
let otelLogSink;
|
|
240
|
+
/**
|
|
241
|
+
* Attaches (or, with `undefined`, detaches) the OTel Logs API sink that every
|
|
242
|
+
* record passing the logger's level filter and rate limit is also emitted to.
|
|
243
|
+
* `initializeOpenTelemetry` attaches it when OTLP log export is configured
|
|
244
|
+
* and `shutdownOpenTelemetry` detaches it.
|
|
245
|
+
*
|
|
246
|
+
* A module function rather than a `Logger` method, so the published `Logger`
|
|
247
|
+
* type carries no telemetry-lifecycle hook.
|
|
248
|
+
*
|
|
249
|
+
* @internal Called by the telemetry lifecycle and tests. Not part of the public API.
|
|
250
|
+
*/
|
|
251
|
+
export function setOtelLogSink(sink) {
|
|
252
|
+
otelLogSink = sink;
|
|
253
|
+
}
|
|
119
254
|
/**
|
|
120
255
|
* Singleton structured logger backed by Pino with RFC 5424 level semantics.
|
|
121
256
|
*
|
|
122
257
|
* Features:
|
|
123
258
|
* - Environment-adaptive output: pretty-printed (pino-pretty) in HTTP development mode,
|
|
124
259
|
* JSON to stderr in stdio/production mode (MCP spec requires clean stdout).
|
|
125
|
-
* - Optional file sinks: `combined.log`
|
|
126
|
-
* errors and above, and `interactions.log` for structured
|
|
260
|
+
* - Optional file sinks: `combined.log` with every record the active level admits,
|
|
261
|
+
* `error.log` for errors and above, and `interactions.log` for structured
|
|
262
|
+
* interaction records. A file sink that cannot be opened at startup is dropped
|
|
263
|
+
* with one `warning` naming it; the process and the remaining sinks carry on.
|
|
264
|
+
* - Optional OTel log export: once `initializeOpenTelemetry` attaches a Logs API
|
|
265
|
+
* sink, every record that passes the level filter and rate limit is also emitted
|
|
266
|
+
* there, redacted like the pino output.
|
|
127
267
|
* - Sensitive field redaction via Pino's `redact` option.
|
|
128
268
|
* - Rate limiting per level + message to suppress log storms, configurable via
|
|
129
269
|
* `MCP_LOG_RATE_LIMIT_THRESHOLD` (0 disables) and `MCP_LOG_RATE_LIMIT_WINDOW_MS`.
|
|
@@ -156,6 +296,8 @@ export class Logger {
|
|
|
156
296
|
pendingRecords = [];
|
|
157
297
|
droppedPendingRecords = 0;
|
|
158
298
|
everInitialized = false;
|
|
299
|
+
/** Set when the startup probe dropped `interactions.log`, which the startup warning already reported. */
|
|
300
|
+
interactionSinkDropped = false;
|
|
159
301
|
constructor() {
|
|
160
302
|
// The constructor is now safe to call in a global scope.
|
|
161
303
|
}
|
|
@@ -174,7 +316,7 @@ export class Logger {
|
|
|
174
316
|
static getInstance() {
|
|
175
317
|
return Logger.instance;
|
|
176
318
|
}
|
|
177
|
-
async createPinoLogger(level, transportType) {
|
|
319
|
+
async createPinoLogger(level, transportType, fileSinks) {
|
|
178
320
|
const pinoLevel = mcpToPinoLevel[level] ?? 'info';
|
|
179
321
|
const pinoOptions = {
|
|
180
322
|
level: pinoLevel,
|
|
@@ -194,9 +336,6 @@ export class Logger {
|
|
|
194
336
|
if (isServerless()) {
|
|
195
337
|
return pino(pinoOptions);
|
|
196
338
|
}
|
|
197
|
-
// Node.js specific transports
|
|
198
|
-
const { default: fs } = await import('node:fs');
|
|
199
|
-
const { default: path } = await import('node:path');
|
|
200
339
|
const transports = [];
|
|
201
340
|
const isDevelopment = config.environment === 'development';
|
|
202
341
|
const isTest = config.environment === 'testing';
|
|
@@ -214,6 +353,7 @@ export class Logger {
|
|
|
214
353
|
const require = createRequire(import.meta.url);
|
|
215
354
|
const prettyTarget = require.resolve('pino-pretty');
|
|
216
355
|
transports.push({
|
|
356
|
+
level: ALL_RECORDS_LEVEL,
|
|
217
357
|
target: prettyTarget,
|
|
218
358
|
options: { colorize: true, translateTime: 'yyyy-mm-dd HH:MM:ss' },
|
|
219
359
|
});
|
|
@@ -223,50 +363,24 @@ export class Logger {
|
|
|
223
363
|
if (process.stderr?.isTTY) {
|
|
224
364
|
console.warn(`[Logger Init] Pretty transport unavailable (${err instanceof Error ? err.message : String(err)}); falling back to stdout JSON.`);
|
|
225
365
|
}
|
|
226
|
-
transports.push(
|
|
366
|
+
transports.push(fileTarget(1));
|
|
227
367
|
}
|
|
228
368
|
}
|
|
229
369
|
else if (!isTest) {
|
|
230
370
|
// CRITICAL: For STDIO transport, logs MUST go to stderr (fd 2), NOT stdout (fd 1).
|
|
231
371
|
// The MCP specification requires only JSON-RPC messages on stdout.
|
|
232
372
|
// For HTTP transport or production, we also use stderr to avoid polluting stdout.
|
|
233
|
-
transports.push(
|
|
234
|
-
}
|
|
235
|
-
if (config.logsPath) {
|
|
236
|
-
try {
|
|
237
|
-
if (!fs.existsSync(config.logsPath)) {
|
|
238
|
-
fs.mkdirSync(config.logsPath, { recursive: true });
|
|
239
|
-
}
|
|
240
|
-
transports.push({
|
|
241
|
-
level: pinoLevel,
|
|
242
|
-
target: 'pino/file',
|
|
243
|
-
options: {
|
|
244
|
-
destination: path.join(config.logsPath, 'combined.log'),
|
|
245
|
-
mkdir: true,
|
|
246
|
-
},
|
|
247
|
-
});
|
|
248
|
-
transports.push({
|
|
249
|
-
level: 'error',
|
|
250
|
-
target: 'pino/file',
|
|
251
|
-
options: {
|
|
252
|
-
destination: path.join(config.logsPath, 'error.log'),
|
|
253
|
-
mkdir: true,
|
|
254
|
-
},
|
|
255
|
-
});
|
|
256
|
-
}
|
|
257
|
-
catch (err) {
|
|
258
|
-
// Only log to console if TTY to avoid polluting stderr in STDIO mode
|
|
259
|
-
if (process.stderr?.isTTY) {
|
|
260
|
-
console.error(`[Logger Init] Failed to configure file logging: ${err instanceof Error ? err.message : String(err)}`);
|
|
261
|
-
}
|
|
262
|
-
}
|
|
373
|
+
transports.push(fileTarget(2));
|
|
263
374
|
}
|
|
375
|
+
if (fileSinks['combined.log'])
|
|
376
|
+
transports.push(fileTarget(fileSinks['combined.log']));
|
|
377
|
+
if (fileSinks['error.log'])
|
|
378
|
+
transports.push(fileTarget(fileSinks['error.log'], 'error'));
|
|
264
379
|
return pino({ ...pinoOptions, transport: { targets: transports } });
|
|
265
380
|
}
|
|
266
|
-
|
|
267
|
-
if (
|
|
381
|
+
createInteractionLogger(destination) {
|
|
382
|
+
if (!destination)
|
|
268
383
|
return;
|
|
269
|
-
const { default: path } = await import('node:path');
|
|
270
384
|
return pino({
|
|
271
385
|
redact: {
|
|
272
386
|
paths: SENSITIVE_PINO_FIELDS,
|
|
@@ -277,10 +391,7 @@ export class Logger {
|
|
|
277
391
|
},
|
|
278
392
|
transport: {
|
|
279
393
|
target: 'pino/file',
|
|
280
|
-
options: {
|
|
281
|
-
destination: path.join(config.logsPath, 'interactions.log'),
|
|
282
|
-
mkdir: true,
|
|
283
|
-
},
|
|
394
|
+
options: { destination },
|
|
284
395
|
},
|
|
285
396
|
});
|
|
286
397
|
}
|
|
@@ -310,14 +421,29 @@ export class Logger {
|
|
|
310
421
|
}
|
|
311
422
|
this.currentMcpLevel = level;
|
|
312
423
|
this.transportType = transportType;
|
|
313
|
-
|
|
314
|
-
|
|
424
|
+
const fileSinks = !isServerless() && config.logsPath
|
|
425
|
+
? await probeFileSinks(config.logsPath)
|
|
426
|
+
: { dropped: [], writable: {} };
|
|
427
|
+
this.pinoLogger = await this.createPinoLogger(level, transportType, fileSinks.writable);
|
|
428
|
+
this.interactionLogger = this.createInteractionLogger(fileSinks.writable['interactions.log']);
|
|
429
|
+
this.interactionSinkDropped = fileSinks.dropped.some((sink) => sink.name === 'interactions.log');
|
|
315
430
|
this.lastSweep = Date.now();
|
|
316
431
|
this.initialized = true;
|
|
317
432
|
this.everInitialized = true;
|
|
318
433
|
this.info(`Logger initialized. MCP level: ${level}.`, requestContextService.createRequestContext({ operation: 'loggerInit' }));
|
|
434
|
+
this.reportDroppedFileSinks(fileSinks.dropped);
|
|
319
435
|
this.replayPendingRecords();
|
|
320
436
|
}
|
|
437
|
+
/** Emits the one warning that names every file sink the startup probe dropped. */
|
|
438
|
+
reportDroppedFileSinks(dropped) {
|
|
439
|
+
if (dropped.length === 0)
|
|
440
|
+
return;
|
|
441
|
+
const detail = dropped.map((sink) => `${sink.path} (${sink.code})`).join(', ');
|
|
442
|
+
this.warning(`File logging disabled for ${dropped.length} sink(s): ${detail}. Point LOGS_DIR at a writable directory to restore them.`, requestContextService.createRequestContext({
|
|
443
|
+
operation: 'loggerInit',
|
|
444
|
+
additionalContext: { droppedLogFiles: dropped },
|
|
445
|
+
}));
|
|
446
|
+
}
|
|
321
447
|
/**
|
|
322
448
|
* Changes the active log level at runtime without restarting transports.
|
|
323
449
|
*
|
|
@@ -613,14 +739,16 @@ export class Logger {
|
|
|
613
739
|
// runs first: `logger.info(msg, ctx)` with a handler context is a documented
|
|
614
740
|
// call, and that object carries live request machinery and the user-entered
|
|
615
741
|
// content in `inputs.responses` — none of which belongs in a log line.
|
|
742
|
+
// The canonical fields are spread again after `extra`, so a caller's key
|
|
743
|
+
// reusing a canonical name (`requestId`, `traceId`, …) never replaces the
|
|
744
|
+
// context's value — the first spread only keeps them leading the line.
|
|
616
745
|
const { extra, ...canonical } = toCanonicalContext((context ?? {}));
|
|
617
|
-
const
|
|
746
|
+
const bindings = { ...canonical, ...extra, ...canonical };
|
|
618
747
|
// Pass the raw Error so pino's `err` serializer (default: `pino.stdSerializers.err`)
|
|
619
748
|
// runs *after* our `formatters.log` sanitizer. Pre-serializing here would produce
|
|
620
749
|
// an object whose prototype (`pinoErrProto`) trips the sanitizer's plain-object check.
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
this.pinoLogger[pinoLevel](logObject, msg);
|
|
750
|
+
this.pinoLogger[pinoLevel](error ? { ...bindings, err: error } : bindings, msg);
|
|
751
|
+
otelLogSink?.emit(toOtelLogRecord(level, msg, bindings, error));
|
|
624
752
|
}
|
|
625
753
|
logWithError(level, msg, errorOrContext, context) {
|
|
626
754
|
const errorObj = errorOrContext instanceof Error ? errorOrContext : undefined;
|
|
@@ -793,7 +921,7 @@ export class Logger {
|
|
|
793
921
|
*/
|
|
794
922
|
logInteraction(interactionName, data) {
|
|
795
923
|
if (!this.interactionLogger) {
|
|
796
|
-
if (!isServerless())
|
|
924
|
+
if (!isServerless() && !this.interactionSinkDropped)
|
|
797
925
|
this.warning('Interaction logger not available.', (data.context || {}));
|
|
798
926
|
return;
|
|
799
927
|
}
|
|
@@ -805,7 +933,8 @@ export class Logger {
|
|
|
805
933
|
* `Logger.getInstance()` in most contexts.
|
|
806
934
|
*
|
|
807
935
|
* Must be initialized once at startup via `logger.initialize()` before any log methods
|
|
808
|
-
* will produce output. Log calls made before initialization are
|
|
936
|
+
* will produce output. Log calls made before initialization are held in a bounded
|
|
937
|
+
* buffer and replayed once the sinks exist.
|
|
809
938
|
*
|
|
810
939
|
* @example
|
|
811
940
|
* ```ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/internal/logger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/internal/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,6 +54,17 @@ export declare function measureToolExecution<T>(toolLogicFn: (spanContext: Reque
|
|
|
54
54
|
}, recordOutput: (payload: unknown) => void) => Promise<T>, context: RequestContext & {
|
|
55
55
|
toolName: string;
|
|
56
56
|
}, inputPayload: unknown, successAttributes?: () => Record<string, boolean | number | string>, partialResultKeys?: PartialResultKeys): Promise<T>;
|
|
57
|
+
/**
|
|
58
|
+
* Counts a tool call rejected before {@link measureToolExecution} started — the
|
|
59
|
+
* inline `auth` scope check or argument validation — on `mcp.tool.rejections`
|
|
60
|
+
* (#546). Such a call never reaches `mcp.tool.calls`, `mcp.tool.duration`, or
|
|
61
|
+
* `mcp.tool.errors`, so this is the only per-tool trace it leaves; the code and
|
|
62
|
+
* category are the ones the caller receives.
|
|
63
|
+
*
|
|
64
|
+
* @param toolName - Registered name of the rejected tool.
|
|
65
|
+
* @param error - The value the rejection threw.
|
|
66
|
+
*/
|
|
67
|
+
export declare function recordToolRejection(toolName: string, error: unknown): void;
|
|
57
68
|
/**
|
|
58
69
|
* Wraps a resource handler with observability: OTel span, metric counters/histogram,
|
|
59
70
|
* and a structured log. Mirrors {@link measureToolExecution} but tuned for resource reads,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance.d.ts","sourceRoot":"","sources":["../../../src/utils/internal/performance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"performance.d.ts","sourceRoot":"","sources":["../../../src/utils/internal/performance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAOH,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EAAE,KAAK,cAAc,EAA6B,MAAM,oCAAoC,CAAC;AA0EpG,kGAAkG;AAClG,wBAAgB,kBAAkB,IAAI,IAAI,CAKzC;AAWD;;;;;;;;;GASG;AAGH,eAAO,MAAM,KAAK,QAAO,MAA2B,CAAC;AAqSrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,WAAW,EAAE,CACX,WAAW,EAAE,cAAc,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,EAClD,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,KACrC,OAAO,CAAC,CAAC,CAAC,EACf,OAAO,EAAE,cAAc,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,EAC9C,YAAY,EAAE,OAAO,EACrB,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC,EACnE,iBAAiB,GAAE,iBAA+C,GACjE,OAAO,CAAC,CAAC,CAAC,CAgFZ;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAU1E;AA+CD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,eAAe,EAAE,CACf,WAAW,EAAE,cAAc,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,EACtD,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,KACrC,OAAO,CAAC,CAAC,CAAC,EACf,OAAO,EAAE,cAAc,GAAG;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,EAClD,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACtC,OAAO,CAAC,CAAC,CAAC,CA4CZ;AA6DD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,EAC7C,aAAa,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC/B,OAAO,EAAE,cAAc,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,EAChD,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,CAAC,CAAC,CA0DZ"}
|