@juspay/neurolink 9.31.2 → 9.32.1
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 +12 -0
- package/dist/auth/AuthProviderFactory.d.ts +71 -0
- package/dist/auth/AuthProviderFactory.js +111 -0
- package/dist/auth/AuthProviderRegistry.d.ts +33 -0
- package/dist/auth/AuthProviderRegistry.js +190 -0
- package/dist/auth/RequestContext.d.ts +23 -0
- package/dist/auth/RequestContext.js +78 -0
- package/dist/auth/anthropicOAuth.js +1 -1
- package/dist/auth/authContext.d.ts +198 -0
- package/dist/auth/authContext.js +314 -0
- package/dist/auth/errors.d.ts +63 -0
- package/dist/auth/errors.js +39 -0
- package/dist/auth/index.d.ts +20 -8
- package/dist/auth/index.js +35 -7
- package/dist/auth/middleware/AuthMiddleware.d.ts +181 -0
- package/dist/auth/middleware/AuthMiddleware.js +519 -0
- package/dist/auth/middleware/rateLimitByUser.d.ts +282 -0
- package/dist/auth/middleware/rateLimitByUser.js +554 -0
- package/dist/auth/providers/BaseAuthProvider.d.ts +259 -0
- package/dist/auth/providers/BaseAuthProvider.js +723 -0
- package/dist/auth/providers/CognitoProvider.d.ts +61 -0
- package/dist/auth/providers/CognitoProvider.js +304 -0
- package/dist/auth/providers/KeycloakProvider.d.ts +61 -0
- package/dist/auth/providers/KeycloakProvider.js +393 -0
- package/dist/auth/providers/auth0.d.ts +59 -0
- package/dist/auth/providers/auth0.js +274 -0
- package/dist/auth/providers/betterAuth.d.ts +51 -0
- package/dist/auth/providers/betterAuth.js +182 -0
- package/dist/auth/providers/clerk.d.ts +65 -0
- package/dist/auth/providers/clerk.js +317 -0
- package/dist/auth/providers/custom.d.ts +64 -0
- package/dist/auth/providers/custom.js +112 -0
- package/dist/auth/providers/firebase.d.ts +63 -0
- package/dist/auth/providers/firebase.js +226 -0
- package/dist/auth/providers/jwt.d.ts +68 -0
- package/dist/auth/providers/jwt.js +212 -0
- package/dist/auth/providers/oauth2.d.ts +73 -0
- package/dist/auth/providers/oauth2.js +303 -0
- package/dist/auth/providers/supabase.d.ts +63 -0
- package/dist/auth/providers/supabase.js +259 -0
- package/dist/auth/providers/workos.d.ts +61 -0
- package/dist/auth/providers/workos.js +284 -0
- package/dist/auth/serverBridge.d.ts +14 -0
- package/dist/auth/serverBridge.js +25 -0
- package/dist/auth/sessionManager.d.ts +142 -0
- package/dist/auth/sessionManager.js +437 -0
- package/dist/cli/commands/authProviders.d.ts +43 -0
- package/dist/cli/commands/authProviders.js +399 -0
- package/dist/cli/commands/proxy.js +18 -5
- package/dist/cli/factories/authCommandFactory.d.ts +23 -5
- package/dist/cli/factories/authCommandFactory.js +108 -5
- package/dist/cli/parser.js +1 -1
- package/dist/client/aiSdkAdapter.js +1 -1
- package/dist/client/index.js +138 -477
- package/dist/core/factory.js +0 -1
- package/dist/core/infrastructure/baseRegistry.d.ts +3 -1
- package/dist/core/infrastructure/baseRegistry.js +5 -1
- package/dist/core/redisConversationMemoryManager.js +1 -1
- package/dist/features/ppt/slideGenerator.js +0 -1
- package/dist/features/ppt/utils.js +0 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +25 -0
- package/dist/lib/auth/AuthProviderFactory.d.ts +71 -0
- package/dist/lib/auth/AuthProviderFactory.js +112 -0
- package/dist/lib/auth/AuthProviderRegistry.d.ts +33 -0
- package/dist/lib/auth/AuthProviderRegistry.js +191 -0
- package/dist/lib/auth/RequestContext.d.ts +23 -0
- package/dist/lib/auth/RequestContext.js +79 -0
- package/dist/lib/auth/authContext.d.ts +198 -0
- package/dist/lib/auth/authContext.js +315 -0
- package/dist/lib/auth/errors.d.ts +63 -0
- package/dist/lib/auth/errors.js +40 -0
- package/dist/lib/auth/index.d.ts +20 -8
- package/dist/lib/auth/index.js +35 -7
- package/dist/lib/auth/middleware/AuthMiddleware.d.ts +181 -0
- package/dist/lib/auth/middleware/AuthMiddleware.js +520 -0
- package/dist/lib/auth/middleware/rateLimitByUser.d.ts +282 -0
- package/dist/lib/auth/middleware/rateLimitByUser.js +555 -0
- package/dist/lib/auth/providers/BaseAuthProvider.d.ts +259 -0
- package/dist/lib/auth/providers/BaseAuthProvider.js +724 -0
- package/dist/lib/auth/providers/CognitoProvider.d.ts +61 -0
- package/dist/lib/auth/providers/CognitoProvider.js +305 -0
- package/dist/lib/auth/providers/KeycloakProvider.d.ts +61 -0
- package/dist/lib/auth/providers/KeycloakProvider.js +394 -0
- package/dist/lib/auth/providers/auth0.d.ts +59 -0
- package/dist/lib/auth/providers/auth0.js +275 -0
- package/dist/lib/auth/providers/betterAuth.d.ts +51 -0
- package/dist/lib/auth/providers/betterAuth.js +183 -0
- package/dist/lib/auth/providers/clerk.d.ts +65 -0
- package/dist/lib/auth/providers/clerk.js +318 -0
- package/dist/lib/auth/providers/custom.d.ts +64 -0
- package/dist/lib/auth/providers/custom.js +113 -0
- package/dist/lib/auth/providers/firebase.d.ts +63 -0
- package/dist/lib/auth/providers/firebase.js +227 -0
- package/dist/lib/auth/providers/jwt.d.ts +68 -0
- package/dist/lib/auth/providers/jwt.js +213 -0
- package/dist/lib/auth/providers/oauth2.d.ts +73 -0
- package/dist/lib/auth/providers/oauth2.js +304 -0
- package/dist/lib/auth/providers/supabase.d.ts +63 -0
- package/dist/lib/auth/providers/supabase.js +260 -0
- package/dist/lib/auth/providers/workos.d.ts +61 -0
- package/dist/lib/auth/providers/workos.js +285 -0
- package/dist/lib/auth/serverBridge.d.ts +14 -0
- package/dist/lib/auth/serverBridge.js +26 -0
- package/dist/lib/auth/sessionManager.d.ts +142 -0
- package/dist/lib/auth/sessionManager.js +438 -0
- package/dist/lib/core/infrastructure/baseRegistry.d.ts +3 -1
- package/dist/lib/core/infrastructure/baseRegistry.js +5 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.js +25 -0
- package/dist/lib/mcp/toolRegistry.js +11 -1
- package/dist/lib/neurolink.d.ts +42 -1
- package/dist/lib/neurolink.js +218 -0
- package/dist/lib/rag/ChunkerRegistry.js +2 -2
- package/dist/lib/rag/metadata/MetadataExtractorRegistry.js +2 -2
- package/dist/lib/rag/reranker/RerankerRegistry.js +2 -2
- package/dist/lib/server/routes/agentRoutes.js +20 -2
- package/dist/lib/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/lib/types/authTypes.d.ts +937 -1
- package/dist/lib/types/authTypes.js +2 -1
- package/dist/lib/types/configTypes.d.ts +46 -0
- package/dist/lib/types/generateTypes.d.ts +6 -0
- package/dist/lib/types/index.d.ts +1 -0
- package/dist/lib/types/streamTypes.d.ts +6 -0
- package/dist/mcp/elicitationProtocol.js +1 -1
- package/dist/mcp/servers/agent/directToolsServer.js +0 -1
- package/dist/mcp/toolRegistry.js +11 -1
- package/dist/neurolink.d.ts +42 -1
- package/dist/neurolink.js +218 -0
- package/dist/providers/azureOpenai.js +1 -1
- package/dist/providers/huggingFace.js +0 -1
- package/dist/providers/openaiCompatible.js +0 -1
- package/dist/rag/ChunkerRegistry.js +2 -2
- package/dist/rag/metadata/MetadataExtractorRegistry.js +2 -2
- package/dist/rag/reranker/RerankerRegistry.js +2 -2
- package/dist/sdk/toolRegistration.js +0 -1
- package/dist/server/openapi/generator.js +1 -1
- package/dist/server/routes/agentRoutes.js +20 -2
- package/dist/server/routes/claudeProxyRoutes.js +45 -9
- package/dist/types/authTypes.d.ts +937 -1
- package/dist/types/authTypes.js +2 -1
- package/dist/types/configTypes.d.ts +46 -0
- package/dist/types/configTypes.js +0 -5
- package/dist/types/generateTypes.d.ts +6 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/modelTypes.js +0 -1
- package/dist/types/streamTypes.d.ts +6 -0
- package/dist/types/tools.js +0 -1
- package/dist/types/typeAliases.js +0 -1
- package/dist/types/utilities.js +1 -1
- package/dist/types/workflowTypes.js +0 -1
- package/dist/utils/providerRetry.js +0 -1
- package/dist/utils/providerUtils.js +0 -1
- package/package.json +3 -2
- package/dist/client/adapters/providerImageAdapter.js +0 -588
- package/dist/client/adapters/tts/googleTTSHandler.js +0 -344
- package/dist/client/adapters/video/directorPipeline.js +0 -516
- package/dist/client/adapters/video/ffmpegAdapter.js +0 -206
- package/dist/client/adapters/video/frameExtractor.js +0 -143
- package/dist/client/adapters/video/vertexVideoHandler.js +0 -763
- package/dist/client/adapters/video/videoAnalyzer.js +0 -238
- package/dist/client/adapters/video/videoMerger.js +0 -171
- package/dist/client/agent/directTools.js +0 -840
- package/dist/client/auth/anthropicOAuth.js +0 -974
- package/dist/client/auth/tokenStore.js +0 -799
- package/dist/client/client/aiSdkAdapter.js +0 -487
- package/dist/client/client/auth.js +0 -473
- package/dist/client/client/errors.js +0 -552
- package/dist/client/client/httpClient.js +0 -837
- package/dist/client/client/index.js +0 -172
- package/dist/client/client/interceptors.js +0 -601
- package/dist/client/client/sseClient.js +0 -545
- package/dist/client/client/streamingClient.js +0 -917
- package/dist/client/client/wsClient.js +0 -369
- package/dist/client/config/configManager.js +0 -303
- package/dist/client/config/conversationMemory.js +0 -86
- package/dist/client/config/taskClassificationConfig.js +0 -148
- package/dist/client/constants/contextWindows.js +0 -295
- package/dist/client/constants/enums.js +0 -853
- package/dist/client/constants/index.js +0 -207
- package/dist/client/constants/performance.js +0 -389
- package/dist/client/constants/retry.js +0 -266
- package/dist/client/constants/timeouts.js +0 -182
- package/dist/client/constants/tokens.js +0 -380
- package/dist/client/constants/videoErrors.js +0 -46
- package/dist/client/context/budgetChecker.js +0 -98
- package/dist/client/context/contextCompactor.js +0 -205
- package/dist/client/context/emergencyTruncation.js +0 -88
- package/dist/client/context/errorDetection.js +0 -171
- package/dist/client/context/errors.js +0 -21
- package/dist/client/context/fileTokenBudget.js +0 -127
- package/dist/client/context/prompts/summarizationPrompt.js +0 -117
- package/dist/client/context/stages/fileReadDeduplicator.js +0 -66
- package/dist/client/context/stages/slidingWindowTruncator.js +0 -190
- package/dist/client/context/stages/structuredSummarizer.js +0 -99
- package/dist/client/context/stages/toolOutputPruner.js +0 -52
- package/dist/client/context/summarizationEngine.js +0 -136
- package/dist/client/context/toolOutputLimits.js +0 -78
- package/dist/client/context/toolPairRepair.js +0 -66
- package/dist/client/core/analytics.js +0 -88
- package/dist/client/core/baseProvider.js +0 -1385
- package/dist/client/core/constants.js +0 -140
- package/dist/client/core/conversationMemoryFactory.js +0 -141
- package/dist/client/core/conversationMemoryInitializer.js +0 -128
- package/dist/client/core/conversationMemoryManager.js +0 -344
- package/dist/client/core/dynamicModels.js +0 -358
- package/dist/client/core/evaluation.js +0 -309
- package/dist/client/core/evaluationProviders.js +0 -248
- package/dist/client/core/factory.js +0 -412
- package/dist/client/core/infrastructure/baseError.js +0 -22
- package/dist/client/core/infrastructure/baseFactory.js +0 -54
- package/dist/client/core/infrastructure/baseRegistry.js +0 -49
- package/dist/client/core/infrastructure/index.js +0 -5
- package/dist/client/core/infrastructure/retry.js +0 -20
- package/dist/client/core/infrastructure/typedEventEmitter.js +0 -23
- package/dist/client/core/modelConfiguration.js +0 -851
- package/dist/client/core/modules/GenerationHandler.js +0 -588
- package/dist/client/core/modules/MessageBuilder.js +0 -273
- package/dist/client/core/modules/StreamHandler.js +0 -185
- package/dist/client/core/modules/TelemetryHandler.js +0 -203
- package/dist/client/core/modules/ToolsManager.js +0 -499
- package/dist/client/core/modules/Utilities.js +0 -331
- package/dist/client/core/redisConversationMemoryManager.js +0 -1435
- package/dist/client/core/streamAnalytics.js +0 -131
- package/dist/client/evaluation/contextBuilder.js +0 -134
- package/dist/client/evaluation/index.js +0 -61
- package/dist/client/evaluation/prompts.js +0 -73
- package/dist/client/evaluation/ragasEvaluator.js +0 -110
- package/dist/client/evaluation/retryManager.js +0 -78
- package/dist/client/evaluation/scoring.js +0 -61
- package/dist/client/factories/providerFactory.js +0 -166
- package/dist/client/factories/providerRegistry.js +0 -166
- package/dist/client/features/ppt/constants.js +0 -896
- package/dist/client/features/ppt/contentPlanner.js +0 -529
- package/dist/client/features/ppt/presentationOrchestrator.js +0 -236
- package/dist/client/features/ppt/slideGenerator.js +0 -532
- package/dist/client/features/ppt/slideRenderers.js +0 -2383
- package/dist/client/features/ppt/slideTypeInference.js +0 -405
- package/dist/client/features/ppt/types.js +0 -13
- package/dist/client/features/ppt/utils.js +0 -443
- package/dist/client/files/fileReferenceRegistry.js +0 -1543
- package/dist/client/files/fileTools.js +0 -450
- package/dist/client/files/streamingReader.js +0 -321
- package/dist/client/files/types.js +0 -23
- package/dist/client/hitl/hitlErrors.js +0 -54
- package/dist/client/hitl/hitlManager.js +0 -460
- package/dist/client/mcp/agentExposure.js +0 -356
- package/dist/client/mcp/auth/index.js +0 -11
- package/dist/client/mcp/auth/oauthClientProvider.js +0 -325
- package/dist/client/mcp/auth/tokenStorage.js +0 -134
- package/dist/client/mcp/batching/index.js +0 -10
- package/dist/client/mcp/batching/requestBatcher.js +0 -441
- package/dist/client/mcp/caching/index.js +0 -10
- package/dist/client/mcp/caching/toolCache.js +0 -433
- package/dist/client/mcp/elicitation/elicitationManager.js +0 -376
- package/dist/client/mcp/elicitation/index.js +0 -11
- package/dist/client/mcp/elicitation/types.js +0 -10
- package/dist/client/mcp/elicitationProtocol.js +0 -375
- package/dist/client/mcp/enhancedToolDiscovery.js +0 -481
- package/dist/client/mcp/externalServerManager.js +0 -1478
- package/dist/client/mcp/factory.js +0 -161
- package/dist/client/mcp/flexibleToolValidator.js +0 -161
- package/dist/client/mcp/httpRateLimiter.js +0 -391
- package/dist/client/mcp/httpRetryHandler.js +0 -178
- package/dist/client/mcp/index.js +0 -74
- package/dist/client/mcp/mcpCircuitBreaker.js +0 -427
- package/dist/client/mcp/mcpClientFactory.js +0 -708
- package/dist/client/mcp/mcpRegistryClient.js +0 -488
- package/dist/client/mcp/mcpServerBase.js +0 -373
- package/dist/client/mcp/multiServerManager.js +0 -579
- package/dist/client/mcp/registry.js +0 -158
- package/dist/client/mcp/routing/index.js +0 -10
- package/dist/client/mcp/routing/toolRouter.js +0 -416
- package/dist/client/mcp/serverCapabilities.js +0 -502
- package/dist/client/mcp/servers/agent/directToolsServer.js +0 -150
- package/dist/client/mcp/toolAnnotations.js +0 -239
- package/dist/client/mcp/toolConverter.js +0 -258
- package/dist/client/mcp/toolDiscoveryService.js +0 -798
- package/dist/client/mcp/toolIntegration.js +0 -334
- package/dist/client/mcp/toolRegistry.js +0 -719
- package/dist/client/memory/hippocampusInitializer.js +0 -19
- package/dist/client/memory/memoryRetrievalTools.js +0 -166
- package/dist/client/middleware/builtin/analytics.js +0 -132
- package/dist/client/middleware/builtin/autoEvaluation.js +0 -203
- package/dist/client/middleware/builtin/guardrails.js +0 -109
- package/dist/client/middleware/builtin/lifecycle.js +0 -168
- package/dist/client/middleware/factory.js +0 -327
- package/dist/client/middleware/registry.js +0 -295
- package/dist/client/middleware/utils/guardrailsUtils.js +0 -396
- package/dist/client/models/anthropicModels.js +0 -527
- package/dist/client/neurolink.js +0 -8015
- package/dist/client/observability/exporterRegistry.js +0 -413
- package/dist/client/observability/exporters/arizeExporter.js +0 -138
- package/dist/client/observability/exporters/baseExporter.js +0 -190
- package/dist/client/observability/exporters/braintrustExporter.js +0 -154
- package/dist/client/observability/exporters/datadogExporter.js +0 -196
- package/dist/client/observability/exporters/laminarExporter.js +0 -302
- package/dist/client/observability/exporters/langfuseExporter.js +0 -209
- package/dist/client/observability/exporters/langsmithExporter.js +0 -143
- package/dist/client/observability/exporters/otelExporter.js +0 -164
- package/dist/client/observability/exporters/posthogExporter.js +0 -287
- package/dist/client/observability/exporters/sentryExporter.js +0 -165
- package/dist/client/observability/index.js +0 -31
- package/dist/client/observability/metricsAggregator.js +0 -556
- package/dist/client/observability/otelBridge.js +0 -131
- package/dist/client/observability/retryPolicy.js +0 -383
- package/dist/client/observability/sampling/samplers.js +0 -216
- package/dist/client/observability/spanProcessor.js +0 -303
- package/dist/client/observability/tokenTracker.js +0 -413
- package/dist/client/observability/types/exporterTypes.js +0 -5
- package/dist/client/observability/types/index.js +0 -4
- package/dist/client/observability/types/spanTypes.js +0 -92
- package/dist/client/observability/utils/safeMetadata.js +0 -25
- package/dist/client/observability/utils/spanSerializer.js +0 -292
- package/dist/client/processors/archive/ArchiveProcessor.js +0 -1308
- package/dist/client/processors/base/BaseFileProcessor.js +0 -614
- package/dist/client/processors/base/types.js +0 -82
- package/dist/client/processors/config/fileTypes.js +0 -520
- package/dist/client/processors/config/index.js +0 -92
- package/dist/client/processors/config/languageMap.js +0 -410
- package/dist/client/processors/config/mimeTypes.js +0 -363
- package/dist/client/processors/config/sizeLimits.js +0 -258
- package/dist/client/processors/document/ExcelProcessor.js +0 -590
- package/dist/client/processors/document/OpenDocumentProcessor.js +0 -212
- package/dist/client/processors/document/PptxProcessor.js +0 -157
- package/dist/client/processors/document/RtfProcessor.js +0 -361
- package/dist/client/processors/document/WordProcessor.js +0 -353
- package/dist/client/processors/errors/FileErrorCode.js +0 -255
- package/dist/client/processors/errors/errorHelpers.js +0 -386
- package/dist/client/processors/errors/errorSerializer.js +0 -507
- package/dist/client/processors/errors/index.js +0 -49
- package/dist/client/processors/markup/SvgProcessor.js +0 -240
- package/dist/client/processors/media/AudioProcessor.js +0 -707
- package/dist/client/processors/media/VideoProcessor.js +0 -1045
- package/dist/client/providers/amazonBedrock.js +0 -1512
- package/dist/client/providers/amazonSagemaker.js +0 -162
- package/dist/client/providers/anthropic.js +0 -831
- package/dist/client/providers/azureOpenai.js +0 -143
- package/dist/client/providers/googleAiStudio.js +0 -1200
- package/dist/client/providers/googleNativeGemini3.js +0 -543
- package/dist/client/providers/googleVertex.js +0 -2936
- package/dist/client/providers/huggingFace.js +0 -315
- package/dist/client/providers/litellm.js +0 -488
- package/dist/client/providers/mistral.js +0 -157
- package/dist/client/providers/ollama.js +0 -1579
- package/dist/client/providers/openAI.js +0 -627
- package/dist/client/providers/openRouter.js +0 -543
- package/dist/client/providers/openaiCompatible.js +0 -290
- package/dist/client/providers/providerTypeUtils.js +0 -46
- package/dist/client/providers/sagemaker/adaptive-semaphore.js +0 -215
- package/dist/client/providers/sagemaker/client.js +0 -472
- package/dist/client/providers/sagemaker/config.js +0 -317
- package/dist/client/providers/sagemaker/detection.js +0 -606
- package/dist/client/providers/sagemaker/error-constants.js +0 -227
- package/dist/client/providers/sagemaker/errors.js +0 -299
- package/dist/client/providers/sagemaker/language-model.js +0 -775
- package/dist/client/providers/sagemaker/parsers.js +0 -634
- package/dist/client/providers/sagemaker/streaming.js +0 -331
- package/dist/client/providers/sagemaker/structured-parser.js +0 -625
- package/dist/client/proxy/accountQuota.js +0 -162
- package/dist/client/proxy/claudeFormat.js +0 -595
- package/dist/client/proxy/modelRouter.js +0 -29
- package/dist/client/proxy/oauthFetch.js +0 -367
- package/dist/client/proxy/proxyFetch.js +0 -586
- package/dist/client/proxy/requestLogger.js +0 -207
- package/dist/client/proxy/tokenRefresh.js +0 -124
- package/dist/client/proxy/usageStats.js +0 -74
- package/dist/client/proxy/utils/noProxyUtils.js +0 -149
- package/dist/client/rag/ChunkerFactory.js +0 -320
- package/dist/client/rag/ChunkerRegistry.js +0 -421
- package/dist/client/rag/chunkers/BaseChunker.js +0 -143
- package/dist/client/rag/chunkers/CharacterChunker.js +0 -28
- package/dist/client/rag/chunkers/HTMLChunker.js +0 -38
- package/dist/client/rag/chunkers/JSONChunker.js +0 -68
- package/dist/client/rag/chunkers/LaTeXChunker.js +0 -63
- package/dist/client/rag/chunkers/MarkdownChunker.js +0 -306
- package/dist/client/rag/chunkers/RecursiveChunker.js +0 -139
- package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +0 -138
- package/dist/client/rag/chunkers/SentenceChunker.js +0 -66
- package/dist/client/rag/chunkers/TokenChunker.js +0 -61
- package/dist/client/rag/chunkers/index.js +0 -15
- package/dist/client/rag/chunking/characterChunker.js +0 -142
- package/dist/client/rag/chunking/chunkerRegistry.js +0 -194
- package/dist/client/rag/chunking/htmlChunker.js +0 -247
- package/dist/client/rag/chunking/index.js +0 -17
- package/dist/client/rag/chunking/jsonChunker.js +0 -281
- package/dist/client/rag/chunking/latexChunker.js +0 -251
- package/dist/client/rag/chunking/markdownChunker.js +0 -373
- package/dist/client/rag/chunking/recursiveChunker.js +0 -148
- package/dist/client/rag/chunking/semanticChunker.js +0 -306
- package/dist/client/rag/chunking/sentenceChunker.js +0 -230
- package/dist/client/rag/chunking/tokenChunker.js +0 -183
- package/dist/client/rag/document/MDocument.js +0 -392
- package/dist/client/rag/document/index.js +0 -5
- package/dist/client/rag/document/loaders.js +0 -500
- package/dist/client/rag/errors/RAGError.js +0 -274
- package/dist/client/rag/errors/index.js +0 -6
- package/dist/client/rag/graphRag/graphRAG.js +0 -401
- package/dist/client/rag/graphRag/index.js +0 -4
- package/dist/client/rag/index.js +0 -141
- package/dist/client/rag/metadata/MetadataExtractorFactory.js +0 -418
- package/dist/client/rag/metadata/MetadataExtractorRegistry.js +0 -362
- package/dist/client/rag/metadata/index.js +0 -9
- package/dist/client/rag/metadata/metadataExtractor.js +0 -280
- package/dist/client/rag/pipeline/RAGPipeline.js +0 -436
- package/dist/client/rag/pipeline/contextAssembly.js +0 -341
- package/dist/client/rag/pipeline/index.js +0 -5
- package/dist/client/rag/ragIntegration.js +0 -321
- package/dist/client/rag/reranker/RerankerFactory.js +0 -430
- package/dist/client/rag/reranker/RerankerRegistry.js +0 -402
- package/dist/client/rag/reranker/index.js +0 -9
- package/dist/client/rag/reranker/reranker.js +0 -277
- package/dist/client/rag/resilience/CircuitBreaker.js +0 -431
- package/dist/client/rag/resilience/RetryHandler.js +0 -304
- package/dist/client/rag/resilience/index.js +0 -7
- package/dist/client/rag/retrieval/hybridSearch.js +0 -335
- package/dist/client/rag/retrieval/index.js +0 -5
- package/dist/client/rag/retrieval/vectorQueryTool.js +0 -307
- package/dist/client/rag/types.js +0 -8
- package/dist/client/sdk/toolRegistration.js +0 -377
- package/dist/client/server/abstract/baseServerAdapter.js +0 -575
- package/dist/client/server/adapters/expressAdapter.js +0 -486
- package/dist/client/server/adapters/fastifyAdapter.js +0 -472
- package/dist/client/server/adapters/honoAdapter.js +0 -632
- package/dist/client/server/adapters/koaAdapter.js +0 -510
- package/dist/client/server/errors.js +0 -486
- package/dist/client/server/factory/serverAdapterFactory.js +0 -160
- package/dist/client/server/index.js +0 -108
- package/dist/client/server/middleware/abortSignal.js +0 -111
- package/dist/client/server/middleware/auth.js +0 -388
- package/dist/client/server/middleware/cache.js +0 -359
- package/dist/client/server/middleware/common.js +0 -281
- package/dist/client/server/middleware/deprecation.js +0 -190
- package/dist/client/server/middleware/mcpBodyAttachment.js +0 -63
- package/dist/client/server/middleware/rateLimit.js +0 -227
- package/dist/client/server/middleware/validation.js +0 -388
- package/dist/client/server/openapi/generator.js +0 -398
- package/dist/client/server/openapi/index.js +0 -36
- package/dist/client/server/openapi/schemas.js +0 -695
- package/dist/client/server/openapi/templates.js +0 -374
- package/dist/client/server/routes/agentRoutes.js +0 -171
- package/dist/client/server/routes/claudeProxyRoutes.js +0 -1600
- package/dist/client/server/routes/healthRoutes.js +0 -187
- package/dist/client/server/routes/index.js +0 -57
- package/dist/client/server/routes/mcpRoutes.js +0 -342
- package/dist/client/server/routes/memoryRoutes.js +0 -350
- package/dist/client/server/routes/openApiRoutes.js +0 -126
- package/dist/client/server/routes/toolRoutes.js +0 -199
- package/dist/client/server/streaming/dataStream.js +0 -486
- package/dist/client/server/streaming/index.js +0 -11
- package/dist/client/server/types.js +0 -67
- package/dist/client/server/utils/redaction.js +0 -334
- package/dist/client/server/utils/validation.js +0 -243
- package/dist/client/server/websocket/WebSocketHandler.js +0 -383
- package/dist/client/server/websocket/index.js +0 -4
- package/dist/client/services/server/ai/observability/instrumentation.js +0 -808
- package/dist/client/telemetry/attributes.js +0 -100
- package/dist/client/telemetry/index.js +0 -26
- package/dist/client/telemetry/telemetryService.js +0 -308
- package/dist/client/telemetry/tracers.js +0 -17
- package/dist/client/telemetry/withSpan.js +0 -34
- package/dist/client/types/actionTypes.js +0 -6
- package/dist/client/types/analytics.js +0 -5
- package/dist/client/types/authTypes.js +0 -8
- package/dist/client/types/circuitBreakerErrors.js +0 -34
- package/dist/client/types/cli.js +0 -21
- package/dist/client/types/clientTypes.js +0 -10
- package/dist/client/types/common.js +0 -51
- package/dist/client/types/configTypes.js +0 -49
- package/dist/client/types/content.js +0 -19
- package/dist/client/types/contextTypes.js +0 -400
- package/dist/client/types/conversation.js +0 -47
- package/dist/client/types/conversationMemoryInterface.js +0 -6
- package/dist/client/types/domainTypes.js +0 -5
- package/dist/client/types/errors.js +0 -167
- package/dist/client/types/evaluation.js +0 -5
- package/dist/client/types/evaluationProviders.js +0 -5
- package/dist/client/types/evaluationTypes.js +0 -1
- package/dist/client/types/externalMcp.js +0 -6
- package/dist/client/types/fileReferenceTypes.js +0 -8
- package/dist/client/types/fileTypes.js +0 -4
- package/dist/client/types/generateTypes.js +0 -1
- package/dist/client/types/guardrails.js +0 -1
- package/dist/client/types/hitlTypes.js +0 -8
- package/dist/client/types/index.js +0 -57
- package/dist/client/types/mcpTypes.js +0 -5
- package/dist/client/types/middlewareTypes.js +0 -1
- package/dist/client/types/modelTypes.js +0 -30
- package/dist/client/types/multimodal.js +0 -135
- package/dist/client/types/observability.js +0 -6
- package/dist/client/types/pptTypes.js +0 -82
- package/dist/client/types/providers.js +0 -111
- package/dist/client/types/proxyTypes.js +0 -16
- package/dist/client/types/ragTypes.js +0 -7
- package/dist/client/types/sdkTypes.js +0 -8
- package/dist/client/types/serviceTypes.js +0 -5
- package/dist/client/types/streamTypes.js +0 -1
- package/dist/client/types/subscriptionTypes.js +0 -9
- package/dist/client/types/taskClassificationTypes.js +0 -5
- package/dist/client/types/tools.js +0 -24
- package/dist/client/types/ttsTypes.js +0 -57
- package/dist/client/types/typeAliases.js +0 -48
- package/dist/client/types/utilities.js +0 -4
- package/dist/client/types/workflowTypes.js +0 -30
- package/dist/client/utils/async/withTimeout.js +0 -98
- package/dist/client/utils/asyncMutex.js +0 -60
- package/dist/client/utils/conversationMemory.js +0 -431
- package/dist/client/utils/csvProcessor.js +0 -846
- package/dist/client/utils/errorHandling.js +0 -936
- package/dist/client/utils/evaluationUtils.js +0 -131
- package/dist/client/utils/factoryProcessing.js +0 -589
- package/dist/client/utils/fileDetector.js +0 -2161
- package/dist/client/utils/imageCache.js +0 -376
- package/dist/client/utils/imageProcessor.js +0 -704
- package/dist/client/utils/logger.js +0 -491
- package/dist/client/utils/mcpDefaults.js +0 -134
- package/dist/client/utils/messageBuilder.js +0 -1653
- package/dist/client/utils/modelAliasResolver.js +0 -54
- package/dist/client/utils/modelDetection.js +0 -80
- package/dist/client/utils/modelRouter.js +0 -292
- package/dist/client/utils/multimodalOptionsBuilder.js +0 -65
- package/dist/client/utils/observabilityHelpers.js +0 -47
- package/dist/client/utils/parameterValidation.js +0 -966
- package/dist/client/utils/pdfProcessor.js +0 -410
- package/dist/client/utils/performance.js +0 -222
- package/dist/client/utils/pricing.js +0 -340
- package/dist/client/utils/promptRedaction.js +0 -62
- package/dist/client/utils/providerConfig.js +0 -1009
- package/dist/client/utils/providerHealth.js +0 -1237
- package/dist/client/utils/providerRetry.js +0 -112
- package/dist/client/utils/providerUtils.js +0 -434
- package/dist/client/utils/rateLimiter.js +0 -200
- package/dist/client/utils/redis.js +0 -368
- package/dist/client/utils/retryHandler.js +0 -269
- package/dist/client/utils/retryability.js +0 -22
- package/dist/client/utils/sanitizers/svg.js +0 -481
- package/dist/client/utils/schemaConversion.js +0 -255
- package/dist/client/utils/taskClassificationUtils.js +0 -149
- package/dist/client/utils/taskClassifier.js +0 -94
- package/dist/client/utils/thinkingConfig.js +0 -104
- package/dist/client/utils/timeout.js +0 -359
- package/dist/client/utils/tokenEstimation.js +0 -142
- package/dist/client/utils/tokenLimits.js +0 -125
- package/dist/client/utils/tokenUtils.js +0 -239
- package/dist/client/utils/toolUtils.js +0 -75
- package/dist/client/utils/transformationUtils.js +0 -554
- package/dist/client/utils/ttsProcessor.js +0 -286
- package/dist/client/utils/typeUtils.js +0 -97
- package/dist/client/utils/videoAnalysisProcessor.js +0 -67
- package/dist/client/workflow/config.js +0 -398
- package/dist/client/workflow/core/ensembleExecutor.js +0 -407
- package/dist/client/workflow/core/judgeScorer.js +0 -544
- package/dist/client/workflow/core/responseConditioner.js +0 -225
- package/dist/client/workflow/core/types/conditionerTypes.js +0 -7
- package/dist/client/workflow/core/types/ensembleTypes.js +0 -7
- package/dist/client/workflow/core/types/index.js +0 -7
- package/dist/client/workflow/core/types/judgeTypes.js +0 -7
- package/dist/client/workflow/core/types/layerTypes.js +0 -7
- package/dist/client/workflow/core/types/registryTypes.js +0 -7
- package/dist/client/workflow/core/workflowRegistry.js +0 -304
- package/dist/client/workflow/core/workflowRunner.js +0 -586
- package/dist/client/workflow/index.js +0 -50
- package/dist/client/workflow/types.js +0 -9
- package/dist/client/workflow/utils/types/index.js +0 -7
- package/dist/client/workflow/utils/workflowMetrics.js +0 -311
- package/dist/client/workflow/utils/workflowValidation.js +0 -420
- package/dist/client/workflow/workflows/adaptiveWorkflow.js +0 -366
- package/dist/client/workflow/workflows/consensusWorkflow.js +0 -192
- package/dist/client/workflow/workflows/fallbackWorkflow.js +0 -225
- package/dist/client/workflow/workflows/multiJudgeWorkflow.js +0 -351
- /package/dist/client/{client/reactHooks.js → reactHooks.js} +0 -0
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Unified Constants Export
|
|
3
|
-
*
|
|
4
|
-
* This file provides a centralized export point for all NeuroLink constants,
|
|
5
|
-
* replacing magic numbers throughout the codebase with named, documented values.
|
|
6
|
-
*
|
|
7
|
-
* Categories:
|
|
8
|
-
* - Timeouts: Tool execution, provider testing, MCP initialization
|
|
9
|
-
* - Retry Logic: Backoff strategies, circuit breaker patterns
|
|
10
|
-
* - Performance: Memory thresholds, concurrency limits, buffer sizes
|
|
11
|
-
* - Tokens: Provider limits, use-case specific allocations
|
|
12
|
-
*
|
|
13
|
-
* @see MAGIC_NUMBER_REFACTORING_ANALYSIS.md for implementation details
|
|
14
|
-
*/
|
|
15
|
-
// ===== TIMEOUT CONSTANTS =====
|
|
16
|
-
export { TOOL_TIMEOUTS, PROVIDER_TIMEOUTS, MCP_TIMEOUTS, CIRCUIT_BREAKER_TIMEOUTS, NETWORK_TIMEOUTS, SYSTEM_TIMEOUTS, DEV_TIMEOUTS, TIMEOUTS, TimeoutUtils,
|
|
17
|
-
// Legacy compatibility
|
|
18
|
-
DEFAULT_TIMEOUT, PROVIDER_TEST_TIMEOUT, MCP_INIT_TIMEOUT, CIRCUIT_BREAKER_RESET_MS, } from "./timeouts.js";
|
|
19
|
-
// ===== RETRY CONSTANTS =====
|
|
20
|
-
export { RETRY_ATTEMPTS, RETRY_DELAYS, BACKOFF_CONFIG, CIRCUIT_BREAKER, PROVIDER_RETRY, OPERATION_RETRY, RetryUtils,
|
|
21
|
-
// Legacy compatibility
|
|
22
|
-
DEFAULT_RETRY_ATTEMPTS, DEFAULT_INITIAL_DELAY, DEFAULT_MAX_DELAY, DEFAULT_BACKOFF_MULTIPLIER, CIRCUIT_BREAKER_FAILURE_THRESHOLD, } from "./retry.js";
|
|
23
|
-
// ===== PERFORMANCE CONSTANTS =====
|
|
24
|
-
export { UNIT_CONVERSIONS, TEXT_PREVIEW_LENGTHS, PERFORMANCE_THRESHOLDS, MEMORY_THRESHOLDS, RESPONSE_TIME_THRESHOLDS, CONCURRENCY_LIMITS, BUFFER_SIZES, CACHE_CONFIG, MONITORING_CONFIG, OPTIMIZATION_THRESHOLDS, GC_CONFIG, SERVER_CONFIG, PerformanceUtils,
|
|
25
|
-
// Legacy compatibility
|
|
26
|
-
HIGH_MEMORY_THRESHOLD, DEFAULT_CONCURRENCY_LIMIT, MAX_CONCURRENCY_LIMIT, SMALL_BUFFER_SIZE, LARGE_BUFFER_SIZE, DEFAULT_CACHE_SIZE,
|
|
27
|
-
// New convenience exports
|
|
28
|
-
NANOSECOND_TO_MS_DIVISOR, TEXT_PREVIEW_LENGTHS_EXPORT, PERFORMANCE_THRESHOLDS_EXPORT, } from "./performance.js";
|
|
29
|
-
// ===== TOKEN CONSTANTS =====
|
|
30
|
-
export { TOKEN_LIMITS, PROVIDER_TOKEN_LIMITS, USE_CASE_TOKENS, CONTEXT_WINDOWS, TOKEN_ESTIMATION, TokenUtils,
|
|
31
|
-
// Legacy compatibility
|
|
32
|
-
DEFAULT_MAX_TOKENS, DEFAULT_EVALUATION_MAX_TOKENS, DEFAULT_ANALYSIS_MAX_TOKENS, DEFAULT_DOCUMENTATION_MAX_TOKENS, ANTHROPIC_SAFE, OPENAI_STANDARD, GOOGLE_STANDARD, } from "./tokens.js";
|
|
33
|
-
// ===== COMPOSITE CONFIGURATIONS =====
|
|
34
|
-
/**
|
|
35
|
-
* Common timeout configurations for different operation types
|
|
36
|
-
*/
|
|
37
|
-
export const OPERATION_TIMEOUTS = {
|
|
38
|
-
QUICK: PROVIDER_TIMEOUTS.TEST_MS, // Fast operations (health checks, simple queries)
|
|
39
|
-
STANDARD: TOOL_TIMEOUTS.EXECUTION_DEFAULT_MS, // Standard operations (tool execution, generation)
|
|
40
|
-
EXTENDED: TOOL_TIMEOUTS.EXECUTION_COMPLEX_MS, // Long operations (complex analysis, large file processing)
|
|
41
|
-
CRITICAL: TOOL_TIMEOUTS.EXECUTION_BATCH_MS, // Critical operations (system initialization, backup)
|
|
42
|
-
};
|
|
43
|
-
// Import the constants from the individual files for use in composite configurations
|
|
44
|
-
import { PROVIDER_TIMEOUTS, MCP_TIMEOUTS, TimeoutUtils, TOOL_TIMEOUTS, } from "./timeouts.js";
|
|
45
|
-
import { RETRY_ATTEMPTS, RETRY_DELAYS, PROVIDER_RETRY, RetryUtils, } from "./retry.js";
|
|
46
|
-
import { CONCURRENCY_LIMITS, MEMORY_THRESHOLDS, BUFFER_SIZES, } from "./performance.js";
|
|
47
|
-
import { TokenUtils } from "./tokens.js";
|
|
48
|
-
/**
|
|
49
|
-
* Provider operation configurations combining timeouts and retries
|
|
50
|
-
*/
|
|
51
|
-
export const PROVIDER_OPERATION_CONFIGS = {
|
|
52
|
-
OPENAI: {
|
|
53
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
54
|
-
maxRetries: PROVIDER_RETRY.OPENAI.maxAttempts,
|
|
55
|
-
retryDelay: PROVIDER_RETRY.OPENAI.baseDelay,
|
|
56
|
-
},
|
|
57
|
-
ANTHROPIC: {
|
|
58
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
59
|
-
maxRetries: PROVIDER_RETRY.ANTHROPIC.maxAttempts,
|
|
60
|
-
retryDelay: PROVIDER_RETRY.ANTHROPIC.baseDelay,
|
|
61
|
-
},
|
|
62
|
-
GOOGLE_AI: {
|
|
63
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
64
|
-
maxRetries: PROVIDER_RETRY.GOOGLE.maxAttempts,
|
|
65
|
-
retryDelay: PROVIDER_RETRY.GOOGLE.baseDelay,
|
|
66
|
-
},
|
|
67
|
-
BEDROCK: {
|
|
68
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
69
|
-
maxRetries: PROVIDER_RETRY.BEDROCK.maxAttempts,
|
|
70
|
-
retryDelay: PROVIDER_RETRY.BEDROCK.baseDelay,
|
|
71
|
-
},
|
|
72
|
-
AZURE: {
|
|
73
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
74
|
-
maxRetries: PROVIDER_RETRY.AZURE.maxAttempts,
|
|
75
|
-
retryDelay: PROVIDER_RETRY.AZURE.baseDelay,
|
|
76
|
-
},
|
|
77
|
-
OLLAMA: {
|
|
78
|
-
timeout: PROVIDER_TIMEOUTS.CONNECTION_MS,
|
|
79
|
-
maxRetries: PROVIDER_RETRY.OLLAMA.maxAttempts,
|
|
80
|
-
retryDelay: PROVIDER_RETRY.OLLAMA.baseDelay,
|
|
81
|
-
},
|
|
82
|
-
};
|
|
83
|
-
/**
|
|
84
|
-
* MCP operation configurations for different server types
|
|
85
|
-
*/
|
|
86
|
-
export const MCP_OPERATION_CONFIGS = {
|
|
87
|
-
INITIALIZATION: {
|
|
88
|
-
timeout: MCP_TIMEOUTS.INITIALIZATION_MS,
|
|
89
|
-
maxRetries: RETRY_ATTEMPTS.DEFAULT,
|
|
90
|
-
retryDelay: RETRY_DELAYS.BASE_MS,
|
|
91
|
-
},
|
|
92
|
-
TOOL_DISCOVERY: {
|
|
93
|
-
timeout: MCP_TIMEOUTS.TOOL_DISCOVERY_MS,
|
|
94
|
-
maxRetries: RETRY_ATTEMPTS.DEFAULT,
|
|
95
|
-
retryDelay: RETRY_DELAYS.BASE_MS,
|
|
96
|
-
},
|
|
97
|
-
TOOL_EXECUTION: {
|
|
98
|
-
timeout: MCP_TIMEOUTS.TOOL_DISCOVERY_MS, // Reuse tool discovery timeout
|
|
99
|
-
maxRetries: RETRY_ATTEMPTS.DEFAULT,
|
|
100
|
-
retryDelay: RETRY_DELAYS.BASE_MS,
|
|
101
|
-
},
|
|
102
|
-
HEALTH_CHECK: {
|
|
103
|
-
timeout: PROVIDER_TIMEOUTS.TEST_MS, // Use provider test timeout for health checks
|
|
104
|
-
maxRetries: RETRY_ATTEMPTS.QUICK,
|
|
105
|
-
retryDelay: RETRY_DELAYS.QUICK_MS,
|
|
106
|
-
},
|
|
107
|
-
};
|
|
108
|
-
/**
|
|
109
|
-
* Performance profiles for different system loads
|
|
110
|
-
*/
|
|
111
|
-
export const PERFORMANCE_PROFILES = {
|
|
112
|
-
LOW_LOAD: {
|
|
113
|
-
concurrency: CONCURRENCY_LIMITS.LOW_RESOURCE,
|
|
114
|
-
memoryThreshold: MEMORY_THRESHOLDS.WARNING_MB,
|
|
115
|
-
bufferSize: BUFFER_SIZES.SMALL_BYTES,
|
|
116
|
-
},
|
|
117
|
-
NORMAL_LOAD: {
|
|
118
|
-
concurrency: CONCURRENCY_LIMITS.DEFAULT,
|
|
119
|
-
memoryThreshold: MEMORY_THRESHOLDS.WARNING_MB,
|
|
120
|
-
bufferSize: BUFFER_SIZES.STANDARD_BYTES,
|
|
121
|
-
},
|
|
122
|
-
HIGH_LOAD: {
|
|
123
|
-
concurrency: CONCURRENCY_LIMITS.HIGH_LOAD,
|
|
124
|
-
memoryThreshold: MEMORY_THRESHOLDS.CRITICAL_MB,
|
|
125
|
-
bufferSize: BUFFER_SIZES.LARGE_BYTES,
|
|
126
|
-
},
|
|
127
|
-
ENTERPRISE: {
|
|
128
|
-
concurrency: CONCURRENCY_LIMITS.HIGH_LOAD, // Use high load as enterprise default
|
|
129
|
-
memoryThreshold: MEMORY_THRESHOLDS.LEAK_DETECTION_MB, // Higher threshold for enterprise
|
|
130
|
-
bufferSize: BUFFER_SIZES.XLARGE_BYTES, // Larger buffers for enterprise
|
|
131
|
-
},
|
|
132
|
-
};
|
|
133
|
-
// ===== UTILITY FUNCTIONS =====
|
|
134
|
-
/**
|
|
135
|
-
* Get timeout value with environment-based adjustments
|
|
136
|
-
*/
|
|
137
|
-
export function getTimeout(baseTimeout, environment = "production") {
|
|
138
|
-
return TimeoutUtils.getEnvironmentTimeout(baseTimeout, environment);
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Get retry configuration for a specific provider
|
|
142
|
-
*/
|
|
143
|
-
export function getProviderRetryConfig(provider) {
|
|
144
|
-
return RetryUtils.getProviderRetryConfig(provider);
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Map use case to appropriate token limits
|
|
148
|
-
* @param useCase - Use case category
|
|
149
|
-
* @returns Token limit for the use case
|
|
150
|
-
*/
|
|
151
|
-
function mapUseCaseToTokenLimit(useCase = "standard") {
|
|
152
|
-
switch (useCase) {
|
|
153
|
-
case "conservative":
|
|
154
|
-
return 4096; // TOKEN_LIMITS.CONSERVATIVE
|
|
155
|
-
case "standard":
|
|
156
|
-
return 8192; // TOKEN_LIMITS.STANDARD
|
|
157
|
-
case "high_capacity":
|
|
158
|
-
return 16384; // TOKEN_LIMITS.HIGH_CAPACITY
|
|
159
|
-
default:
|
|
160
|
-
return 8192; // Default to standard
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Get token limit for a specific provider and use case
|
|
165
|
-
* @param provider - Provider name
|
|
166
|
-
* @param useCase - Use case category that determines token limits
|
|
167
|
-
* @returns Token limit appropriate for the provider and use case
|
|
168
|
-
*/
|
|
169
|
-
export function getProviderTokenLimit(provider, useCase = "standard") {
|
|
170
|
-
// Get the base token limit for the use case
|
|
171
|
-
const useCaseLimit = mapUseCaseToTokenLimit(useCase);
|
|
172
|
-
// Get the provider's default limit (without specific model)
|
|
173
|
-
const providerLimit = TokenUtils.getProviderTokenLimit(provider);
|
|
174
|
-
// Return the minimum of use case limit and provider limit for safety
|
|
175
|
-
return Math.min(useCaseLimit, providerLimit);
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Get performance configuration for current system load
|
|
179
|
-
*/
|
|
180
|
-
export function getPerformanceConfig(load = "normal") {
|
|
181
|
-
const upper = load.toUpperCase();
|
|
182
|
-
const loadKey = (upper === "ENTERPRISE" ? "ENTERPRISE" : `${upper}_LOAD`);
|
|
183
|
-
return PERFORMANCE_PROFILES[loadKey] ?? PERFORMANCE_PROFILES.NORMAL_LOAD;
|
|
184
|
-
}
|
|
185
|
-
// ===== VERSION AND METADATA =====
|
|
186
|
-
/**
|
|
187
|
-
* Constants system metadata
|
|
188
|
-
*/
|
|
189
|
-
export const CONSTANTS_METADATA = {
|
|
190
|
-
VERSION: "1.0.0",
|
|
191
|
-
LAST_UPDATED: "2025-01-27",
|
|
192
|
-
TOTAL_CONSTANTS: 300,
|
|
193
|
-
CATEGORIES: ["timeouts", "retry", "performance", "tokens", "enums"],
|
|
194
|
-
COMPATIBILITY: "backward_compatible",
|
|
195
|
-
};
|
|
196
|
-
// ===== ENUMS =====
|
|
197
|
-
export {
|
|
198
|
-
// Provider and Model Enums
|
|
199
|
-
AIProviderName, OpenRouterModels, BedrockModels, OpenAIModels, AzureOpenAIModels, VertexModels, GoogleAIModels, AnthropicModels, MistralModels, OllamaModels, LiteLLMModels, HuggingFaceModels, SageMakerModels, APIVersions,
|
|
200
|
-
// Error Enums
|
|
201
|
-
ErrorCategory, ErrorSeverity,
|
|
202
|
-
// Claude Subscription Enums
|
|
203
|
-
AnthropicBetaFeature,
|
|
204
|
-
// OAuth Constants
|
|
205
|
-
TOKEN_EXPIRY_BUFFER_MS, } from "./enums.js";
|
|
206
|
-
// ===== ERROR CODES =====
|
|
207
|
-
export { VIDEO_ERROR_CODES } from "./videoErrors.js";
|
|
@@ -1,389 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Performance and Resource Constants for NeuroLink
|
|
3
|
-
*
|
|
4
|
-
* Centralized performance configuration to replace magic numbers throughout the codebase.
|
|
5
|
-
* Includes memory thresholds, concurrency limits, buffer sizes, and cache configurations.
|
|
6
|
-
*
|
|
7
|
-
* @fileoverview Performance constants for optimal resource utilization
|
|
8
|
-
* @author NeuroLink Team
|
|
9
|
-
* @version 1.0.0
|
|
10
|
-
*/
|
|
11
|
-
import { TIMEOUTS } from "./timeouts.js";
|
|
12
|
-
/**
|
|
13
|
-
* Unit conversion constants
|
|
14
|
-
* Common conversion factors to replace magic numbers
|
|
15
|
-
*/
|
|
16
|
-
export const UNIT_CONVERSIONS = {
|
|
17
|
-
/** Conversion factor from nanoseconds to milliseconds */
|
|
18
|
-
NANOSECOND_TO_MS_DIVISOR: 1000000, // 1,000,000 - Nanoseconds to milliseconds
|
|
19
|
-
/** Conversion factor from microseconds to milliseconds */
|
|
20
|
-
MICROSECOND_TO_MS_DIVISOR: 1000, // 1,000 - Microseconds to milliseconds
|
|
21
|
-
/** Conversion factor from seconds to milliseconds */
|
|
22
|
-
SECOND_TO_MS_MULTIPLIER: 1000, // 1,000 - Seconds to milliseconds
|
|
23
|
-
/** Conversion factor from minutes to milliseconds */
|
|
24
|
-
MINUTE_TO_MS_MULTIPLIER: 60000, // 60,000 - Minutes to milliseconds
|
|
25
|
-
/** Conversion factor from hours to milliseconds */
|
|
26
|
-
HOUR_TO_MS_MULTIPLIER: 3600000, // 3,600,000 - Hours to milliseconds
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* Text processing constants
|
|
30
|
-
* Standard lengths for text preview, logging, and truncation
|
|
31
|
-
*/
|
|
32
|
-
export const TEXT_PREVIEW_LENGTHS = {
|
|
33
|
-
/** Very short preview for debugging */
|
|
34
|
-
VERY_SHORT: 50, // 50 chars - Very short preview
|
|
35
|
-
/** Short preview for compact logging */
|
|
36
|
-
SHORT: 100, // 100 chars - Short preview
|
|
37
|
-
/** Medium preview for standard logging */
|
|
38
|
-
MEDIUM: 150, // 150 chars - Medium preview
|
|
39
|
-
/** Standard preview length */
|
|
40
|
-
STANDARD: 200, // 200 chars - Standard preview
|
|
41
|
-
/** Long preview for detailed context */
|
|
42
|
-
LONG: 300, // 300 chars - Long preview
|
|
43
|
-
/** Extra long preview for comprehensive view */
|
|
44
|
-
EXTRA_LONG: 500, // 500 chars - Extra long preview
|
|
45
|
-
/** Maximum preview length before truncation */
|
|
46
|
-
MAX_PREVIEW: 1000, // 1000 chars - Maximum preview
|
|
47
|
-
};
|
|
48
|
-
/**
|
|
49
|
-
* Performance thresholds for various operations
|
|
50
|
-
* Unified thresholds to replace scattered magic numbers
|
|
51
|
-
*/
|
|
52
|
-
export const PERFORMANCE_THRESHOLDS = {
|
|
53
|
-
/** Success rate threshold for tool reliability */
|
|
54
|
-
SUCCESS_RATE_THRESHOLD: 0.8, // 80% - Minimum success rate
|
|
55
|
-
/** High success rate threshold */
|
|
56
|
-
HIGH_SUCCESS_RATE: 0.95, // 95% - High success rate
|
|
57
|
-
/** Low success rate warning threshold */
|
|
58
|
-
LOW_SUCCESS_RATE_WARNING: 0.6, // 60% - Low success rate warning
|
|
59
|
-
/** Critical success rate threshold */
|
|
60
|
-
CRITICAL_SUCCESS_RATE: 0.5, // 50% - Critical success rate
|
|
61
|
-
/** Tool execution time warning threshold (ms) */
|
|
62
|
-
TOOL_EXECUTION_WARNING_MS: 10000, // 10s - Tool execution warning
|
|
63
|
-
/** Large tool collection threshold */
|
|
64
|
-
LARGE_TOOL_COLLECTION: 100, // 100 tools - Large collection
|
|
65
|
-
/** Circuit breaker failure threshold */
|
|
66
|
-
CIRCUIT_BREAKER_FAILURES: 5, // 5 failures - Circuit breaker threshold
|
|
67
|
-
/** Circuit breaker reset timeout (ms) */
|
|
68
|
-
CIRCUIT_BREAKER_RESET_MS: TIMEOUTS.CIRCUIT_BREAKER.RESET_MS, // 60s - Circuit breaker reset
|
|
69
|
-
};
|
|
70
|
-
/**
|
|
71
|
-
* Memory threshold configuration
|
|
72
|
-
* Thresholds for monitoring and alerting on memory usage
|
|
73
|
-
*/
|
|
74
|
-
export const MEMORY_THRESHOLDS = {
|
|
75
|
-
/** Warning threshold for general memory usage */
|
|
76
|
-
WARNING_MB: 100, // 100MB - Warn about high memory usage
|
|
77
|
-
/** Critical threshold requiring immediate attention */
|
|
78
|
-
CRITICAL_MB: 200, // 200MB - Critical memory usage
|
|
79
|
-
/** Tool-specific memory warning threshold */
|
|
80
|
-
TOOL_WARNING_MB: 20, // 20MB - Tool-specific memory warning
|
|
81
|
-
/** Tool critical memory threshold */
|
|
82
|
-
TOOL_CRITICAL_MB: 50, // 50MB - Tool critical memory usage
|
|
83
|
-
/** Memory leak detection threshold */
|
|
84
|
-
LEAK_DETECTION_MB: 300, // 300MB - Potential memory leak
|
|
85
|
-
/** Maximum allowed memory before forced cleanup */
|
|
86
|
-
MAX_ALLOWED_MB: 500, // 500MB - Force cleanup threshold
|
|
87
|
-
/** Heap growth rate warning (MB per minute) */
|
|
88
|
-
GROWTH_RATE_WARNING_MB_PER_MIN: 10, // 10MB/min - Suspicious growth rate
|
|
89
|
-
/** Moderate memory usage threshold */
|
|
90
|
-
MODERATE_USAGE_MB: 30, // 30MB - Moderate memory usage
|
|
91
|
-
/** Low memory usage threshold */
|
|
92
|
-
LOW_USAGE_MB: 10, // 10MB - Low memory usage
|
|
93
|
-
/** Moderate memory delta threshold for operations */
|
|
94
|
-
OPERATION_MODERATE_MB: 30, // 30MB - Moderate operation memory usage
|
|
95
|
-
/** Small memory delta threshold for operations */
|
|
96
|
-
OPERATION_SMALL_MB: 10, // 10MB - Small operation memory usage
|
|
97
|
-
/** Large memory delta threshold requiring GC */
|
|
98
|
-
OPERATION_LARGE_MB: 50, // 50MB - Large operation memory usage
|
|
99
|
-
};
|
|
100
|
-
/**
|
|
101
|
-
* Response time threshold configuration
|
|
102
|
-
* Defines what constitutes fast, acceptable, and slow response times
|
|
103
|
-
*/
|
|
104
|
-
export const RESPONSE_TIME_THRESHOLDS = {
|
|
105
|
-
/** Fast response time - excellent performance */
|
|
106
|
-
FAST_MS: 1000, // 1s - Fast response
|
|
107
|
-
/** Acceptable response time - good performance */
|
|
108
|
-
ACCEPTABLE_MS: 5000, // 5s - Acceptable response
|
|
109
|
-
/** Slow response time - needs optimization */
|
|
110
|
-
SLOW_MS: 10000, // 10s - Slow response warning
|
|
111
|
-
/** Critical response time - unacceptable */
|
|
112
|
-
CRITICAL_MS: 30000, // 30s - Critical response time
|
|
113
|
-
/** Tool execution fast threshold */
|
|
114
|
-
TOOL_FAST_MS: 2000, // 2s - Fast tool execution
|
|
115
|
-
/** Tool execution slow threshold */
|
|
116
|
-
TOOL_SLOW_MS: 15000, // 15s - Slow tool execution
|
|
117
|
-
/** Provider response fast threshold */
|
|
118
|
-
PROVIDER_FAST_MS: 3000, // 3s - Fast provider response
|
|
119
|
-
/** Provider response slow threshold */
|
|
120
|
-
PROVIDER_SLOW_MS: 20000, // 20s - Slow provider response
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* Concurrency limit configuration
|
|
124
|
-
* Controls parallel execution to prevent resource exhaustion
|
|
125
|
-
*/
|
|
126
|
-
export const CONCURRENCY_LIMITS = {
|
|
127
|
-
/** Default concurrent operations */
|
|
128
|
-
DEFAULT: 5, // 5 - Default concurrent operations
|
|
129
|
-
/** High-load scenario concurrency */
|
|
130
|
-
HIGH_LOAD: 10, // 10 - High-load scenarios
|
|
131
|
-
/** Low-resource environment concurrency */
|
|
132
|
-
LOW_RESOURCE: 2, // 2 - Low-resource environments
|
|
133
|
-
/** Provider-specific concurrency */
|
|
134
|
-
PROVIDER: 3, // 3 - Provider-specific limits
|
|
135
|
-
/** Tool execution concurrency */
|
|
136
|
-
TOOL_EXECUTION: 4, // 4 - Tool execution concurrency
|
|
137
|
-
/** MCP server concurrency */
|
|
138
|
-
MCP_SERVER: 8, // 8 - MCP server operations
|
|
139
|
-
/** Network request concurrency */
|
|
140
|
-
NETWORK_REQUEST: 6, // 6 - Network requests
|
|
141
|
-
/** Maximum concurrent streams */
|
|
142
|
-
MAX_STREAMS: 3, // 3 - Maximum concurrent streams
|
|
143
|
-
/** Database operation concurrency */
|
|
144
|
-
DATABASE: 5, // 5 - Database operations
|
|
145
|
-
};
|
|
146
|
-
/**
|
|
147
|
-
* Buffer size configuration
|
|
148
|
-
* Optimized buffer sizes for different types of operations
|
|
149
|
-
*/
|
|
150
|
-
export const BUFFER_SIZES = {
|
|
151
|
-
/** Small buffer for lightweight operations */
|
|
152
|
-
SMALL_BYTES: 1024, // 1KB - Small buffer operations
|
|
153
|
-
/** Standard buffer for most operations */
|
|
154
|
-
STANDARD_BYTES: 4096, // 4KB - Standard buffer size
|
|
155
|
-
/** Large buffer for heavy operations */
|
|
156
|
-
LARGE_BYTES: 8192, // 8KB - Large buffer operations
|
|
157
|
-
/** Extra large buffer for file operations */
|
|
158
|
-
XLARGE_BYTES: 16384, // 16KB - Extra large buffer
|
|
159
|
-
/** Memory buffer for streaming */
|
|
160
|
-
STREAM_BYTES: 2048, // 2KB - Streaming buffer
|
|
161
|
-
/** Network buffer size */
|
|
162
|
-
NETWORK_BYTES: 4096, // 4KB - Network operations
|
|
163
|
-
/** File I/O buffer size */
|
|
164
|
-
FILE_IO_BYTES: 8192, // 8KB - File operations
|
|
165
|
-
/** Maximum single buffer size */
|
|
166
|
-
MAX_BYTES: 32768, // 32KB - Maximum buffer size
|
|
167
|
-
};
|
|
168
|
-
/**
|
|
169
|
-
* Cache configuration
|
|
170
|
-
* Size limits and policies for various cache types
|
|
171
|
-
*/
|
|
172
|
-
export const CACHE_CONFIG = {
|
|
173
|
-
/** Small cache for frequently accessed items */
|
|
174
|
-
SMALL_SIZE: 100, // 100 entries - Small cache
|
|
175
|
-
/** Default cache size for most use cases */
|
|
176
|
-
DEFAULT_SIZE: 1000, // 1000 entries - Default cache
|
|
177
|
-
/** Large cache for extensive data */
|
|
178
|
-
LARGE_SIZE: 10000, // 10000 entries - Large cache
|
|
179
|
-
/** Provider cache size */
|
|
180
|
-
PROVIDER_CACHE_SIZE: 500, // 500 entries - Provider cache
|
|
181
|
-
/** Tool registry cache size */
|
|
182
|
-
TOOL_REGISTRY_SIZE: 200, // 200 entries - Tool cache
|
|
183
|
-
/** Model configuration cache */
|
|
184
|
-
MODEL_CONFIG_SIZE: 50, // 50 entries - Model cache
|
|
185
|
-
/** Session cache size */
|
|
186
|
-
SESSION_CACHE_SIZE: 1000, // 1000 entries - Session cache
|
|
187
|
-
/** Maximum cache size */
|
|
188
|
-
MAX_SIZE: 50000, // 50000 entries - Maximum cache size
|
|
189
|
-
/** Cache TTL in milliseconds */
|
|
190
|
-
DEFAULT_TTL_MS: 300000, // 5 minutes - Default cache TTL
|
|
191
|
-
/** Short TTL for volatile data */
|
|
192
|
-
SHORT_TTL_MS: 60000, // 1 minute - Short TTL
|
|
193
|
-
/** Long TTL for stable data */
|
|
194
|
-
LONG_TTL_MS: 3600000, // 1 hour - Long TTL
|
|
195
|
-
};
|
|
196
|
-
/**
|
|
197
|
-
* Resource monitoring configuration
|
|
198
|
-
* Intervals and thresholds for monitoring system resources
|
|
199
|
-
*/
|
|
200
|
-
export const MONITORING_CONFIG = {
|
|
201
|
-
/** Default monitoring interval */
|
|
202
|
-
DEFAULT_INTERVAL_MS: 30000, // 30s - Default monitoring interval
|
|
203
|
-
/** High-frequency monitoring interval */
|
|
204
|
-
HIGH_FREQ_INTERVAL_MS: 5000, // 5s - High-frequency monitoring
|
|
205
|
-
/** Low-frequency monitoring interval */
|
|
206
|
-
LOW_FREQ_INTERVAL_MS: 60000, // 1m - Low-frequency monitoring
|
|
207
|
-
/** Memory check interval */
|
|
208
|
-
MEMORY_CHECK_INTERVAL_MS: 15000, // 15s - Memory monitoring
|
|
209
|
-
/** Performance metrics collection interval */
|
|
210
|
-
METRICS_INTERVAL_MS: 10000, // 10s - Metrics collection
|
|
211
|
-
/** Health check interval */
|
|
212
|
-
HEALTH_CHECK_INTERVAL_MS: 30000, // 30s - Health checks
|
|
213
|
-
/** CPU usage check interval */
|
|
214
|
-
CPU_CHECK_INTERVAL_MS: 20000, // 20s - CPU monitoring
|
|
215
|
-
/** Disk usage check interval */
|
|
216
|
-
DISK_CHECK_INTERVAL_MS: 120000, // 2m - Disk monitoring
|
|
217
|
-
};
|
|
218
|
-
/**
|
|
219
|
-
* Performance optimization thresholds
|
|
220
|
-
* Values that trigger performance optimization actions
|
|
221
|
-
*/
|
|
222
|
-
export const OPTIMIZATION_THRESHOLDS = {
|
|
223
|
-
/** CPU usage threshold for optimization */
|
|
224
|
-
CPU_USAGE_PERCENT: 80, // 80% - CPU optimization threshold
|
|
225
|
-
/** Memory usage threshold for cleanup */
|
|
226
|
-
MEMORY_CLEANUP_PERCENT: 85, // 85% - Memory cleanup threshold
|
|
227
|
-
/** Disk usage threshold for cleanup */
|
|
228
|
-
DISK_CLEANUP_PERCENT: 90, // 90% - Disk cleanup threshold
|
|
229
|
-
/** Connection pool optimization threshold */
|
|
230
|
-
CONNECTION_POOL_PERCENT: 75, // 75% - Connection pool optimization
|
|
231
|
-
/** Cache hit rate minimum threshold */
|
|
232
|
-
CACHE_HIT_RATE_MIN_PERCENT: 60, // 60% - Minimum cache hit rate
|
|
233
|
-
/** Queue length threshold for scaling */
|
|
234
|
-
QUEUE_LENGTH_THRESHOLD: 50, // 50 items - Queue scaling threshold
|
|
235
|
-
/** Error rate threshold for intervention */
|
|
236
|
-
ERROR_RATE_THRESHOLD_PERCENT: 5, // 5% - Error rate threshold
|
|
237
|
-
};
|
|
238
|
-
/**
|
|
239
|
-
* Garbage collection configuration
|
|
240
|
-
* Settings for automatic resource cleanup
|
|
241
|
-
*/
|
|
242
|
-
export const GC_CONFIG = {
|
|
243
|
-
/** Memory threshold for forced GC */
|
|
244
|
-
FORCE_GC_THRESHOLD_MB: 400, // 400MB - Force garbage collection
|
|
245
|
-
/** Interval for automatic GC checks */
|
|
246
|
-
AUTO_GC_INTERVAL_MS: 120000, // 2m - Auto GC check interval
|
|
247
|
-
/** Memory growth rate for GC trigger */
|
|
248
|
-
GC_TRIGGER_GROWTH_MB: 50, // 50MB - GC trigger growth
|
|
249
|
-
/** Cache cleanup interval */
|
|
250
|
-
CACHE_CLEANUP_INTERVAL_MS: 300000, // 5m - Cache cleanup interval
|
|
251
|
-
/** Temporary file cleanup interval */
|
|
252
|
-
TEMP_FILE_CLEANUP_MS: 600000, // 10m - Temp file cleanup
|
|
253
|
-
/** Log rotation threshold */
|
|
254
|
-
LOG_ROTATION_SIZE_MB: 100, // 100MB - Log rotation size
|
|
255
|
-
};
|
|
256
|
-
/**
|
|
257
|
-
* Server configuration constants
|
|
258
|
-
* Default configurations for various server types
|
|
259
|
-
*/
|
|
260
|
-
export const SERVER_CONFIG = {
|
|
261
|
-
/** Maximum number of MCP servers */
|
|
262
|
-
MAX_MCP_SERVERS: 20, // 20 - Maximum MCP servers
|
|
263
|
-
/** Default Ollama port */
|
|
264
|
-
DEFAULT_OLLAMA_PORT: 11434, // 11434 - Ollama service port
|
|
265
|
-
/** Maximum number of event handlers */
|
|
266
|
-
MAX_EVENT_HANDLERS: 5, // 5 - Maximum event handlers
|
|
267
|
-
/** Default server startup timeout */
|
|
268
|
-
STARTUP_TIMEOUT_MS: 15000, // 15s - Server startup timeout
|
|
269
|
-
/** Provider test timeout */
|
|
270
|
-
PROVIDER_TEST_TIMEOUT_MS: 5000, // 5s - Provider connectivity test
|
|
271
|
-
/** MCP connection test timeout */
|
|
272
|
-
MCP_CONNECTION_TEST_TIMEOUT_MS: 10000, // 10s - MCP connection test
|
|
273
|
-
/** External tool execution timeout */
|
|
274
|
-
EXTERNAL_TOOL_TIMEOUT_MS: 30000, // 30s - External tool execution
|
|
275
|
-
};
|
|
276
|
-
/**
|
|
277
|
-
* Performance utility functions
|
|
278
|
-
*/
|
|
279
|
-
export const PerformanceUtils = {
|
|
280
|
-
/**
|
|
281
|
-
* Get appropriate concurrency limit based on available resources
|
|
282
|
-
* @param resourceLevel - Resource availability level (low, medium, high)
|
|
283
|
-
* @returns Recommended concurrency limit
|
|
284
|
-
*/
|
|
285
|
-
getConcurrencyLimit: (resourceLevel = "medium") => {
|
|
286
|
-
switch (resourceLevel) {
|
|
287
|
-
case "low":
|
|
288
|
-
return CONCURRENCY_LIMITS.LOW_RESOURCE;
|
|
289
|
-
case "high":
|
|
290
|
-
return CONCURRENCY_LIMITS.HIGH_LOAD;
|
|
291
|
-
default:
|
|
292
|
-
return CONCURRENCY_LIMITS.DEFAULT;
|
|
293
|
-
}
|
|
294
|
-
},
|
|
295
|
-
/**
|
|
296
|
-
* Get appropriate buffer size for operation type
|
|
297
|
-
* @param operationType - Type of operation (network, file, stream, etc.)
|
|
298
|
-
* @returns Recommended buffer size in bytes
|
|
299
|
-
*/
|
|
300
|
-
getBufferSize: (operationType = "standard") => {
|
|
301
|
-
switch (operationType) {
|
|
302
|
-
case "network":
|
|
303
|
-
return BUFFER_SIZES.NETWORK_BYTES;
|
|
304
|
-
case "file":
|
|
305
|
-
return BUFFER_SIZES.FILE_IO_BYTES;
|
|
306
|
-
case "stream":
|
|
307
|
-
return BUFFER_SIZES.STREAM_BYTES;
|
|
308
|
-
default:
|
|
309
|
-
return BUFFER_SIZES.STANDARD_BYTES;
|
|
310
|
-
}
|
|
311
|
-
},
|
|
312
|
-
/**
|
|
313
|
-
* Get cache configuration for specific use case
|
|
314
|
-
* @param useCase - Cache use case (provider, tool, model, session)
|
|
315
|
-
* @returns Cache configuration object
|
|
316
|
-
*/
|
|
317
|
-
getCacheConfig: (useCase = "default") => {
|
|
318
|
-
const baseConfig = {
|
|
319
|
-
ttl: CACHE_CONFIG.DEFAULT_TTL_MS,
|
|
320
|
-
maxSize: CACHE_CONFIG.DEFAULT_SIZE,
|
|
321
|
-
};
|
|
322
|
-
switch (useCase) {
|
|
323
|
-
case "provider":
|
|
324
|
-
return { ...baseConfig, maxSize: CACHE_CONFIG.PROVIDER_CACHE_SIZE };
|
|
325
|
-
case "tool":
|
|
326
|
-
return { ...baseConfig, maxSize: CACHE_CONFIG.TOOL_REGISTRY_SIZE };
|
|
327
|
-
case "model":
|
|
328
|
-
return {
|
|
329
|
-
...baseConfig,
|
|
330
|
-
maxSize: CACHE_CONFIG.MODEL_CONFIG_SIZE,
|
|
331
|
-
ttl: CACHE_CONFIG.LONG_TTL_MS,
|
|
332
|
-
};
|
|
333
|
-
case "session":
|
|
334
|
-
return {
|
|
335
|
-
...baseConfig,
|
|
336
|
-
maxSize: CACHE_CONFIG.SESSION_CACHE_SIZE,
|
|
337
|
-
ttl: CACHE_CONFIG.SHORT_TTL_MS,
|
|
338
|
-
};
|
|
339
|
-
default:
|
|
340
|
-
return baseConfig;
|
|
341
|
-
}
|
|
342
|
-
},
|
|
343
|
-
/**
|
|
344
|
-
* Check if memory usage exceeds threshold
|
|
345
|
-
* @param currentUsageMB - Current memory usage in MB
|
|
346
|
-
* @param threshold - Threshold type to check against
|
|
347
|
-
* @returns True if threshold is exceeded
|
|
348
|
-
*/
|
|
349
|
-
isMemoryThresholdExceeded: (currentUsageMB, threshold = "warning") => {
|
|
350
|
-
switch (threshold) {
|
|
351
|
-
case "critical":
|
|
352
|
-
return currentUsageMB > MEMORY_THRESHOLDS.CRITICAL_MB;
|
|
353
|
-
case "tool":
|
|
354
|
-
return currentUsageMB > MEMORY_THRESHOLDS.TOOL_WARNING_MB;
|
|
355
|
-
case "leak":
|
|
356
|
-
return currentUsageMB > MEMORY_THRESHOLDS.LEAK_DETECTION_MB;
|
|
357
|
-
default:
|
|
358
|
-
return currentUsageMB > MEMORY_THRESHOLDS.WARNING_MB;
|
|
359
|
-
}
|
|
360
|
-
},
|
|
361
|
-
/**
|
|
362
|
-
* Categorize response time performance
|
|
363
|
-
* @param responseTimeMs - Response time in milliseconds
|
|
364
|
-
* @returns Performance category
|
|
365
|
-
*/
|
|
366
|
-
categorizeResponseTime: (responseTimeMs) => {
|
|
367
|
-
if (responseTimeMs <= RESPONSE_TIME_THRESHOLDS.FAST_MS) {
|
|
368
|
-
return "fast";
|
|
369
|
-
}
|
|
370
|
-
if (responseTimeMs <= RESPONSE_TIME_THRESHOLDS.ACCEPTABLE_MS) {
|
|
371
|
-
return "acceptable";
|
|
372
|
-
}
|
|
373
|
-
if (responseTimeMs <= RESPONSE_TIME_THRESHOLDS.SLOW_MS) {
|
|
374
|
-
return "slow";
|
|
375
|
-
}
|
|
376
|
-
return "critical";
|
|
377
|
-
},
|
|
378
|
-
};
|
|
379
|
-
// Legacy compatibility exports
|
|
380
|
-
export const HIGH_MEMORY_THRESHOLD = MEMORY_THRESHOLDS.WARNING_MB;
|
|
381
|
-
export const DEFAULT_CONCURRENCY_LIMIT = CONCURRENCY_LIMITS.DEFAULT;
|
|
382
|
-
export const MAX_CONCURRENCY_LIMIT = CONCURRENCY_LIMITS.HIGH_LOAD;
|
|
383
|
-
export const SMALL_BUFFER_SIZE = BUFFER_SIZES.SMALL_BYTES;
|
|
384
|
-
export const LARGE_BUFFER_SIZE = BUFFER_SIZES.LARGE_BYTES;
|
|
385
|
-
export const DEFAULT_CACHE_SIZE = CACHE_CONFIG.DEFAULT_SIZE;
|
|
386
|
-
// New convenience exports for easy access
|
|
387
|
-
export const NANOSECOND_TO_MS_DIVISOR = UNIT_CONVERSIONS.NANOSECOND_TO_MS_DIVISOR;
|
|
388
|
-
export const TEXT_PREVIEW_LENGTHS_EXPORT = TEXT_PREVIEW_LENGTHS;
|
|
389
|
-
export const PERFORMANCE_THRESHOLDS_EXPORT = PERFORMANCE_THRESHOLDS;
|