mcp-server-framework 1.0.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.
- package/CHANGELOG.md +174 -0
- package/LICENSE-GPL.md +219 -0
- package/LICENSE.md +187 -0
- package/README.md +439 -0
- package/build/config/config-cache.d.ts +120 -0
- package/build/config/config-cache.d.ts.map +1 -0
- package/build/config/config-cache.js +310 -0
- package/build/config/config-cache.js.map +1 -0
- package/build/config/env.d.ts +476 -0
- package/build/config/env.d.ts.map +1 -0
- package/build/config/env.js +441 -0
- package/build/config/env.js.map +1 -0
- package/build/config/extensions.d.ts +107 -0
- package/build/config/extensions.d.ts.map +1 -0
- package/build/config/extensions.js +152 -0
- package/build/config/extensions.js.map +1 -0
- package/build/config/file/index.d.ts +8 -0
- package/build/config/file/index.d.ts.map +1 -0
- package/build/config/file/index.js +10 -0
- package/build/config/file/index.js.map +1 -0
- package/build/config/file/loader.d.ts +31 -0
- package/build/config/file/loader.d.ts.map +1 -0
- package/build/config/file/loader.js +313 -0
- package/build/config/file/loader.js.map +1 -0
- package/build/config/file/schema.d.ts +583 -0
- package/build/config/file/schema.d.ts.map +1 -0
- package/build/config/file/schema.js +388 -0
- package/build/config/file/schema.js.map +1 -0
- package/build/config/index.d.ts +15 -0
- package/build/config/index.d.ts.map +1 -0
- package/build/config/index.js +27 -0
- package/build/config/index.js.map +1 -0
- package/build/config/startup-warnings.d.ts +46 -0
- package/build/config/startup-warnings.d.ts.map +1 -0
- package/build/config/startup-warnings.js +61 -0
- package/build/config/startup-warnings.js.map +1 -0
- package/build/connection/connection-state.d.ts +196 -0
- package/build/connection/connection-state.d.ts.map +1 -0
- package/build/connection/connection-state.js +426 -0
- package/build/connection/connection-state.js.map +1 -0
- package/build/connection/core/base.d.ts +43 -0
- package/build/connection/core/base.d.ts.map +1 -0
- package/build/connection/core/base.js +82 -0
- package/build/connection/core/base.js.map +1 -0
- package/build/connection/core/constants.d.ts +121 -0
- package/build/connection/core/constants.d.ts.map +1 -0
- package/build/connection/core/constants.js +151 -0
- package/build/connection/core/constants.js.map +1 -0
- package/build/connection/core/index.d.ts +13 -0
- package/build/connection/core/index.d.ts.map +1 -0
- package/build/connection/core/index.js +14 -0
- package/build/connection/core/index.js.map +1 -0
- package/build/connection/core/types.d.ts +102 -0
- package/build/connection/core/types.d.ts.map +1 -0
- package/build/connection/core/types.js +31 -0
- package/build/connection/core/types.js.map +1 -0
- package/build/connection/index.d.ts +19 -0
- package/build/connection/index.d.ts.map +1 -0
- package/build/connection/index.js +22 -0
- package/build/connection/index.js.map +1 -0
- package/build/connection/types.d.ts +125 -0
- package/build/connection/types.d.ts.map +1 -0
- package/build/connection/types.js +39 -0
- package/build/connection/types.js.map +1 -0
- package/build/errors/categories/auth.d.ts +59 -0
- package/build/errors/categories/auth.d.ts.map +1 -0
- package/build/errors/categories/auth.js +111 -0
- package/build/errors/categories/auth.js.map +1 -0
- package/build/errors/categories/connection.d.ts +70 -0
- package/build/errors/categories/connection.d.ts.map +1 -0
- package/build/errors/categories/connection.js +120 -0
- package/build/errors/categories/connection.js.map +1 -0
- package/build/errors/categories/index.d.ts +14 -0
- package/build/errors/categories/index.d.ts.map +1 -0
- package/build/errors/categories/index.js +20 -0
- package/build/errors/categories/index.js.map +1 -0
- package/build/errors/categories/operation.d.ts +83 -0
- package/build/errors/categories/operation.d.ts.map +1 -0
- package/build/errors/categories/operation.js +149 -0
- package/build/errors/categories/operation.js.map +1 -0
- package/build/errors/categories/protocol.d.ts +68 -0
- package/build/errors/categories/protocol.d.ts.map +1 -0
- package/build/errors/categories/protocol.js +135 -0
- package/build/errors/categories/protocol.js.map +1 -0
- package/build/errors/categories/session.d.ts +50 -0
- package/build/errors/categories/session.d.ts.map +1 -0
- package/build/errors/categories/session.js +97 -0
- package/build/errors/categories/session.js.map +1 -0
- package/build/errors/categories/system.d.ts +95 -0
- package/build/errors/categories/system.d.ts.map +1 -0
- package/build/errors/categories/system.js +190 -0
- package/build/errors/categories/system.js.map +1 -0
- package/build/errors/categories/transport.d.ts +70 -0
- package/build/errors/categories/transport.d.ts.map +1 -0
- package/build/errors/categories/transport.js +148 -0
- package/build/errors/categories/transport.js.map +1 -0
- package/build/errors/categories/validation.d.ts +140 -0
- package/build/errors/categories/validation.d.ts.map +1 -0
- package/build/errors/categories/validation.js +311 -0
- package/build/errors/categories/validation.js.map +1 -0
- package/build/errors/core/base.d.ts +103 -0
- package/build/errors/core/base.d.ts.map +1 -0
- package/build/errors/core/base.js +219 -0
- package/build/errors/core/base.js.map +1 -0
- package/build/errors/core/constants.d.ts +40 -0
- package/build/errors/core/constants.d.ts.map +1 -0
- package/build/errors/core/constants.js +49 -0
- package/build/errors/core/constants.js.map +1 -0
- package/build/errors/core/error-codes.d.ts +72 -0
- package/build/errors/core/error-codes.d.ts.map +1 -0
- package/build/errors/core/error-codes.js +88 -0
- package/build/errors/core/error-codes.js.map +1 -0
- package/build/errors/core/http.d.ts +69 -0
- package/build/errors/core/http.d.ts.map +1 -0
- package/build/errors/core/http.js +106 -0
- package/build/errors/core/http.js.map +1 -0
- package/build/errors/core/index.d.ts +23 -0
- package/build/errors/core/index.d.ts.map +1 -0
- package/build/errors/core/index.js +41 -0
- package/build/errors/core/index.js.map +1 -0
- package/build/errors/core/json-rpc.d.ts +69 -0
- package/build/errors/core/json-rpc.d.ts.map +1 -0
- package/build/errors/core/json-rpc.js +79 -0
- package/build/errors/core/json-rpc.js.map +1 -0
- package/build/errors/core/messages.d.ts +51 -0
- package/build/errors/core/messages.d.ts.map +1 -0
- package/build/errors/core/messages.js +59 -0
- package/build/errors/core/messages.js.map +1 -0
- package/build/errors/core/types.d.ts +80 -0
- package/build/errors/core/types.d.ts.map +1 -0
- package/build/errors/core/types.js +10 -0
- package/build/errors/core/types.js.map +1 -0
- package/build/errors/factory.d.ts +199 -0
- package/build/errors/factory.d.ts.map +1 -0
- package/build/errors/factory.js +244 -0
- package/build/errors/factory.js.map +1 -0
- package/build/errors/index.d.ts +35 -0
- package/build/errors/index.d.ts.map +1 -0
- package/build/errors/index.js +67 -0
- package/build/errors/index.js.map +1 -0
- package/build/index.d.ts +93 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +107 -0
- package/build/index.js.map +1 -0
- package/build/logger/core/constants.d.ts +143 -0
- package/build/logger/core/constants.d.ts.map +1 -0
- package/build/logger/core/constants.js +206 -0
- package/build/logger/core/constants.js.map +1 -0
- package/build/logger/core/context.d.ts +170 -0
- package/build/logger/core/context.d.ts.map +1 -0
- package/build/logger/core/context.js +237 -0
- package/build/logger/core/context.js.map +1 -0
- package/build/logger/core/errors.d.ts +101 -0
- package/build/logger/core/errors.d.ts.map +1 -0
- package/build/logger/core/errors.js +128 -0
- package/build/logger/core/errors.js.map +1 -0
- package/build/logger/core/format.d.ts +40 -0
- package/build/logger/core/format.d.ts.map +1 -0
- package/build/logger/core/format.js +47 -0
- package/build/logger/core/format.js.map +1 -0
- package/build/logger/core/index.d.ts +19 -0
- package/build/logger/core/index.d.ts.map +1 -0
- package/build/logger/core/index.js +47 -0
- package/build/logger/core/index.js.map +1 -0
- package/build/logger/core/trace-context.d.ts +51 -0
- package/build/logger/core/trace-context.d.ts.map +1 -0
- package/build/logger/core/trace-context.js +42 -0
- package/build/logger/core/trace-context.js.map +1 -0
- package/build/logger/core/types.d.ts +233 -0
- package/build/logger/core/types.d.ts.map +1 -0
- package/build/logger/core/types.js +10 -0
- package/build/logger/core/types.js.map +1 -0
- package/build/logger/factory.d.ts +150 -0
- package/build/logger/factory.d.ts.map +1 -0
- package/build/logger/factory.js +236 -0
- package/build/logger/factory.js.map +1 -0
- package/build/logger/formatters/index.d.ts +12 -0
- package/build/logger/formatters/index.d.ts.map +1 -0
- package/build/logger/formatters/index.js +15 -0
- package/build/logger/formatters/index.js.map +1 -0
- package/build/logger/formatters/json-formatter.d.ts +54 -0
- package/build/logger/formatters/json-formatter.d.ts.map +1 -0
- package/build/logger/formatters/json-formatter.js +80 -0
- package/build/logger/formatters/json-formatter.js.map +1 -0
- package/build/logger/formatters/schema.d.ts +230 -0
- package/build/logger/formatters/schema.d.ts.map +1 -0
- package/build/logger/formatters/schema.js +278 -0
- package/build/logger/formatters/schema.js.map +1 -0
- package/build/logger/formatters/text-formatter.d.ts +50 -0
- package/build/logger/formatters/text-formatter.d.ts.map +1 -0
- package/build/logger/formatters/text-formatter.js +93 -0
- package/build/logger/formatters/text-formatter.js.map +1 -0
- package/build/logger/index.d.ts +39 -0
- package/build/logger/index.d.ts.map +1 -0
- package/build/logger/index.js +43 -0
- package/build/logger/index.js.map +1 -0
- package/build/logger/logger.d.ts +278 -0
- package/build/logger/logger.d.ts.map +1 -0
- package/build/logger/logger.js +459 -0
- package/build/logger/logger.js.map +1 -0
- package/build/logger/mcp-logger.d.ts +177 -0
- package/build/logger/mcp-logger.d.ts.map +1 -0
- package/build/logger/mcp-logger.js +294 -0
- package/build/logger/mcp-logger.js.map +1 -0
- package/build/logger/scrubbing/index.d.ts +14 -0
- package/build/logger/scrubbing/index.d.ts.map +1 -0
- package/build/logger/scrubbing/index.js +16 -0
- package/build/logger/scrubbing/index.js.map +1 -0
- package/build/logger/scrubbing/injection-guard.d.ts +69 -0
- package/build/logger/scrubbing/injection-guard.d.ts.map +1 -0
- package/build/logger/scrubbing/injection-guard.js +102 -0
- package/build/logger/scrubbing/injection-guard.js.map +1 -0
- package/build/logger/scrubbing/secret-scrubber.d.ts +72 -0
- package/build/logger/scrubbing/secret-scrubber.d.ts.map +1 -0
- package/build/logger/scrubbing/secret-scrubber.js +177 -0
- package/build/logger/scrubbing/secret-scrubber.js.map +1 -0
- package/build/logger/writers/base-writer.d.ts +45 -0
- package/build/logger/writers/base-writer.d.ts.map +1 -0
- package/build/logger/writers/base-writer.js +41 -0
- package/build/logger/writers/base-writer.js.map +1 -0
- package/build/logger/writers/composite-writer.d.ts +83 -0
- package/build/logger/writers/composite-writer.d.ts.map +1 -0
- package/build/logger/writers/composite-writer.js +121 -0
- package/build/logger/writers/composite-writer.js.map +1 -0
- package/build/logger/writers/console-writer.d.ts +59 -0
- package/build/logger/writers/console-writer.d.ts.map +1 -0
- package/build/logger/writers/console-writer.js +73 -0
- package/build/logger/writers/console-writer.js.map +1 -0
- package/build/logger/writers/file-writer.d.ts +160 -0
- package/build/logger/writers/file-writer.d.ts.map +1 -0
- package/build/logger/writers/file-writer.js +345 -0
- package/build/logger/writers/file-writer.js.map +1 -0
- package/build/logger/writers/index.d.ts +15 -0
- package/build/logger/writers/index.d.ts.map +1 -0
- package/build/logger/writers/index.js +19 -0
- package/build/logger/writers/index.js.map +1 -0
- package/build/mcp/capabilities/apps/define-app.d.ts +68 -0
- package/build/mcp/capabilities/apps/define-app.d.ts.map +1 -0
- package/build/mcp/capabilities/apps/define-app.js +127 -0
- package/build/mcp/capabilities/apps/define-app.js.map +1 -0
- package/build/mcp/capabilities/apps/index.d.ts +10 -0
- package/build/mcp/capabilities/apps/index.d.ts.map +1 -0
- package/build/mcp/capabilities/apps/index.js +10 -0
- package/build/mcp/capabilities/apps/index.js.map +1 -0
- package/build/mcp/capabilities/capabilities.d.ts +24 -0
- package/build/mcp/capabilities/capabilities.d.ts.map +1 -0
- package/build/mcp/capabilities/capabilities.js +50 -0
- package/build/mcp/capabilities/capabilities.js.map +1 -0
- package/build/mcp/capabilities/index.d.ts +17 -0
- package/build/mcp/capabilities/index.d.ts.map +1 -0
- package/build/mcp/capabilities/index.js +20 -0
- package/build/mcp/capabilities/index.js.map +1 -0
- package/build/mcp/capabilities/prompts/define-prompt.d.ts +95 -0
- package/build/mcp/capabilities/prompts/define-prompt.d.ts.map +1 -0
- package/build/mcp/capabilities/prompts/define-prompt.js +109 -0
- package/build/mcp/capabilities/prompts/define-prompt.js.map +1 -0
- package/build/mcp/capabilities/prompts/index.d.ts +10 -0
- package/build/mcp/capabilities/prompts/index.d.ts.map +1 -0
- package/build/mcp/capabilities/prompts/index.js +10 -0
- package/build/mcp/capabilities/prompts/index.js.map +1 -0
- package/build/mcp/capabilities/registry/base-registry.d.ts +95 -0
- package/build/mcp/capabilities/registry/base-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/base-registry.js +149 -0
- package/build/mcp/capabilities/registry/base-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/index.d.ts +16 -0
- package/build/mcp/capabilities/registry/index.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/index.js +34 -0
- package/build/mcp/capabilities/registry/index.js.map +1 -0
- package/build/mcp/capabilities/registry/prompt-registry.d.ts +116 -0
- package/build/mcp/capabilities/registry/prompt-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/prompt-registry.js +232 -0
- package/build/mcp/capabilities/registry/prompt-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/reset.d.ts +30 -0
- package/build/mcp/capabilities/registry/reset.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/reset.js +48 -0
- package/build/mcp/capabilities/registry/reset.js.map +1 -0
- package/build/mcp/capabilities/registry/resource-registry.d.ts +152 -0
- package/build/mcp/capabilities/registry/resource-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/resource-registry.js +430 -0
- package/build/mcp/capabilities/registry/resource-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/scope-enforcement.d.ts +48 -0
- package/build/mcp/capabilities/registry/scope-enforcement.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/scope-enforcement.js +62 -0
- package/build/mcp/capabilities/registry/scope-enforcement.js.map +1 -0
- package/build/mcp/capabilities/registry/task-tool-registry.d.ts +96 -0
- package/build/mcp/capabilities/registry/task-tool-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/task-tool-registry.js +190 -0
- package/build/mcp/capabilities/registry/task-tool-registry.js.map +1 -0
- package/build/mcp/capabilities/registry/tool-registry.d.ts +100 -0
- package/build/mcp/capabilities/registry/tool-registry.d.ts.map +1 -0
- package/build/mcp/capabilities/registry/tool-registry.js +242 -0
- package/build/mcp/capabilities/registry/tool-registry.js.map +1 -0
- package/build/mcp/capabilities/resources/define-resource.d.ts +103 -0
- package/build/mcp/capabilities/resources/define-resource.d.ts.map +1 -0
- package/build/mcp/capabilities/resources/define-resource.js +137 -0
- package/build/mcp/capabilities/resources/define-resource.js.map +1 -0
- package/build/mcp/capabilities/resources/index.d.ts +10 -0
- package/build/mcp/capabilities/resources/index.d.ts.map +1 -0
- package/build/mcp/capabilities/resources/index.js +10 -0
- package/build/mcp/capabilities/resources/index.js.map +1 -0
- package/build/mcp/capabilities/server-capabilities.d.ts +33 -0
- package/build/mcp/capabilities/server-capabilities.d.ts.map +1 -0
- package/build/mcp/capabilities/server-capabilities.js +16 -0
- package/build/mcp/capabilities/server-capabilities.js.map +1 -0
- package/build/mcp/capabilities/tasks/define-task.d.ts +75 -0
- package/build/mcp/capabilities/tasks/define-task.d.ts.map +1 -0
- package/build/mcp/capabilities/tasks/define-task.js +93 -0
- package/build/mcp/capabilities/tasks/define-task.js.map +1 -0
- package/build/mcp/capabilities/tasks/index.d.ts +11 -0
- package/build/mcp/capabilities/tasks/index.d.ts.map +1 -0
- package/build/mcp/capabilities/tasks/index.js +11 -0
- package/build/mcp/capabilities/tasks/index.js.map +1 -0
- package/build/mcp/capabilities/tools/define-tool.d.ts +62 -0
- package/build/mcp/capabilities/tools/define-tool.d.ts.map +1 -0
- package/build/mcp/capabilities/tools/define-tool.js +73 -0
- package/build/mcp/capabilities/tools/define-tool.js.map +1 -0
- package/build/mcp/capabilities/tools/index.d.ts +10 -0
- package/build/mcp/capabilities/tools/index.d.ts.map +1 -0
- package/build/mcp/capabilities/tools/index.js +10 -0
- package/build/mcp/capabilities/tools/index.js.map +1 -0
- package/build/mcp/handlers/index.d.ts +19 -0
- package/build/mcp/handlers/index.d.ts.map +1 -0
- package/build/mcp/handlers/index.js +26 -0
- package/build/mcp/handlers/index.js.map +1 -0
- package/build/mcp/handlers/ping.d.ts +27 -0
- package/build/mcp/handlers/ping.d.ts.map +1 -0
- package/build/mcp/handlers/ping.js +61 -0
- package/build/mcp/handlers/ping.js.map +1 -0
- package/build/mcp/handlers/progress.d.ts +41 -0
- package/build/mcp/handlers/progress.d.ts.map +1 -0
- package/build/mcp/handlers/progress.js +79 -0
- package/build/mcp/handlers/progress.js.map +1 -0
- package/build/mcp/index.d.ts +28 -0
- package/build/mcp/index.d.ts.map +1 -0
- package/build/mcp/index.js +34 -0
- package/build/mcp/index.js.map +1 -0
- package/build/mcp/responses/helpers.d.ts +146 -0
- package/build/mcp/responses/helpers.d.ts.map +1 -0
- package/build/mcp/responses/helpers.js +197 -0
- package/build/mcp/responses/helpers.js.map +1 -0
- package/build/mcp/responses/index.d.ts +9 -0
- package/build/mcp/responses/index.d.ts.map +1 -0
- package/build/mcp/responses/index.js +12 -0
- package/build/mcp/responses/index.js.map +1 -0
- package/build/mcp/types/context.d.ts +371 -0
- package/build/mcp/types/context.d.ts.map +1 -0
- package/build/mcp/types/context.js +17 -0
- package/build/mcp/types/context.js.map +1 -0
- package/build/mcp/types/definition.d.ts +727 -0
- package/build/mcp/types/definition.d.ts.map +1 -0
- package/build/mcp/types/definition.js +29 -0
- package/build/mcp/types/definition.js.map +1 -0
- package/build/mcp/types/handler.d.ts +58 -0
- package/build/mcp/types/handler.d.ts.map +1 -0
- package/build/mcp/types/handler.js +10 -0
- package/build/mcp/types/handler.js.map +1 -0
- package/build/mcp/types/index.d.ts +21 -0
- package/build/mcp/types/index.d.ts.map +1 -0
- package/build/mcp/types/index.js +18 -0
- package/build/mcp/types/index.js.map +1 -0
- package/build/mcp/types/response.d.ts +79 -0
- package/build/mcp/types/response.d.ts.map +1 -0
- package/build/mcp/types/response.js +10 -0
- package/build/mcp/types/response.js.map +1 -0
- package/build/server/auth/auth-context.d.ts +52 -0
- package/build/server/auth/auth-context.d.ts.map +1 -0
- package/build/server/auth/auth-context.js +45 -0
- package/build/server/auth/auth-context.js.map +1 -0
- package/build/server/auth/guards.d.ts +72 -0
- package/build/server/auth/guards.d.ts.map +1 -0
- package/build/server/auth/guards.js +103 -0
- package/build/server/auth/guards.js.map +1 -0
- package/build/server/auth/index.d.ts +21 -0
- package/build/server/auth/index.d.ts.map +1 -0
- package/build/server/auth/index.js +20 -0
- package/build/server/auth/index.js.map +1 -0
- package/build/server/auth/oidc-discovery.d.ts +68 -0
- package/build/server/auth/oidc-discovery.d.ts.map +1 -0
- package/build/server/auth/oidc-discovery.js +234 -0
- package/build/server/auth/oidc-discovery.js.map +1 -0
- package/build/server/auth/oidc-provider.d.ts +96 -0
- package/build/server/auth/oidc-provider.d.ts.map +1 -0
- package/build/server/auth/oidc-provider.js +126 -0
- package/build/server/auth/oidc-provider.js.map +1 -0
- package/build/server/auth/types.d.ts +204 -0
- package/build/server/auth/types.d.ts.map +1 -0
- package/build/server/auth/types.js +29 -0
- package/build/server/auth/types.js.map +1 -0
- package/build/server/auth/upstream-provider.d.ts +161 -0
- package/build/server/auth/upstream-provider.d.ts.map +1 -0
- package/build/server/auth/upstream-provider.js +411 -0
- package/build/server/auth/upstream-provider.js.map +1 -0
- package/build/server/builder/constants.d.ts +45 -0
- package/build/server/builder/constants.d.ts.map +1 -0
- package/build/server/builder/constants.js +54 -0
- package/build/server/builder/constants.js.map +1 -0
- package/build/server/builder/index.d.ts +24 -0
- package/build/server/builder/index.d.ts.map +1 -0
- package/build/server/builder/index.js +25 -0
- package/build/server/builder/index.js.map +1 -0
- package/build/server/builder/primitive-collector.d.ts +24 -0
- package/build/server/builder/primitive-collector.d.ts.map +1 -0
- package/build/server/builder/primitive-collector.js +89 -0
- package/build/server/builder/primitive-collector.js.map +1 -0
- package/build/server/builder/server-builder.d.ts +53 -0
- package/build/server/builder/server-builder.d.ts.map +1 -0
- package/build/server/builder/server-builder.js +132 -0
- package/build/server/builder/server-builder.js.map +1 -0
- package/build/server/builder/types.d.ts +93 -0
- package/build/server/builder/types.d.ts.map +1 -0
- package/build/server/builder/types.js +25 -0
- package/build/server/builder/types.js.map +1 -0
- package/build/server/builder/validation.d.ts +36 -0
- package/build/server/builder/validation.d.ts.map +1 -0
- package/build/server/builder/validation.js +44 -0
- package/build/server/builder/validation.js.map +1 -0
- package/build/server/create-server.d.ts +57 -0
- package/build/server/create-server.d.ts.map +1 -0
- package/build/server/create-server.js +104 -0
- package/build/server/create-server.js.map +1 -0
- package/build/server/http/express-app.d.ts +103 -0
- package/build/server/http/express-app.d.ts.map +1 -0
- package/build/server/http/express-app.js +391 -0
- package/build/server/http/express-app.js.map +1 -0
- package/build/server/http/http-server.d.ts +67 -0
- package/build/server/http/http-server.d.ts.map +1 -0
- package/build/server/http/http-server.js +188 -0
- package/build/server/http/http-server.js.map +1 -0
- package/build/server/http/http-transport.d.ts +33 -0
- package/build/server/http/http-transport.d.ts.map +1 -0
- package/build/server/http/http-transport.js +84 -0
- package/build/server/http/http-transport.js.map +1 -0
- package/build/server/http/index.d.ts +15 -0
- package/build/server/http/index.d.ts.map +1 -0
- package/build/server/http/index.js +11 -0
- package/build/server/http/index.js.map +1 -0
- package/build/server/index.d.ts +25 -0
- package/build/server/index.d.ts.map +1 -0
- package/build/server/index.js +41 -0
- package/build/server/index.js.map +1 -0
- package/build/server/lifecycle.d.ts +114 -0
- package/build/server/lifecycle.d.ts.map +1 -0
- package/build/server/lifecycle.js +30 -0
- package/build/server/lifecycle.js.map +1 -0
- package/build/server/middleware/bearer-auth.d.ts +43 -0
- package/build/server/middleware/bearer-auth.d.ts.map +1 -0
- package/build/server/middleware/bearer-auth.js +75 -0
- package/build/server/middleware/bearer-auth.js.map +1 -0
- package/build/server/middleware/custom-header-auth.d.ts +40 -0
- package/build/server/middleware/custom-header-auth.d.ts.map +1 -0
- package/build/server/middleware/custom-header-auth.js +90 -0
- package/build/server/middleware/custom-header-auth.js.map +1 -0
- package/build/server/middleware/dns-rebinding.d.ts +25 -0
- package/build/server/middleware/dns-rebinding.d.ts.map +1 -0
- package/build/server/middleware/dns-rebinding.js +94 -0
- package/build/server/middleware/dns-rebinding.js.map +1 -0
- package/build/server/middleware/index.d.ts +69 -0
- package/build/server/middleware/index.d.ts.map +1 -0
- package/build/server/middleware/index.js +68 -0
- package/build/server/middleware/index.js.map +1 -0
- package/build/server/middleware/logging.d.ts +21 -0
- package/build/server/middleware/logging.d.ts.map +1 -0
- package/build/server/middleware/logging.js +36 -0
- package/build/server/middleware/logging.js.map +1 -0
- package/build/server/middleware/oauth-router.d.ts +50 -0
- package/build/server/middleware/oauth-router.d.ts.map +1 -0
- package/build/server/middleware/oauth-router.js +53 -0
- package/build/server/middleware/oauth-router.js.map +1 -0
- package/build/server/middleware/protocol-version.d.ts +13 -0
- package/build/server/middleware/protocol-version.d.ts.map +1 -0
- package/build/server/middleware/protocol-version.js +48 -0
- package/build/server/middleware/protocol-version.js.map +1 -0
- package/build/server/middleware/rate-limit.d.ts +47 -0
- package/build/server/middleware/rate-limit.d.ts.map +1 -0
- package/build/server/middleware/rate-limit.js +109 -0
- package/build/server/middleware/rate-limit.js.map +1 -0
- package/build/server/middleware/trust-proxy.d.ts +37 -0
- package/build/server/middleware/trust-proxy.d.ts.map +1 -0
- package/build/server/middleware/trust-proxy.js +154 -0
- package/build/server/middleware/trust-proxy.js.map +1 -0
- package/build/server/option-overrides.d.ts +25 -0
- package/build/server/option-overrides.d.ts.map +1 -0
- package/build/server/option-overrides.js +85 -0
- package/build/server/option-overrides.js.map +1 -0
- package/build/server/routes/health.d.ts +87 -0
- package/build/server/routes/health.d.ts.map +1 -0
- package/build/server/routes/health.js +183 -0
- package/build/server/routes/health.js.map +1 -0
- package/build/server/routes/index.d.ts +16 -0
- package/build/server/routes/index.d.ts.map +1 -0
- package/build/server/routes/index.js +18 -0
- package/build/server/routes/index.js.map +1 -0
- package/build/server/routes/metrics.d.ts +40 -0
- package/build/server/routes/metrics.d.ts.map +1 -0
- package/build/server/routes/metrics.js +81 -0
- package/build/server/routes/metrics.js.map +1 -0
- package/build/server/routes/oauth-router.d.ts +50 -0
- package/build/server/routes/oauth-router.d.ts.map +1 -0
- package/build/server/routes/oauth-router.js +53 -0
- package/build/server/routes/oauth-router.js.map +1 -0
- package/build/server/routes/readiness-status.d.ts +25 -0
- package/build/server/routes/readiness-status.d.ts.map +1 -0
- package/build/server/routes/readiness-status.js +27 -0
- package/build/server/routes/readiness-status.js.map +1 -0
- package/build/server/routes/sse-router.d.ts +43 -0
- package/build/server/routes/sse-router.d.ts.map +1 -0
- package/build/server/routes/sse-router.js +92 -0
- package/build/server/routes/sse-router.js.map +1 -0
- package/build/server/routes/streamable-http-router.d.ts +36 -0
- package/build/server/routes/streamable-http-router.d.ts.map +1 -0
- package/build/server/routes/streamable-http-router.js +59 -0
- package/build/server/routes/streamable-http-router.js.map +1 -0
- package/build/server/server-instance.d.ts +185 -0
- package/build/server/server-instance.d.ts.map +1 -0
- package/build/server/server-instance.js +615 -0
- package/build/server/server-instance.js.map +1 -0
- package/build/server/server-options.d.ts +411 -0
- package/build/server/server-options.d.ts.map +1 -0
- package/build/server/server-options.js +17 -0
- package/build/server/server-options.js.map +1 -0
- package/build/server/session/in-memory-store.d.ts +128 -0
- package/build/server/session/in-memory-store.d.ts.map +1 -0
- package/build/server/session/in-memory-store.js +312 -0
- package/build/server/session/in-memory-store.js.map +1 -0
- package/build/server/session/index.d.ts +43 -0
- package/build/server/session/index.d.ts.map +1 -0
- package/build/server/session/index.js +47 -0
- package/build/server/session/index.js.map +1 -0
- package/build/server/session/mcp-session.d.ts +210 -0
- package/build/server/session/mcp-session.d.ts.map +1 -0
- package/build/server/session/mcp-session.js +428 -0
- package/build/server/session/mcp-session.js.map +1 -0
- package/build/server/session/session-factory.d.ts +119 -0
- package/build/server/session/session-factory.d.ts.map +1 -0
- package/build/server/session/session-factory.js +131 -0
- package/build/server/session/session-factory.js.map +1 -0
- package/build/server/session/session-housekeeper.d.ts +100 -0
- package/build/server/session/session-housekeeper.d.ts.map +1 -0
- package/build/server/session/session-housekeeper.js +217 -0
- package/build/server/session/session-housekeeper.js.map +1 -0
- package/build/server/session/session-manager.d.ts +227 -0
- package/build/server/session/session-manager.d.ts.map +1 -0
- package/build/server/session/session-manager.js +282 -0
- package/build/server/session/session-manager.js.map +1 -0
- package/build/server/session/session-store.d.ts +95 -0
- package/build/server/session/session-store.d.ts.map +1 -0
- package/build/server/session/session-store.js +13 -0
- package/build/server/session/session-store.js.map +1 -0
- package/build/server/session/session.d.ts +132 -0
- package/build/server/session/session.d.ts.map +1 -0
- package/build/server/session/session.js +61 -0
- package/build/server/session/session.js.map +1 -0
- package/build/server/transport/constants.d.ts +85 -0
- package/build/server/transport/constants.d.ts.map +1 -0
- package/build/server/transport/constants.js +103 -0
- package/build/server/transport/constants.js.map +1 -0
- package/build/server/transport/index.d.ts +21 -0
- package/build/server/transport/index.d.ts.map +1 -0
- package/build/server/transport/index.js +28 -0
- package/build/server/transport/index.js.map +1 -0
- package/build/server/transport/sse/handler.d.ts +46 -0
- package/build/server/transport/sse/handler.d.ts.map +1 -0
- package/build/server/transport/sse/handler.js +189 -0
- package/build/server/transport/sse/handler.js.map +1 -0
- package/build/server/transport/sse/index.d.ts +15 -0
- package/build/server/transport/sse/index.d.ts.map +1 -0
- package/build/server/transport/sse/index.js +14 -0
- package/build/server/transport/sse/index.js.map +1 -0
- package/build/server/transport/sse/transport.d.ts +94 -0
- package/build/server/transport/sse/transport.d.ts.map +1 -0
- package/build/server/transport/sse/transport.js +175 -0
- package/build/server/transport/sse/transport.js.map +1 -0
- package/build/server/transport/stdio-transport.d.ts +23 -0
- package/build/server/transport/stdio-transport.d.ts.map +1 -0
- package/build/server/transport/stdio-transport.js +59 -0
- package/build/server/transport/stdio-transport.js.map +1 -0
- package/build/server/transport/streamable-http/index.d.ts +9 -0
- package/build/server/transport/streamable-http/index.d.ts.map +1 -0
- package/build/server/transport/streamable-http/index.js +9 -0
- package/build/server/transport/streamable-http/index.js.map +1 -0
- package/build/server/transport/streamable-http/stateful-handler.d.ts +41 -0
- package/build/server/transport/streamable-http/stateful-handler.d.ts.map +1 -0
- package/build/server/transport/streamable-http/stateful-handler.js +264 -0
- package/build/server/transport/streamable-http/stateful-handler.js.map +1 -0
- package/build/server/transport/streamable-http/stateless-handler.d.ts +28 -0
- package/build/server/transport/streamable-http/stateless-handler.d.ts.map +1 -0
- package/build/server/transport/streamable-http/stateless-handler.js +81 -0
- package/build/server/transport/streamable-http/stateless-handler.js.map +1 -0
- package/build/server/transport/streamable-http/transport.d.ts +110 -0
- package/build/server/transport/streamable-http/transport.d.ts.map +1 -0
- package/build/server/transport/streamable-http/transport.js +118 -0
- package/build/server/transport/streamable-http/transport.js.map +1 -0
- package/build/server/transport/transport-context.d.ts +67 -0
- package/build/server/transport/transport-context.d.ts.map +1 -0
- package/build/server/transport/transport-context.js +38 -0
- package/build/server/transport/transport-context.js.map +1 -0
- package/build/server/transport/types.d.ts +56 -0
- package/build/server/transport/types.d.ts.map +1 -0
- package/build/server/transport/types.js +11 -0
- package/build/server/transport/types.js.map +1 -0
- package/build/server/transport-options.d.ts +248 -0
- package/build/server/transport-options.d.ts.map +1 -0
- package/build/server/transport-options.js +18 -0
- package/build/server/transport-options.js.map +1 -0
- package/build/server/types.d.ts +172 -0
- package/build/server/types.d.ts.map +1 -0
- package/build/server/types.js +9 -0
- package/build/server/types.js.map +1 -0
- package/build/telemetry/connection-telemetry-bridge.d.ts +30 -0
- package/build/telemetry/connection-telemetry-bridge.d.ts.map +1 -0
- package/build/telemetry/connection-telemetry-bridge.js +54 -0
- package/build/telemetry/connection-telemetry-bridge.js.map +1 -0
- package/build/telemetry/core/config.d.ts +38 -0
- package/build/telemetry/core/config.d.ts.map +1 -0
- package/build/telemetry/core/config.js +54 -0
- package/build/telemetry/core/config.js.map +1 -0
- package/build/telemetry/core/constants.d.ts +183 -0
- package/build/telemetry/core/constants.d.ts.map +1 -0
- package/build/telemetry/core/constants.js +207 -0
- package/build/telemetry/core/constants.js.map +1 -0
- package/build/telemetry/core/diag-logger.d.ts +35 -0
- package/build/telemetry/core/diag-logger.d.ts.map +1 -0
- package/build/telemetry/core/diag-logger.js +54 -0
- package/build/telemetry/core/diag-logger.js.map +1 -0
- package/build/telemetry/core/index.d.ts +12 -0
- package/build/telemetry/core/index.d.ts.map +1 -0
- package/build/telemetry/core/index.js +32 -0
- package/build/telemetry/core/index.js.map +1 -0
- package/build/telemetry/core/types.d.ts +106 -0
- package/build/telemetry/core/types.d.ts.map +1 -0
- package/build/telemetry/core/types.js +10 -0
- package/build/telemetry/core/types.js.map +1 -0
- package/build/telemetry/index.d.ts +59 -0
- package/build/telemetry/index.d.ts.map +1 -0
- package/build/telemetry/index.js +79 -0
- package/build/telemetry/index.js.map +1 -0
- package/build/telemetry/metrics.d.ts +127 -0
- package/build/telemetry/metrics.d.ts.map +1 -0
- package/build/telemetry/metrics.js +337 -0
- package/build/telemetry/metrics.js.map +1 -0
- package/build/telemetry/sdk.d.ts +110 -0
- package/build/telemetry/sdk.d.ts.map +1 -0
- package/build/telemetry/sdk.js +547 -0
- package/build/telemetry/sdk.js.map +1 -0
- package/build/telemetry/tracing.d.ts +78 -0
- package/build/telemetry/tracing.d.ts.map +1 -0
- package/build/telemetry/tracing.js +257 -0
- package/build/telemetry/tracing.js.map +1 -0
- package/build/utils/env-helpers.d.ts +46 -0
- package/build/utils/env-helpers.d.ts.map +1 -0
- package/build/utils/env-helpers.js +54 -0
- package/build/utils/env-helpers.js.map +1 -0
- package/build/utils/index.d.ts +14 -0
- package/build/utils/index.d.ts.map +1 -0
- package/build/utils/index.js +19 -0
- package/build/utils/index.js.map +1 -0
- package/build/utils/sensitive-keys.d.ts +48 -0
- package/build/utils/sensitive-keys.d.ts.map +1 -0
- package/build/utils/sensitive-keys.js +131 -0
- package/build/utils/sensitive-keys.js.map +1 -0
- package/build/utils/string-helpers.d.ts +126 -0
- package/build/utils/string-helpers.d.ts.map +1 -0
- package/build/utils/string-helpers.js +189 -0
- package/build/utils/string-helpers.js.map +1 -0
- package/build/utils/validation.d.ts +84 -0
- package/build/utils/validation.d.ts.map +1 -0
- package/build/utils/validation.js +111 -0
- package/build/utils/validation.js.map +1 -0
- package/build/utils/zod-helpers.d.ts +92 -0
- package/build/utils/zod-helpers.d.ts.map +1 -0
- package/build/utils/zod-helpers.js +120 -0
- package/build/utils/zod-helpers.js.map +1 -0
- package/package.json +133 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Core Constants Module
|
|
3
|
+
*
|
|
4
|
+
* Centralized constants for the logging system.
|
|
5
|
+
* All logger-related constants should be defined here for consistency
|
|
6
|
+
* and to avoid magic values scattered throughout the codebase.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core/constants
|
|
9
|
+
*/
|
|
10
|
+
import type { LogLevel, McpLogLevel } from "./types.js";
|
|
11
|
+
/**
|
|
12
|
+
* Numeric values for log levels to determine if a message should be logged.
|
|
13
|
+
* Higher values = more severe.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* if (LOG_LEVELS[level] >= LOG_LEVELS[minLevel]) {
|
|
18
|
+
* // Log the message
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare const LOG_LEVELS: Readonly<Record<LogLevel, number>>;
|
|
23
|
+
/**
|
|
24
|
+
* Log severity levels for ECS/structured logging.
|
|
25
|
+
* Based on RFC 5424 syslog severity (inverted: 0 = emergency, 7 = debug).
|
|
26
|
+
*/
|
|
27
|
+
export declare const LOG_SEVERITY: Readonly<Record<LogLevel, number>>;
|
|
28
|
+
/**
|
|
29
|
+
* Maps internal log levels to MCP logging levels (RFC 5424).
|
|
30
|
+
* MCP uses syslog-style levels which are more granular.
|
|
31
|
+
*/
|
|
32
|
+
export declare const LOG_LEVEL_TO_MCP: Readonly<Record<LogLevel, McpLogLevel>>;
|
|
33
|
+
/**
|
|
34
|
+
* Default log level when not specified in configuration.
|
|
35
|
+
*/
|
|
36
|
+
export declare const DEFAULT_LOG_LEVEL: LogLevel;
|
|
37
|
+
/**
|
|
38
|
+
* Default log format when not specified in configuration.
|
|
39
|
+
*/
|
|
40
|
+
export declare const DEFAULT_LOG_FORMAT: "json" | "text";
|
|
41
|
+
/**
|
|
42
|
+
* Default component name for loggers without explicit component.
|
|
43
|
+
*/
|
|
44
|
+
/**
|
|
45
|
+
* Default service name for structured logs.
|
|
46
|
+
*/
|
|
47
|
+
export declare const DEFAULT_SERVICE_NAME = "mcp-server";
|
|
48
|
+
/**
|
|
49
|
+
* Maximum length for truncated session/request IDs in text logs.
|
|
50
|
+
*/
|
|
51
|
+
export declare const ID_DISPLAY_LENGTH = 8;
|
|
52
|
+
/**
|
|
53
|
+
* Padding for log level alignment in text format.
|
|
54
|
+
*/
|
|
55
|
+
export declare const LEVEL_PAD_LENGTH = 5;
|
|
56
|
+
/**
|
|
57
|
+
* File extension for log files.
|
|
58
|
+
*/
|
|
59
|
+
export declare const LOG_FILE_EXTENSION = ".log";
|
|
60
|
+
/**
|
|
61
|
+
* Default components for file logging.
|
|
62
|
+
* Streams will be created for each component.
|
|
63
|
+
*/
|
|
64
|
+
export declare const DEFAULT_LOG_COMPONENTS: readonly ["server", "api", "transport", "tools"];
|
|
65
|
+
/**
|
|
66
|
+
* Logger component names for the logging system.
|
|
67
|
+
* Used for consistent log categorization across the logger module.
|
|
68
|
+
*/
|
|
69
|
+
export declare const LOGGER_COMPONENTS: {
|
|
70
|
+
/** MCP protocol logger */
|
|
71
|
+
readonly MCP_LOGGER: "McpLogger";
|
|
72
|
+
/** File writer component */
|
|
73
|
+
readonly FILE_WRITER: "FileWriter";
|
|
74
|
+
/** Console writer component */
|
|
75
|
+
readonly CONSOLE_WRITER: "ConsoleWriter";
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* List of keys that are considered sensitive and should be redacted from logs.
|
|
79
|
+
* Re-exported from the shared utility for backwards compatibility.
|
|
80
|
+
*
|
|
81
|
+
* @see {@link ../../utils/sensitive-keys.ts} — canonical source
|
|
82
|
+
*/
|
|
83
|
+
export { SENSITIVE_KEYS, SENSITIVE_KEY_BLOCKLIST } from "../../utils/sensitive-keys.js";
|
|
84
|
+
/**
|
|
85
|
+
* Type representing a sensitive key.
|
|
86
|
+
*/
|
|
87
|
+
export type SensitiveKey = string;
|
|
88
|
+
/**
|
|
89
|
+
* The string used to replace redacted values.
|
|
90
|
+
*/
|
|
91
|
+
export declare const REDACTED_VALUE = "**********";
|
|
92
|
+
/**
|
|
93
|
+
* JWT prefix pattern for detection.
|
|
94
|
+
*/
|
|
95
|
+
export declare const JWT_PREFIX = "eyJ";
|
|
96
|
+
/**
|
|
97
|
+
* Control characters that could be used for log injection (CWE-117).
|
|
98
|
+
* These are replaced to ensure one log entry = one line.
|
|
99
|
+
*
|
|
100
|
+
* Note: Existing backslashes are intentionally NOT escaped before replacement.
|
|
101
|
+
* Escaping backslashes first would double-escape already-escaped sequences
|
|
102
|
+
* (e.g. a literal `\n` in source text would become `\\n`). The CWE-117
|
|
103
|
+
* threat model focuses on preventing attackers from forging new log entries
|
|
104
|
+
* via injected newlines — visual ambiguity between a literal backslash-n
|
|
105
|
+
* and an escaped newline is an acceptable trade-off.
|
|
106
|
+
*/
|
|
107
|
+
export declare const CONTROL_CHAR_REPLACEMENTS: Readonly<Record<string, string>>;
|
|
108
|
+
/**
|
|
109
|
+
* Regex pattern string for all C0 control characters (U+0000–U+001F)
|
|
110
|
+
* except those commonly allowed in text (\t is replaced but kept readable).
|
|
111
|
+
*/
|
|
112
|
+
export declare const CONTROL_CHAR_PATTERN = "[\\x00-\\x1F\\x7F]";
|
|
113
|
+
/**
|
|
114
|
+
* Regex pattern string for ANSI escape sequences.
|
|
115
|
+
*/
|
|
116
|
+
export declare const ANSI_ESCAPE_PATTERN = "\\x1B\\[[?>=<:0-9;]*[a-zA-Z]";
|
|
117
|
+
/**
|
|
118
|
+
* Maximum depth for context merging to prevent infinite loops.
|
|
119
|
+
*/
|
|
120
|
+
export declare const MAX_CONTEXT_DEPTH = 10;
|
|
121
|
+
/**
|
|
122
|
+
* Separator used for hierarchical component names.
|
|
123
|
+
*/
|
|
124
|
+
export declare const COMPONENT_SEPARATOR = ".";
|
|
125
|
+
/**
|
|
126
|
+
* Ordered list of MCP log levels (RFC 5424) for severity comparison.
|
|
127
|
+
* Lower index = lower severity. Used for level filtering.
|
|
128
|
+
*/
|
|
129
|
+
export declare const MCP_LEVEL_ORDER: readonly McpLogLevel[];
|
|
130
|
+
/**
|
|
131
|
+
* Maximum number of cached child loggers.
|
|
132
|
+
* Prevents memory leaks from excessive child logger creation.
|
|
133
|
+
*/
|
|
134
|
+
export declare const MAX_CHILD_LOGGER_CACHE_SIZE = 100;
|
|
135
|
+
/**
|
|
136
|
+
* Maximum message length before truncation in non-debug modes.
|
|
137
|
+
*/
|
|
138
|
+
export declare const MAX_MESSAGE_LENGTH = 10000;
|
|
139
|
+
/**
|
|
140
|
+
* Truncation suffix for long messages.
|
|
141
|
+
*/
|
|
142
|
+
export declare const TRUNCATION_SUFFIX = "... [truncated]";
|
|
143
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/logger/core/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAMxD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAMhD,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAMlD,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAM3D,CAAC;AAMX;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,QAAiB,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,GAAG,MAAe,CAAC;AAE1D;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAMjD;;GAEG;AACH,eAAO,MAAM,iBAAiB,IAAI,CAAC;AAEnC;;GAEG;AACH,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC;;;GAGG;AACH,eAAO,MAAM,sBAAsB,kDAAmD,CAAC;AAEvF;;;GAGG;AACH,eAAO,MAAM,iBAAiB;IAC5B,0BAA0B;;IAE1B,4BAA4B;;IAE5B,+BAA+B;;CAEvB,CAAC;AAMX;;;;;GAKG;AACH,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAExF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,cAAc,eAAe,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,UAAU,QAAQ,CAAC;AAMhC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB7D,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,oBAAoB,uBAAuB,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,mBAAmB,iCAAiC,CAAC;AAMlE;;GAEG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAMvC;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,WAAW,EASxC,CAAC;AAMX;;;GAGG;AACH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,iBAAiB,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Core Constants Module
|
|
3
|
+
*
|
|
4
|
+
* Centralized constants for the logging system.
|
|
5
|
+
* All logger-related constants should be defined here for consistency
|
|
6
|
+
* and to avoid magic values scattered throughout the codebase.
|
|
7
|
+
*
|
|
8
|
+
* @module logger/core/constants
|
|
9
|
+
*/
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// Log Level Configuration
|
|
12
|
+
// ============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Numeric values for log levels to determine if a message should be logged.
|
|
15
|
+
* Higher values = more severe.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* if (LOG_LEVELS[level] >= LOG_LEVELS[minLevel]) {
|
|
20
|
+
* // Log the message
|
|
21
|
+
* }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
export const LOG_LEVELS = {
|
|
25
|
+
trace: 10,
|
|
26
|
+
debug: 20,
|
|
27
|
+
info: 30,
|
|
28
|
+
warn: 40,
|
|
29
|
+
error: 50,
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Log severity levels for ECS/structured logging.
|
|
33
|
+
* Based on RFC 5424 syslog severity (inverted: 0 = emergency, 7 = debug).
|
|
34
|
+
*/
|
|
35
|
+
export const LOG_SEVERITY = {
|
|
36
|
+
trace: 7, // Debug
|
|
37
|
+
debug: 7, // Debug
|
|
38
|
+
info: 6, // Informational
|
|
39
|
+
warn: 4, // Warning
|
|
40
|
+
error: 3, // Error
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Maps internal log levels to MCP logging levels (RFC 5424).
|
|
44
|
+
* MCP uses syslog-style levels which are more granular.
|
|
45
|
+
*/
|
|
46
|
+
export const LOG_LEVEL_TO_MCP = {
|
|
47
|
+
trace: "debug",
|
|
48
|
+
debug: "debug",
|
|
49
|
+
info: "info",
|
|
50
|
+
warn: "warning",
|
|
51
|
+
error: "error",
|
|
52
|
+
};
|
|
53
|
+
// ============================================================================
|
|
54
|
+
// Default Configuration
|
|
55
|
+
// ============================================================================
|
|
56
|
+
/**
|
|
57
|
+
* Default log level when not specified in configuration.
|
|
58
|
+
*/
|
|
59
|
+
export const DEFAULT_LOG_LEVEL = "info";
|
|
60
|
+
/**
|
|
61
|
+
* Default log format when not specified in configuration.
|
|
62
|
+
*/
|
|
63
|
+
export const DEFAULT_LOG_FORMAT = "text";
|
|
64
|
+
/**
|
|
65
|
+
* Default component name for loggers without explicit component.
|
|
66
|
+
*/
|
|
67
|
+
/**
|
|
68
|
+
* Default service name for structured logs.
|
|
69
|
+
*/
|
|
70
|
+
export const DEFAULT_SERVICE_NAME = "mcp-server";
|
|
71
|
+
// ============================================================================
|
|
72
|
+
// Formatting Constants
|
|
73
|
+
// ============================================================================
|
|
74
|
+
/**
|
|
75
|
+
* Maximum length for truncated session/request IDs in text logs.
|
|
76
|
+
*/
|
|
77
|
+
export const ID_DISPLAY_LENGTH = 8;
|
|
78
|
+
/**
|
|
79
|
+
* Padding for log level alignment in text format.
|
|
80
|
+
*/
|
|
81
|
+
export const LEVEL_PAD_LENGTH = 5;
|
|
82
|
+
/**
|
|
83
|
+
* File extension for log files.
|
|
84
|
+
*/
|
|
85
|
+
export const LOG_FILE_EXTENSION = ".log";
|
|
86
|
+
/**
|
|
87
|
+
* Default components for file logging.
|
|
88
|
+
* Streams will be created for each component.
|
|
89
|
+
*/
|
|
90
|
+
export const DEFAULT_LOG_COMPONENTS = ["server", "api", "transport", "tools"];
|
|
91
|
+
/**
|
|
92
|
+
* Logger component names for the logging system.
|
|
93
|
+
* Used for consistent log categorization across the logger module.
|
|
94
|
+
*/
|
|
95
|
+
export const LOGGER_COMPONENTS = {
|
|
96
|
+
/** MCP protocol logger */
|
|
97
|
+
MCP_LOGGER: "McpLogger",
|
|
98
|
+
/** File writer component */
|
|
99
|
+
FILE_WRITER: "FileWriter",
|
|
100
|
+
/** Console writer component */
|
|
101
|
+
CONSOLE_WRITER: "ConsoleWriter",
|
|
102
|
+
};
|
|
103
|
+
// ============================================================================
|
|
104
|
+
// Security Constants (Secret Scrubbing)
|
|
105
|
+
// ============================================================================
|
|
106
|
+
/**
|
|
107
|
+
* List of keys that are considered sensitive and should be redacted from logs.
|
|
108
|
+
* Re-exported from the shared utility for backwards compatibility.
|
|
109
|
+
*
|
|
110
|
+
* @see {@link ../../utils/sensitive-keys.ts} — canonical source
|
|
111
|
+
*/
|
|
112
|
+
export { SENSITIVE_KEYS, SENSITIVE_KEY_BLOCKLIST } from "../../utils/sensitive-keys.js";
|
|
113
|
+
/**
|
|
114
|
+
* The string used to replace redacted values.
|
|
115
|
+
*/
|
|
116
|
+
export const REDACTED_VALUE = "**********";
|
|
117
|
+
/**
|
|
118
|
+
* JWT prefix pattern for detection.
|
|
119
|
+
*/
|
|
120
|
+
export const JWT_PREFIX = "eyJ";
|
|
121
|
+
// ============================================================================
|
|
122
|
+
// Security Constants (Injection Prevention - CWE-117)
|
|
123
|
+
// ============================================================================
|
|
124
|
+
/**
|
|
125
|
+
* Control characters that could be used for log injection (CWE-117).
|
|
126
|
+
* These are replaced to ensure one log entry = one line.
|
|
127
|
+
*
|
|
128
|
+
* Note: Existing backslashes are intentionally NOT escaped before replacement.
|
|
129
|
+
* Escaping backslashes first would double-escape already-escaped sequences
|
|
130
|
+
* (e.g. a literal `\n` in source text would become `\\n`). The CWE-117
|
|
131
|
+
* threat model focuses on preventing attackers from forging new log entries
|
|
132
|
+
* via injected newlines — visual ambiguity between a literal backslash-n
|
|
133
|
+
* and an escaped newline is an acceptable trade-off.
|
|
134
|
+
*/
|
|
135
|
+
export const CONTROL_CHAR_REPLACEMENTS = {
|
|
136
|
+
"\n": "\\n", // Newline
|
|
137
|
+
"\r": "\\r", // Carriage return
|
|
138
|
+
"\t": "\\t", // Tab
|
|
139
|
+
"\0": "\\0", // Null
|
|
140
|
+
"\x07": "\\a", // Bell (BEL) — terminal DoS vector
|
|
141
|
+
"\x08": "\\b", // Backspace — can erase log entries in terminals
|
|
142
|
+
"\x0B": "\\v", // Vertical tab
|
|
143
|
+
"\x0C": "\\f", // Form feed
|
|
144
|
+
"\x0E": "\\x0E", // Shift Out — character set switching
|
|
145
|
+
"\x0F": "\\x0F", // Shift In — character set switching
|
|
146
|
+
"\x1A": "\\x1A", // Substitute (SUB) — terminates Windows command output
|
|
147
|
+
"\x1B": "\\e", // Escape
|
|
148
|
+
"\x1C": "\\x1C", // File Separator
|
|
149
|
+
"\x1D": "\\x1D", // Group Separator
|
|
150
|
+
"\x1E": "\\x1E", // Record Separator
|
|
151
|
+
"\x1F": "\\x1F", // Unit Separator
|
|
152
|
+
};
|
|
153
|
+
/**
|
|
154
|
+
* Regex pattern string for all C0 control characters (U+0000–U+001F)
|
|
155
|
+
* except those commonly allowed in text (\t is replaced but kept readable).
|
|
156
|
+
*/
|
|
157
|
+
export const CONTROL_CHAR_PATTERN = "[\\x00-\\x1F\\x7F]";
|
|
158
|
+
/**
|
|
159
|
+
* Regex pattern string for ANSI escape sequences.
|
|
160
|
+
*/
|
|
161
|
+
export const ANSI_ESCAPE_PATTERN = "\\x1B\\[[?>=<:0-9;]*[a-zA-Z]";
|
|
162
|
+
// ============================================================================
|
|
163
|
+
// Context Constants
|
|
164
|
+
// ============================================================================
|
|
165
|
+
/**
|
|
166
|
+
* Maximum depth for context merging to prevent infinite loops.
|
|
167
|
+
*/
|
|
168
|
+
export const MAX_CONTEXT_DEPTH = 10;
|
|
169
|
+
/**
|
|
170
|
+
* Separator used for hierarchical component names.
|
|
171
|
+
*/
|
|
172
|
+
export const COMPONENT_SEPARATOR = ".";
|
|
173
|
+
// ============================================================================
|
|
174
|
+
// MCP Level Configuration
|
|
175
|
+
// ============================================================================
|
|
176
|
+
/**
|
|
177
|
+
* Ordered list of MCP log levels (RFC 5424) for severity comparison.
|
|
178
|
+
* Lower index = lower severity. Used for level filtering.
|
|
179
|
+
*/
|
|
180
|
+
export const MCP_LEVEL_ORDER = [
|
|
181
|
+
"debug",
|
|
182
|
+
"info",
|
|
183
|
+
"notice",
|
|
184
|
+
"warning",
|
|
185
|
+
"error",
|
|
186
|
+
"critical",
|
|
187
|
+
"alert",
|
|
188
|
+
"emergency",
|
|
189
|
+
];
|
|
190
|
+
// ============================================================================
|
|
191
|
+
// Performance Constants
|
|
192
|
+
// ============================================================================
|
|
193
|
+
/**
|
|
194
|
+
* Maximum number of cached child loggers.
|
|
195
|
+
* Prevents memory leaks from excessive child logger creation.
|
|
196
|
+
*/
|
|
197
|
+
export const MAX_CHILD_LOGGER_CACHE_SIZE = 100;
|
|
198
|
+
/**
|
|
199
|
+
* Maximum message length before truncation in non-debug modes.
|
|
200
|
+
*/
|
|
201
|
+
export const MAX_MESSAGE_LENGTH = 10_000;
|
|
202
|
+
/**
|
|
203
|
+
* Truncation suffix for long messages.
|
|
204
|
+
*/
|
|
205
|
+
export const TRUNCATION_SUFFIX = "... [truncated]";
|
|
206
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/logger/core/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Logger Context Management Module
|
|
3
|
+
*
|
|
4
|
+
* Provides robust context management for correlated logging using AsyncLocalStorage.
|
|
5
|
+
* Enables automatic log enrichment with request/session context across async boundaries.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Automatic context propagation through async operations
|
|
9
|
+
* - Hierarchical context support (parent/child relationships)
|
|
10
|
+
* - Thread-safe context isolation (depth tracked per-context, not globally)
|
|
11
|
+
* - Memory-efficient context management
|
|
12
|
+
*
|
|
13
|
+
* @module logger/core/context
|
|
14
|
+
*/
|
|
15
|
+
import type { LogContext } from "./types.js";
|
|
16
|
+
/**
|
|
17
|
+
* Run a function within a logging context.
|
|
18
|
+
*
|
|
19
|
+
* All logs within the function (and any async operations it spawns)
|
|
20
|
+
* will automatically include the provided context. This is the primary
|
|
21
|
+
* way to establish context for a request or operation.
|
|
22
|
+
*
|
|
23
|
+
* Thread-safety: Depth is tracked within the context object itself,
|
|
24
|
+
* making it safe for concurrent operations across different async contexts.
|
|
25
|
+
*
|
|
26
|
+
* @param context - The context to use for logging
|
|
27
|
+
* @param fn - The function to execute within the context
|
|
28
|
+
* @returns The result of the function
|
|
29
|
+
* @throws Error if maximum context depth is exceeded
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const result = runWithContext(
|
|
34
|
+
* { requestId: 'req-123', sessionId: 'sess-456' },
|
|
35
|
+
* async () => {
|
|
36
|
+
* logger.info('Processing request'); // Includes requestId and sessionId
|
|
37
|
+
* return await processRequest();
|
|
38
|
+
* }
|
|
39
|
+
* );
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
export declare function runWithContext<T>(context: LogContext, fn: () => T): T;
|
|
43
|
+
/**
|
|
44
|
+
* Get the current logging context.
|
|
45
|
+
*
|
|
46
|
+
* Returns undefined if called outside of a context established by `runWithContext`.
|
|
47
|
+
*
|
|
48
|
+
* @returns The current context or undefined
|
|
49
|
+
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```typescript
|
|
52
|
+
* const context = getContext();
|
|
53
|
+
* if (context?.requestId) {
|
|
54
|
+
* console.log(`Request: ${context.requestId}`);
|
|
55
|
+
* }
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
export declare function getContext(): LogContext | undefined;
|
|
59
|
+
/**
|
|
60
|
+
* Get a specific value from the current context.
|
|
61
|
+
*
|
|
62
|
+
* Convenience function for accessing individual context properties
|
|
63
|
+
* without retrieving the entire context object.
|
|
64
|
+
*
|
|
65
|
+
* @param key - The context property to retrieve
|
|
66
|
+
* @returns The value or undefined if not in context or key doesn't exist
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```typescript
|
|
70
|
+
* const requestId = getContextValue('requestId');
|
|
71
|
+
* const component = getContextValue('component') ?? 'unknown';
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function getContextValue<K extends keyof LogContext>(key: K): LogContext[K] | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Check if currently running within a logging context.
|
|
77
|
+
*
|
|
78
|
+
* @returns true if inside a context established by `runWithContext`
|
|
79
|
+
*
|
|
80
|
+
* @example
|
|
81
|
+
* ```typescript
|
|
82
|
+
* if (hasContext()) {
|
|
83
|
+
* // Safe to access context values
|
|
84
|
+
* }
|
|
85
|
+
* ```
|
|
86
|
+
*/
|
|
87
|
+
export declare function hasContext(): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Create a new context by merging additional values with the current context.
|
|
90
|
+
*
|
|
91
|
+
* This is useful for adding context without losing existing values.
|
|
92
|
+
* If called outside a context, returns only the additional context.
|
|
93
|
+
*
|
|
94
|
+
* @param additionalContext - Context values to add/override
|
|
95
|
+
* @returns A new merged context (does not modify current context)
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* const newContext = mergeContext({ component: 'api', traceId: 'trace-123' });
|
|
100
|
+
* runWithContext(newContext, () => {
|
|
101
|
+
* // Has both original context + new values
|
|
102
|
+
* });
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
export declare function mergeContext(additionalContext: Partial<LogContext>): LogContext;
|
|
106
|
+
/**
|
|
107
|
+
* Create a child context that inherits from the current context.
|
|
108
|
+
*
|
|
109
|
+
* The child context inherits all parent values but can override specific ones.
|
|
110
|
+
* Component names are automatically concatenated with a separator.
|
|
111
|
+
*
|
|
112
|
+
* @param childContext - Context values for the child
|
|
113
|
+
* @returns A new child context
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* // Parent has component: 'api'
|
|
118
|
+
* const childCtx = createChildContext({ component: 'handlers' });
|
|
119
|
+
* // childCtx.component = 'api.handlers'
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
export declare function createChildContext(childContext: Partial<LogContext>): LogContext;
|
|
123
|
+
/**
|
|
124
|
+
* Execute a function with an extended context (adds to current context).
|
|
125
|
+
*
|
|
126
|
+
* Combines `mergeContext` and `runWithContext` for convenience.
|
|
127
|
+
* This is the preferred way to add context for a sub-operation.
|
|
128
|
+
*
|
|
129
|
+
* @param additionalContext - Context values to add
|
|
130
|
+
* @param fn - The function to execute
|
|
131
|
+
* @returns The result of the function
|
|
132
|
+
*
|
|
133
|
+
* @example
|
|
134
|
+
* ```typescript
|
|
135
|
+
* await withExtendedContext({ operation: 'create' }, async () => {
|
|
136
|
+
* logger.info('Creating resource'); // Includes operation: 'create'
|
|
137
|
+
* return await createResource();
|
|
138
|
+
* });
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
export declare function withExtendedContext<T>(additionalContext: Partial<LogContext>, fn: () => T): T;
|
|
142
|
+
/**
|
|
143
|
+
* Execute a function with a child context.
|
|
144
|
+
*
|
|
145
|
+
* Combines `createChildContext` and `runWithContext` for convenience.
|
|
146
|
+
* Useful for creating hierarchical logging scopes.
|
|
147
|
+
*
|
|
148
|
+
* @param childContext - Context values for the child scope
|
|
149
|
+
* @param fn - The function to execute
|
|
150
|
+
* @returns The result of the function
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```typescript
|
|
154
|
+
* await withChildContext({ component: 'validation' }, async () => {
|
|
155
|
+
* logger.info('Validating input'); // component: 'api.validation'
|
|
156
|
+
* return await validateInput();
|
|
157
|
+
* });
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
export declare function withChildContext<T>(childContext: Partial<LogContext>, fn: () => T): T;
|
|
161
|
+
/**
|
|
162
|
+
* Get the current context depth.
|
|
163
|
+
*
|
|
164
|
+
* Thread-safe: reads depth from the current async context.
|
|
165
|
+
* Returns 0 if called outside of any context.
|
|
166
|
+
*
|
|
167
|
+
* @returns The current context nesting depth
|
|
168
|
+
*/
|
|
169
|
+
export declare function getContextDepth(): number;
|
|
170
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/logger/core/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAoB7C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAiBrE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,IAAI,UAAU,GAAG,SAAS,CAEnD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,MAAM,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAE7F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAG/E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,UAAU,CAgBhF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAG7F;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAGrF;AAMD;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAExC"}
|