@juspay/neurolink 9.32.0 → 9.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (475) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/auth/anthropicOAuth.js +1 -1
  3. package/dist/cli/commands/proxy.js +18 -5
  4. package/dist/client/aiSdkAdapter.js +1 -1
  5. package/dist/client/index.js +137 -501
  6. package/dist/core/factory.js +0 -1
  7. package/dist/core/redisConversationMemoryManager.js +1 -1
  8. package/dist/features/ppt/slideGenerator.js +0 -1
  9. package/dist/features/ppt/utils.js +0 -1
  10. package/dist/lib/neurolink.d.ts +10 -0
  11. package/dist/lib/neurolink.js +41 -7
  12. package/dist/lib/server/routes/claudeProxyRoutes.js +45 -9
  13. package/dist/lib/types/generateTypes.d.ts +16 -0
  14. package/dist/lib/types/streamTypes.d.ts +15 -0
  15. package/dist/mcp/elicitationProtocol.js +1 -1
  16. package/dist/mcp/servers/agent/directToolsServer.js +0 -1
  17. package/dist/neurolink.d.ts +10 -0
  18. package/dist/neurolink.js +41 -7
  19. package/dist/providers/azureOpenai.js +1 -1
  20. package/dist/providers/huggingFace.js +0 -1
  21. package/dist/providers/openaiCompatible.js +0 -1
  22. package/dist/sdk/toolRegistration.js +0 -1
  23. package/dist/server/openapi/generator.js +1 -1
  24. package/dist/server/routes/claudeProxyRoutes.js +45 -9
  25. package/dist/types/configTypes.js +0 -5
  26. package/dist/types/generateTypes.d.ts +16 -0
  27. package/dist/types/modelTypes.js +0 -1
  28. package/dist/types/streamTypes.d.ts +15 -0
  29. package/dist/types/tools.js +0 -1
  30. package/dist/types/typeAliases.js +0 -1
  31. package/dist/types/utilities.js +1 -1
  32. package/dist/types/workflowTypes.js +0 -1
  33. package/dist/utils/providerRetry.js +0 -1
  34. package/dist/utils/providerUtils.js +0 -1
  35. package/package.json +2 -2
  36. package/dist/client/adapters/providerImageAdapter.js +0 -588
  37. package/dist/client/adapters/tts/googleTTSHandler.js +0 -344
  38. package/dist/client/adapters/video/directorPipeline.js +0 -516
  39. package/dist/client/adapters/video/ffmpegAdapter.js +0 -206
  40. package/dist/client/adapters/video/frameExtractor.js +0 -143
  41. package/dist/client/adapters/video/vertexVideoHandler.js +0 -763
  42. package/dist/client/adapters/video/videoAnalyzer.js +0 -238
  43. package/dist/client/adapters/video/videoMerger.js +0 -171
  44. package/dist/client/agent/directTools.js +0 -840
  45. package/dist/client/auth/AuthProviderFactory.js +0 -111
  46. package/dist/client/auth/AuthProviderRegistry.js +0 -190
  47. package/dist/client/auth/RequestContext.js +0 -78
  48. package/dist/client/auth/accountPool.js +0 -178
  49. package/dist/client/auth/anthropicOAuth.js +0 -974
  50. package/dist/client/auth/authContext.js +0 -314
  51. package/dist/client/auth/errors.js +0 -39
  52. package/dist/client/auth/index.js +0 -61
  53. package/dist/client/auth/middleware/AuthMiddleware.js +0 -519
  54. package/dist/client/auth/middleware/rateLimitByUser.js +0 -554
  55. package/dist/client/auth/providers/BaseAuthProvider.js +0 -723
  56. package/dist/client/auth/providers/CognitoProvider.js +0 -304
  57. package/dist/client/auth/providers/KeycloakProvider.js +0 -393
  58. package/dist/client/auth/providers/auth0.js +0 -274
  59. package/dist/client/auth/providers/betterAuth.js +0 -182
  60. package/dist/client/auth/providers/clerk.js +0 -317
  61. package/dist/client/auth/providers/custom.js +0 -112
  62. package/dist/client/auth/providers/firebase.js +0 -226
  63. package/dist/client/auth/providers/jwt.js +0 -212
  64. package/dist/client/auth/providers/oauth2.js +0 -303
  65. package/dist/client/auth/providers/supabase.js +0 -259
  66. package/dist/client/auth/providers/workos.js +0 -284
  67. package/dist/client/auth/serverBridge.js +0 -25
  68. package/dist/client/auth/sessionManager.js +0 -437
  69. package/dist/client/auth/tokenStore.js +0 -799
  70. package/dist/client/client/aiSdkAdapter.js +0 -487
  71. package/dist/client/client/auth.js +0 -473
  72. package/dist/client/client/errors.js +0 -552
  73. package/dist/client/client/httpClient.js +0 -837
  74. package/dist/client/client/index.js +0 -172
  75. package/dist/client/client/interceptors.js +0 -601
  76. package/dist/client/client/sseClient.js +0 -545
  77. package/dist/client/client/streamingClient.js +0 -917
  78. package/dist/client/client/wsClient.js +0 -369
  79. package/dist/client/config/configManager.js +0 -303
  80. package/dist/client/config/conversationMemory.js +0 -86
  81. package/dist/client/config/taskClassificationConfig.js +0 -148
  82. package/dist/client/constants/contextWindows.js +0 -295
  83. package/dist/client/constants/enums.js +0 -853
  84. package/dist/client/constants/index.js +0 -207
  85. package/dist/client/constants/performance.js +0 -389
  86. package/dist/client/constants/retry.js +0 -266
  87. package/dist/client/constants/timeouts.js +0 -182
  88. package/dist/client/constants/tokens.js +0 -380
  89. package/dist/client/constants/videoErrors.js +0 -46
  90. package/dist/client/context/budgetChecker.js +0 -98
  91. package/dist/client/context/contextCompactor.js +0 -205
  92. package/dist/client/context/emergencyTruncation.js +0 -88
  93. package/dist/client/context/errorDetection.js +0 -171
  94. package/dist/client/context/errors.js +0 -21
  95. package/dist/client/context/fileTokenBudget.js +0 -127
  96. package/dist/client/context/prompts/summarizationPrompt.js +0 -117
  97. package/dist/client/context/stages/fileReadDeduplicator.js +0 -66
  98. package/dist/client/context/stages/slidingWindowTruncator.js +0 -190
  99. package/dist/client/context/stages/structuredSummarizer.js +0 -99
  100. package/dist/client/context/stages/toolOutputPruner.js +0 -52
  101. package/dist/client/context/summarizationEngine.js +0 -136
  102. package/dist/client/context/toolOutputLimits.js +0 -78
  103. package/dist/client/context/toolPairRepair.js +0 -66
  104. package/dist/client/core/analytics.js +0 -88
  105. package/dist/client/core/baseProvider.js +0 -1385
  106. package/dist/client/core/constants.js +0 -140
  107. package/dist/client/core/conversationMemoryFactory.js +0 -141
  108. package/dist/client/core/conversationMemoryInitializer.js +0 -128
  109. package/dist/client/core/conversationMemoryManager.js +0 -344
  110. package/dist/client/core/dynamicModels.js +0 -358
  111. package/dist/client/core/evaluation.js +0 -309
  112. package/dist/client/core/evaluationProviders.js +0 -248
  113. package/dist/client/core/factory.js +0 -412
  114. package/dist/client/core/infrastructure/baseError.js +0 -22
  115. package/dist/client/core/infrastructure/baseFactory.js +0 -54
  116. package/dist/client/core/infrastructure/baseRegistry.js +0 -53
  117. package/dist/client/core/infrastructure/index.js +0 -5
  118. package/dist/client/core/infrastructure/retry.js +0 -20
  119. package/dist/client/core/infrastructure/typedEventEmitter.js +0 -23
  120. package/dist/client/core/modelConfiguration.js +0 -851
  121. package/dist/client/core/modules/GenerationHandler.js +0 -588
  122. package/dist/client/core/modules/MessageBuilder.js +0 -273
  123. package/dist/client/core/modules/StreamHandler.js +0 -185
  124. package/dist/client/core/modules/TelemetryHandler.js +0 -203
  125. package/dist/client/core/modules/ToolsManager.js +0 -499
  126. package/dist/client/core/modules/Utilities.js +0 -331
  127. package/dist/client/core/redisConversationMemoryManager.js +0 -1435
  128. package/dist/client/core/streamAnalytics.js +0 -131
  129. package/dist/client/evaluation/contextBuilder.js +0 -134
  130. package/dist/client/evaluation/index.js +0 -61
  131. package/dist/client/evaluation/prompts.js +0 -73
  132. package/dist/client/evaluation/ragasEvaluator.js +0 -110
  133. package/dist/client/evaluation/retryManager.js +0 -78
  134. package/dist/client/evaluation/scoring.js +0 -61
  135. package/dist/client/factories/providerFactory.js +0 -166
  136. package/dist/client/factories/providerRegistry.js +0 -166
  137. package/dist/client/features/ppt/constants.js +0 -896
  138. package/dist/client/features/ppt/contentPlanner.js +0 -529
  139. package/dist/client/features/ppt/presentationOrchestrator.js +0 -236
  140. package/dist/client/features/ppt/slideGenerator.js +0 -532
  141. package/dist/client/features/ppt/slideRenderers.js +0 -2383
  142. package/dist/client/features/ppt/slideTypeInference.js +0 -405
  143. package/dist/client/features/ppt/types.js +0 -13
  144. package/dist/client/features/ppt/utils.js +0 -443
  145. package/dist/client/files/fileReferenceRegistry.js +0 -1543
  146. package/dist/client/files/fileTools.js +0 -450
  147. package/dist/client/files/streamingReader.js +0 -321
  148. package/dist/client/files/types.js +0 -23
  149. package/dist/client/hitl/hitlErrors.js +0 -54
  150. package/dist/client/hitl/hitlManager.js +0 -460
  151. package/dist/client/mcp/agentExposure.js +0 -356
  152. package/dist/client/mcp/auth/index.js +0 -11
  153. package/dist/client/mcp/auth/oauthClientProvider.js +0 -325
  154. package/dist/client/mcp/auth/tokenStorage.js +0 -134
  155. package/dist/client/mcp/batching/index.js +0 -10
  156. package/dist/client/mcp/batching/requestBatcher.js +0 -441
  157. package/dist/client/mcp/caching/index.js +0 -10
  158. package/dist/client/mcp/caching/toolCache.js +0 -433
  159. package/dist/client/mcp/elicitation/elicitationManager.js +0 -376
  160. package/dist/client/mcp/elicitation/index.js +0 -11
  161. package/dist/client/mcp/elicitation/types.js +0 -10
  162. package/dist/client/mcp/elicitationProtocol.js +0 -375
  163. package/dist/client/mcp/enhancedToolDiscovery.js +0 -481
  164. package/dist/client/mcp/externalServerManager.js +0 -1478
  165. package/dist/client/mcp/factory.js +0 -161
  166. package/dist/client/mcp/flexibleToolValidator.js +0 -161
  167. package/dist/client/mcp/httpRateLimiter.js +0 -391
  168. package/dist/client/mcp/httpRetryHandler.js +0 -178
  169. package/dist/client/mcp/index.js +0 -74
  170. package/dist/client/mcp/mcpCircuitBreaker.js +0 -427
  171. package/dist/client/mcp/mcpClientFactory.js +0 -708
  172. package/dist/client/mcp/mcpRegistryClient.js +0 -488
  173. package/dist/client/mcp/mcpServerBase.js +0 -373
  174. package/dist/client/mcp/multiServerManager.js +0 -579
  175. package/dist/client/mcp/registry.js +0 -158
  176. package/dist/client/mcp/routing/index.js +0 -10
  177. package/dist/client/mcp/routing/toolRouter.js +0 -416
  178. package/dist/client/mcp/serverCapabilities.js +0 -502
  179. package/dist/client/mcp/servers/agent/directToolsServer.js +0 -150
  180. package/dist/client/mcp/toolAnnotations.js +0 -239
  181. package/dist/client/mcp/toolConverter.js +0 -258
  182. package/dist/client/mcp/toolDiscoveryService.js +0 -798
  183. package/dist/client/mcp/toolIntegration.js +0 -334
  184. package/dist/client/mcp/toolRegistry.js +0 -729
  185. package/dist/client/memory/hippocampusInitializer.js +0 -19
  186. package/dist/client/memory/memoryRetrievalTools.js +0 -166
  187. package/dist/client/middleware/builtin/analytics.js +0 -132
  188. package/dist/client/middleware/builtin/autoEvaluation.js +0 -203
  189. package/dist/client/middleware/builtin/guardrails.js +0 -109
  190. package/dist/client/middleware/builtin/lifecycle.js +0 -168
  191. package/dist/client/middleware/factory.js +0 -327
  192. package/dist/client/middleware/registry.js +0 -295
  193. package/dist/client/middleware/utils/guardrailsUtils.js +0 -396
  194. package/dist/client/models/anthropicModels.js +0 -527
  195. package/dist/client/neurolink.js +0 -8233
  196. package/dist/client/observability/exporterRegistry.js +0 -413
  197. package/dist/client/observability/exporters/arizeExporter.js +0 -138
  198. package/dist/client/observability/exporters/baseExporter.js +0 -190
  199. package/dist/client/observability/exporters/braintrustExporter.js +0 -154
  200. package/dist/client/observability/exporters/datadogExporter.js +0 -196
  201. package/dist/client/observability/exporters/laminarExporter.js +0 -302
  202. package/dist/client/observability/exporters/langfuseExporter.js +0 -209
  203. package/dist/client/observability/exporters/langsmithExporter.js +0 -143
  204. package/dist/client/observability/exporters/otelExporter.js +0 -164
  205. package/dist/client/observability/exporters/posthogExporter.js +0 -287
  206. package/dist/client/observability/exporters/sentryExporter.js +0 -165
  207. package/dist/client/observability/index.js +0 -31
  208. package/dist/client/observability/metricsAggregator.js +0 -556
  209. package/dist/client/observability/otelBridge.js +0 -131
  210. package/dist/client/observability/retryPolicy.js +0 -383
  211. package/dist/client/observability/sampling/samplers.js +0 -216
  212. package/dist/client/observability/spanProcessor.js +0 -303
  213. package/dist/client/observability/tokenTracker.js +0 -413
  214. package/dist/client/observability/types/exporterTypes.js +0 -5
  215. package/dist/client/observability/types/index.js +0 -4
  216. package/dist/client/observability/types/spanTypes.js +0 -92
  217. package/dist/client/observability/utils/safeMetadata.js +0 -25
  218. package/dist/client/observability/utils/spanSerializer.js +0 -292
  219. package/dist/client/processors/archive/ArchiveProcessor.js +0 -1308
  220. package/dist/client/processors/base/BaseFileProcessor.js +0 -614
  221. package/dist/client/processors/base/types.js +0 -82
  222. package/dist/client/processors/config/fileTypes.js +0 -520
  223. package/dist/client/processors/config/index.js +0 -92
  224. package/dist/client/processors/config/languageMap.js +0 -410
  225. package/dist/client/processors/config/mimeTypes.js +0 -363
  226. package/dist/client/processors/config/sizeLimits.js +0 -258
  227. package/dist/client/processors/document/ExcelProcessor.js +0 -590
  228. package/dist/client/processors/document/OpenDocumentProcessor.js +0 -212
  229. package/dist/client/processors/document/PptxProcessor.js +0 -157
  230. package/dist/client/processors/document/RtfProcessor.js +0 -361
  231. package/dist/client/processors/document/WordProcessor.js +0 -353
  232. package/dist/client/processors/errors/FileErrorCode.js +0 -255
  233. package/dist/client/processors/errors/errorHelpers.js +0 -386
  234. package/dist/client/processors/errors/errorSerializer.js +0 -507
  235. package/dist/client/processors/errors/index.js +0 -49
  236. package/dist/client/processors/markup/SvgProcessor.js +0 -240
  237. package/dist/client/processors/media/AudioProcessor.js +0 -707
  238. package/dist/client/processors/media/VideoProcessor.js +0 -1045
  239. package/dist/client/providers/amazonBedrock.js +0 -1512
  240. package/dist/client/providers/amazonSagemaker.js +0 -162
  241. package/dist/client/providers/anthropic.js +0 -831
  242. package/dist/client/providers/azureOpenai.js +0 -143
  243. package/dist/client/providers/googleAiStudio.js +0 -1200
  244. package/dist/client/providers/googleNativeGemini3.js +0 -543
  245. package/dist/client/providers/googleVertex.js +0 -2936
  246. package/dist/client/providers/huggingFace.js +0 -315
  247. package/dist/client/providers/litellm.js +0 -488
  248. package/dist/client/providers/mistral.js +0 -157
  249. package/dist/client/providers/ollama.js +0 -1579
  250. package/dist/client/providers/openAI.js +0 -627
  251. package/dist/client/providers/openRouter.js +0 -543
  252. package/dist/client/providers/openaiCompatible.js +0 -290
  253. package/dist/client/providers/providerTypeUtils.js +0 -46
  254. package/dist/client/providers/sagemaker/adaptive-semaphore.js +0 -215
  255. package/dist/client/providers/sagemaker/client.js +0 -472
  256. package/dist/client/providers/sagemaker/config.js +0 -317
  257. package/dist/client/providers/sagemaker/detection.js +0 -606
  258. package/dist/client/providers/sagemaker/error-constants.js +0 -227
  259. package/dist/client/providers/sagemaker/errors.js +0 -299
  260. package/dist/client/providers/sagemaker/language-model.js +0 -775
  261. package/dist/client/providers/sagemaker/parsers.js +0 -634
  262. package/dist/client/providers/sagemaker/streaming.js +0 -331
  263. package/dist/client/providers/sagemaker/structured-parser.js +0 -625
  264. package/dist/client/proxy/accountQuota.js +0 -162
  265. package/dist/client/proxy/claudeFormat.js +0 -595
  266. package/dist/client/proxy/modelRouter.js +0 -29
  267. package/dist/client/proxy/oauthFetch.js +0 -367
  268. package/dist/client/proxy/proxyFetch.js +0 -586
  269. package/dist/client/proxy/requestLogger.js +0 -207
  270. package/dist/client/proxy/tokenRefresh.js +0 -124
  271. package/dist/client/proxy/usageStats.js +0 -74
  272. package/dist/client/proxy/utils/noProxyUtils.js +0 -149
  273. package/dist/client/rag/ChunkerFactory.js +0 -320
  274. package/dist/client/rag/ChunkerRegistry.js +0 -421
  275. package/dist/client/rag/chunkers/BaseChunker.js +0 -143
  276. package/dist/client/rag/chunkers/CharacterChunker.js +0 -28
  277. package/dist/client/rag/chunkers/HTMLChunker.js +0 -38
  278. package/dist/client/rag/chunkers/JSONChunker.js +0 -68
  279. package/dist/client/rag/chunkers/LaTeXChunker.js +0 -63
  280. package/dist/client/rag/chunkers/MarkdownChunker.js +0 -306
  281. package/dist/client/rag/chunkers/RecursiveChunker.js +0 -139
  282. package/dist/client/rag/chunkers/SemanticMarkdownChunker.js +0 -138
  283. package/dist/client/rag/chunkers/SentenceChunker.js +0 -66
  284. package/dist/client/rag/chunkers/TokenChunker.js +0 -61
  285. package/dist/client/rag/chunkers/index.js +0 -15
  286. package/dist/client/rag/chunking/characterChunker.js +0 -142
  287. package/dist/client/rag/chunking/chunkerRegistry.js +0 -194
  288. package/dist/client/rag/chunking/htmlChunker.js +0 -247
  289. package/dist/client/rag/chunking/index.js +0 -17
  290. package/dist/client/rag/chunking/jsonChunker.js +0 -281
  291. package/dist/client/rag/chunking/latexChunker.js +0 -251
  292. package/dist/client/rag/chunking/markdownChunker.js +0 -373
  293. package/dist/client/rag/chunking/recursiveChunker.js +0 -148
  294. package/dist/client/rag/chunking/semanticChunker.js +0 -306
  295. package/dist/client/rag/chunking/sentenceChunker.js +0 -230
  296. package/dist/client/rag/chunking/tokenChunker.js +0 -183
  297. package/dist/client/rag/document/MDocument.js +0 -392
  298. package/dist/client/rag/document/index.js +0 -5
  299. package/dist/client/rag/document/loaders.js +0 -500
  300. package/dist/client/rag/errors/RAGError.js +0 -274
  301. package/dist/client/rag/errors/index.js +0 -6
  302. package/dist/client/rag/graphRag/graphRAG.js +0 -401
  303. package/dist/client/rag/graphRag/index.js +0 -4
  304. package/dist/client/rag/index.js +0 -141
  305. package/dist/client/rag/metadata/MetadataExtractorFactory.js +0 -418
  306. package/dist/client/rag/metadata/MetadataExtractorRegistry.js +0 -362
  307. package/dist/client/rag/metadata/index.js +0 -9
  308. package/dist/client/rag/metadata/metadataExtractor.js +0 -280
  309. package/dist/client/rag/pipeline/RAGPipeline.js +0 -436
  310. package/dist/client/rag/pipeline/contextAssembly.js +0 -341
  311. package/dist/client/rag/pipeline/index.js +0 -5
  312. package/dist/client/rag/ragIntegration.js +0 -321
  313. package/dist/client/rag/reranker/RerankerFactory.js +0 -430
  314. package/dist/client/rag/reranker/RerankerRegistry.js +0 -402
  315. package/dist/client/rag/reranker/index.js +0 -9
  316. package/dist/client/rag/reranker/reranker.js +0 -277
  317. package/dist/client/rag/resilience/CircuitBreaker.js +0 -431
  318. package/dist/client/rag/resilience/RetryHandler.js +0 -304
  319. package/dist/client/rag/resilience/index.js +0 -7
  320. package/dist/client/rag/retrieval/hybridSearch.js +0 -335
  321. package/dist/client/rag/retrieval/index.js +0 -5
  322. package/dist/client/rag/retrieval/vectorQueryTool.js +0 -307
  323. package/dist/client/rag/types.js +0 -8
  324. package/dist/client/sdk/toolRegistration.js +0 -377
  325. package/dist/client/server/abstract/baseServerAdapter.js +0 -575
  326. package/dist/client/server/adapters/expressAdapter.js +0 -486
  327. package/dist/client/server/adapters/fastifyAdapter.js +0 -472
  328. package/dist/client/server/adapters/honoAdapter.js +0 -632
  329. package/dist/client/server/adapters/koaAdapter.js +0 -510
  330. package/dist/client/server/errors.js +0 -486
  331. package/dist/client/server/factory/serverAdapterFactory.js +0 -160
  332. package/dist/client/server/index.js +0 -108
  333. package/dist/client/server/middleware/abortSignal.js +0 -111
  334. package/dist/client/server/middleware/auth.js +0 -388
  335. package/dist/client/server/middleware/cache.js +0 -359
  336. package/dist/client/server/middleware/common.js +0 -281
  337. package/dist/client/server/middleware/deprecation.js +0 -190
  338. package/dist/client/server/middleware/mcpBodyAttachment.js +0 -63
  339. package/dist/client/server/middleware/rateLimit.js +0 -227
  340. package/dist/client/server/middleware/validation.js +0 -388
  341. package/dist/client/server/openapi/generator.js +0 -398
  342. package/dist/client/server/openapi/index.js +0 -36
  343. package/dist/client/server/openapi/schemas.js +0 -695
  344. package/dist/client/server/openapi/templates.js +0 -374
  345. package/dist/client/server/routes/agentRoutes.js +0 -189
  346. package/dist/client/server/routes/claudeProxyRoutes.js +0 -1600
  347. package/dist/client/server/routes/healthRoutes.js +0 -187
  348. package/dist/client/server/routes/index.js +0 -57
  349. package/dist/client/server/routes/mcpRoutes.js +0 -342
  350. package/dist/client/server/routes/memoryRoutes.js +0 -350
  351. package/dist/client/server/routes/openApiRoutes.js +0 -126
  352. package/dist/client/server/routes/toolRoutes.js +0 -199
  353. package/dist/client/server/streaming/dataStream.js +0 -486
  354. package/dist/client/server/streaming/index.js +0 -11
  355. package/dist/client/server/types.js +0 -67
  356. package/dist/client/server/utils/redaction.js +0 -334
  357. package/dist/client/server/utils/validation.js +0 -243
  358. package/dist/client/server/websocket/WebSocketHandler.js +0 -383
  359. package/dist/client/server/websocket/index.js +0 -4
  360. package/dist/client/services/server/ai/observability/instrumentation.js +0 -808
  361. package/dist/client/telemetry/attributes.js +0 -100
  362. package/dist/client/telemetry/index.js +0 -26
  363. package/dist/client/telemetry/telemetryService.js +0 -308
  364. package/dist/client/telemetry/tracers.js +0 -17
  365. package/dist/client/telemetry/withSpan.js +0 -34
  366. package/dist/client/types/actionTypes.js +0 -6
  367. package/dist/client/types/analytics.js +0 -5
  368. package/dist/client/types/authTypes.js +0 -9
  369. package/dist/client/types/circuitBreakerErrors.js +0 -34
  370. package/dist/client/types/cli.js +0 -21
  371. package/dist/client/types/clientTypes.js +0 -10
  372. package/dist/client/types/common.js +0 -51
  373. package/dist/client/types/configTypes.js +0 -49
  374. package/dist/client/types/content.js +0 -19
  375. package/dist/client/types/contextTypes.js +0 -400
  376. package/dist/client/types/conversation.js +0 -47
  377. package/dist/client/types/conversationMemoryInterface.js +0 -6
  378. package/dist/client/types/domainTypes.js +0 -5
  379. package/dist/client/types/errors.js +0 -167
  380. package/dist/client/types/evaluation.js +0 -5
  381. package/dist/client/types/evaluationProviders.js +0 -5
  382. package/dist/client/types/evaluationTypes.js +0 -1
  383. package/dist/client/types/externalMcp.js +0 -6
  384. package/dist/client/types/fileReferenceTypes.js +0 -8
  385. package/dist/client/types/fileTypes.js +0 -4
  386. package/dist/client/types/generateTypes.js +0 -1
  387. package/dist/client/types/guardrails.js +0 -1
  388. package/dist/client/types/hitlTypes.js +0 -8
  389. package/dist/client/types/index.js +0 -57
  390. package/dist/client/types/mcpTypes.js +0 -5
  391. package/dist/client/types/middlewareTypes.js +0 -1
  392. package/dist/client/types/modelTypes.js +0 -30
  393. package/dist/client/types/multimodal.js +0 -135
  394. package/dist/client/types/observability.js +0 -6
  395. package/dist/client/types/pptTypes.js +0 -82
  396. package/dist/client/types/providers.js +0 -111
  397. package/dist/client/types/proxyTypes.js +0 -16
  398. package/dist/client/types/ragTypes.js +0 -7
  399. package/dist/client/types/sdkTypes.js +0 -8
  400. package/dist/client/types/serviceTypes.js +0 -5
  401. package/dist/client/types/streamTypes.js +0 -1
  402. package/dist/client/types/subscriptionTypes.js +0 -9
  403. package/dist/client/types/taskClassificationTypes.js +0 -5
  404. package/dist/client/types/tools.js +0 -24
  405. package/dist/client/types/ttsTypes.js +0 -57
  406. package/dist/client/types/typeAliases.js +0 -48
  407. package/dist/client/types/utilities.js +0 -4
  408. package/dist/client/types/workflowTypes.js +0 -30
  409. package/dist/client/utils/async/withTimeout.js +0 -98
  410. package/dist/client/utils/asyncMutex.js +0 -60
  411. package/dist/client/utils/conversationMemory.js +0 -431
  412. package/dist/client/utils/csvProcessor.js +0 -846
  413. package/dist/client/utils/errorHandling.js +0 -936
  414. package/dist/client/utils/evaluationUtils.js +0 -131
  415. package/dist/client/utils/factoryProcessing.js +0 -589
  416. package/dist/client/utils/fileDetector.js +0 -2161
  417. package/dist/client/utils/imageCache.js +0 -376
  418. package/dist/client/utils/imageProcessor.js +0 -704
  419. package/dist/client/utils/logger.js +0 -491
  420. package/dist/client/utils/mcpDefaults.js +0 -134
  421. package/dist/client/utils/messageBuilder.js +0 -1653
  422. package/dist/client/utils/modelAliasResolver.js +0 -54
  423. package/dist/client/utils/modelDetection.js +0 -80
  424. package/dist/client/utils/modelRouter.js +0 -292
  425. package/dist/client/utils/multimodalOptionsBuilder.js +0 -65
  426. package/dist/client/utils/observabilityHelpers.js +0 -47
  427. package/dist/client/utils/parameterValidation.js +0 -966
  428. package/dist/client/utils/pdfProcessor.js +0 -410
  429. package/dist/client/utils/performance.js +0 -222
  430. package/dist/client/utils/pricing.js +0 -340
  431. package/dist/client/utils/promptRedaction.js +0 -62
  432. package/dist/client/utils/providerConfig.js +0 -1009
  433. package/dist/client/utils/providerHealth.js +0 -1237
  434. package/dist/client/utils/providerRetry.js +0 -112
  435. package/dist/client/utils/providerUtils.js +0 -434
  436. package/dist/client/utils/rateLimiter.js +0 -200
  437. package/dist/client/utils/redis.js +0 -368
  438. package/dist/client/utils/retryHandler.js +0 -269
  439. package/dist/client/utils/retryability.js +0 -22
  440. package/dist/client/utils/sanitizers/svg.js +0 -481
  441. package/dist/client/utils/schemaConversion.js +0 -255
  442. package/dist/client/utils/taskClassificationUtils.js +0 -149
  443. package/dist/client/utils/taskClassifier.js +0 -94
  444. package/dist/client/utils/thinkingConfig.js +0 -104
  445. package/dist/client/utils/timeout.js +0 -359
  446. package/dist/client/utils/tokenEstimation.js +0 -142
  447. package/dist/client/utils/tokenLimits.js +0 -125
  448. package/dist/client/utils/tokenUtils.js +0 -239
  449. package/dist/client/utils/toolUtils.js +0 -75
  450. package/dist/client/utils/transformationUtils.js +0 -554
  451. package/dist/client/utils/ttsProcessor.js +0 -286
  452. package/dist/client/utils/typeUtils.js +0 -97
  453. package/dist/client/utils/videoAnalysisProcessor.js +0 -67
  454. package/dist/client/workflow/config.js +0 -398
  455. package/dist/client/workflow/core/ensembleExecutor.js +0 -407
  456. package/dist/client/workflow/core/judgeScorer.js +0 -544
  457. package/dist/client/workflow/core/responseConditioner.js +0 -225
  458. package/dist/client/workflow/core/types/conditionerTypes.js +0 -7
  459. package/dist/client/workflow/core/types/ensembleTypes.js +0 -7
  460. package/dist/client/workflow/core/types/index.js +0 -7
  461. package/dist/client/workflow/core/types/judgeTypes.js +0 -7
  462. package/dist/client/workflow/core/types/layerTypes.js +0 -7
  463. package/dist/client/workflow/core/types/registryTypes.js +0 -7
  464. package/dist/client/workflow/core/workflowRegistry.js +0 -304
  465. package/dist/client/workflow/core/workflowRunner.js +0 -586
  466. package/dist/client/workflow/index.js +0 -50
  467. package/dist/client/workflow/types.js +0 -9
  468. package/dist/client/workflow/utils/types/index.js +0 -7
  469. package/dist/client/workflow/utils/workflowMetrics.js +0 -311
  470. package/dist/client/workflow/utils/workflowValidation.js +0 -420
  471. package/dist/client/workflow/workflows/adaptiveWorkflow.js +0 -366
  472. package/dist/client/workflow/workflows/consensusWorkflow.js +0 -192
  473. package/dist/client/workflow/workflows/fallbackWorkflow.js +0 -225
  474. package/dist/client/workflow/workflows/multiJudgeWorkflow.js +0 -351
  475. /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;