@juspay/neurolink 9.54.6 → 9.54.7
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 +2 -0
- package/dist/action/actionInputs.d.ts +1 -1
- package/dist/adapters/video/directorPipeline.js +6 -0
- package/dist/adapters/video/vertexVideoHandler.js +6 -0
- package/dist/agent/directTools.d.ts +3 -23
- package/dist/auth/AuthProviderFactory.d.ts +1 -3
- package/dist/auth/anthropicOAuth.d.ts +4 -7
- package/dist/auth/anthropicOAuth.js +23 -0
- package/dist/auth/errors.d.ts +1 -1
- package/dist/auth/index.d.ts +11 -0
- package/dist/auth/index.js +14 -0
- package/dist/auth/middleware/AuthMiddleware.d.ts +5 -60
- package/dist/auth/middleware/AuthMiddleware.js +3 -0
- package/dist/auth/middleware/rateLimitByUser.d.ts +4 -93
- package/dist/auth/middleware/rateLimitByUser.js +4 -0
- package/dist/auth/providers/BaseAuthProvider.d.ts +1 -1
- package/dist/auth/providers/CognitoProvider.js +3 -0
- package/dist/auth/providers/KeycloakProvider.js +3 -0
- package/dist/auth/providers/auth0.d.ts +1 -1
- package/dist/auth/sessionManager.d.ts +2 -0
- package/dist/auth/sessionManager.js +53 -11
- package/dist/auth/tokenStore.d.ts +2 -0
- package/dist/auth/tokenStore.js +45 -4
- package/dist/autoresearch/tools.d.ts +1 -16
- package/dist/browser/neurolink.min.js +353 -353
- package/dist/cli/commands/config.d.ts +3 -123
- package/dist/cli/commands/config.js +4 -2
- package/dist/cli/commands/evaluate.d.ts +1 -19
- package/dist/cli/commands/proxy.d.ts +1 -1
- package/dist/cli/commands/proxy.js +3 -0
- package/dist/cli/commands/rag.js +3 -0
- package/dist/cli/commands/setup-anthropic.d.ts +2 -6
- package/dist/cli/commands/setup-anthropic.js +1 -1
- package/dist/cli/commands/setup-azure.d.ts +2 -6
- package/dist/cli/commands/setup-azure.js +1 -1
- package/dist/cli/commands/setup-bedrock.d.ts +2 -6
- package/dist/cli/commands/setup-bedrock.js +1 -1
- package/dist/cli/commands/setup-gcp.d.ts +2 -6
- package/dist/cli/commands/setup-google-ai.d.ts +2 -6
- package/dist/cli/commands/setup-google-ai.js +1 -1
- package/dist/cli/commands/setup-huggingface.d.ts +1 -5
- package/dist/cli/commands/setup-mistral.d.ts +1 -5
- package/dist/cli/commands/setup-openai.d.ts +2 -6
- package/dist/cli/commands/setup-openai.js +1 -1
- package/dist/cli/commands/setup.d.ts +1 -8
- package/dist/cli/commands/task.js +1 -0
- package/dist/cli/commands/voiceServer.d.ts +1 -4
- package/dist/cli/loop/session.js +31 -10
- package/dist/cli/utils/interactiveSetup.d.ts +2 -15
- package/dist/cli/utils/videoFileUtils.d.ts +1 -15
- package/dist/client/aiSdkAdapter.d.ts +1 -1
- package/dist/client/aiSdkAdapter.js +1 -0
- package/dist/client/httpClient.d.ts +1 -0
- package/dist/client/httpClient.js +13 -0
- package/dist/client/sseClient.d.ts +1 -0
- package/dist/client/sseClient.js +29 -0
- package/dist/client/streamingClient.d.ts +2 -0
- package/dist/client/streamingClient.js +19 -0
- package/dist/client/wsClient.d.ts +6 -0
- package/dist/client/wsClient.js +90 -10
- package/dist/context/budgetChecker.js +3 -1
- package/dist/context/contextCompactor.js +163 -143
- package/dist/context/fileSummarizationService.d.ts +1 -9
- package/dist/context/summarizationEngine.js +29 -16
- package/dist/core/baseProvider.js +124 -153
- package/dist/core/infrastructure/baseRegistry.d.ts +1 -7
- package/dist/core/modules/GenerationHandler.d.ts +3 -2
- package/dist/core/modules/GenerationHandler.js +9 -1
- package/dist/core/modules/StreamHandler.js +9 -0
- package/dist/core/modules/ToolsManager.js +18 -2
- package/dist/evaluation/BatchEvaluator.d.ts +1 -97
- package/dist/evaluation/EvaluationAggregator.d.ts +1 -118
- package/dist/evaluation/EvaluatorFactory.d.ts +1 -13
- package/dist/evaluation/EvaluatorRegistry.d.ts +1 -50
- package/dist/evaluation/errors/EvaluationError.d.ts +2 -27
- package/dist/evaluation/hooks/langfuseAdapter.d.ts +1 -39
- package/dist/evaluation/hooks/observabilityHooks.d.ts +3 -55
- package/dist/evaluation/hooks/observabilityHooks.js +3 -0
- package/dist/evaluation/pipeline/strategies/batchStrategy.d.ts +7 -61
- package/dist/evaluation/pipeline/strategies/batchStrategy.js +7 -7
- package/dist/evaluation/ragasEvaluator.js +54 -37
- package/dist/evaluation/reporting/metricsCollector.d.ts +1 -60
- package/dist/evaluation/reporting/reportGenerator.d.ts +1 -17
- package/dist/evaluation/scorers/rule/contentSimilarityScorer.d.ts +1 -29
- package/dist/evaluation/scorers/rule/formatScorer.d.ts +1 -42
- package/dist/evaluation/scorers/rule/keywordCoverageScorer.d.ts +1 -19
- package/dist/evaluation/scorers/rule/lengthScorer.d.ts +1 -33
- package/dist/factories/providerFactory.d.ts +1 -16
- package/dist/factories/providerFactory.js +2 -0
- package/dist/image-gen/ImageGenService.d.ts +3 -0
- package/dist/image-gen/ImageGenService.js +3 -0
- package/dist/lib/action/actionInputs.d.ts +1 -1
- package/dist/lib/adapters/video/directorPipeline.js +6 -0
- package/dist/lib/adapters/video/vertexVideoHandler.js +6 -0
- package/dist/lib/agent/directTools.d.ts +3 -23
- package/dist/lib/auth/AuthProviderFactory.d.ts +1 -3
- package/dist/lib/auth/anthropicOAuth.d.ts +4 -7
- package/dist/lib/auth/anthropicOAuth.js +23 -0
- package/dist/lib/auth/errors.d.ts +1 -1
- package/dist/lib/auth/index.d.ts +11 -0
- package/dist/lib/auth/index.js +14 -0
- package/dist/lib/auth/middleware/AuthMiddleware.d.ts +5 -60
- package/dist/lib/auth/middleware/AuthMiddleware.js +3 -0
- package/dist/lib/auth/middleware/rateLimitByUser.d.ts +4 -93
- package/dist/lib/auth/middleware/rateLimitByUser.js +4 -0
- package/dist/lib/auth/providers/BaseAuthProvider.d.ts +1 -1
- package/dist/lib/auth/providers/CognitoProvider.js +3 -0
- package/dist/lib/auth/providers/KeycloakProvider.js +3 -0
- package/dist/lib/auth/providers/auth0.d.ts +1 -1
- package/dist/lib/auth/sessionManager.d.ts +2 -0
- package/dist/lib/auth/sessionManager.js +53 -11
- package/dist/lib/auth/tokenStore.d.ts +2 -0
- package/dist/lib/auth/tokenStore.js +45 -4
- package/dist/lib/autoresearch/tools.d.ts +1 -16
- package/dist/lib/client/aiSdkAdapter.d.ts +1 -1
- package/dist/lib/client/aiSdkAdapter.js +1 -0
- package/dist/lib/client/httpClient.d.ts +1 -0
- package/dist/lib/client/httpClient.js +13 -0
- package/dist/lib/client/sseClient.d.ts +1 -0
- package/dist/lib/client/sseClient.js +29 -0
- package/dist/lib/client/streamingClient.d.ts +2 -0
- package/dist/lib/client/streamingClient.js +19 -0
- package/dist/lib/client/wsClient.d.ts +6 -0
- package/dist/lib/client/wsClient.js +90 -10
- package/dist/lib/context/budgetChecker.js +3 -1
- package/dist/lib/context/contextCompactor.js +163 -143
- package/dist/lib/context/fileSummarizationService.d.ts +1 -9
- package/dist/lib/context/summarizationEngine.js +29 -16
- package/dist/lib/core/baseProvider.js +124 -153
- package/dist/lib/core/infrastructure/baseRegistry.d.ts +1 -7
- package/dist/lib/core/modules/GenerationHandler.d.ts +3 -2
- package/dist/lib/core/modules/GenerationHandler.js +9 -1
- package/dist/lib/core/modules/StreamHandler.js +9 -0
- package/dist/lib/core/modules/ToolsManager.js +18 -2
- package/dist/lib/evaluation/BatchEvaluator.d.ts +1 -97
- package/dist/lib/evaluation/EvaluationAggregator.d.ts +1 -118
- package/dist/lib/evaluation/EvaluatorFactory.d.ts +1 -13
- package/dist/lib/evaluation/EvaluatorRegistry.d.ts +1 -50
- package/dist/lib/evaluation/errors/EvaluationError.d.ts +2 -27
- package/dist/lib/evaluation/hooks/langfuseAdapter.d.ts +1 -39
- package/dist/lib/evaluation/hooks/observabilityHooks.d.ts +3 -55
- package/dist/lib/evaluation/hooks/observabilityHooks.js +3 -0
- package/dist/lib/evaluation/pipeline/strategies/batchStrategy.d.ts +7 -61
- package/dist/lib/evaluation/pipeline/strategies/batchStrategy.js +7 -7
- package/dist/lib/evaluation/ragasEvaluator.js +54 -37
- package/dist/lib/evaluation/reporting/metricsCollector.d.ts +1 -60
- package/dist/lib/evaluation/reporting/reportGenerator.d.ts +1 -17
- package/dist/lib/evaluation/scorers/rule/contentSimilarityScorer.d.ts +1 -29
- package/dist/lib/evaluation/scorers/rule/formatScorer.d.ts +1 -42
- package/dist/lib/evaluation/scorers/rule/keywordCoverageScorer.d.ts +1 -19
- package/dist/lib/evaluation/scorers/rule/lengthScorer.d.ts +1 -33
- package/dist/lib/factories/providerFactory.d.ts +1 -16
- package/dist/lib/factories/providerFactory.js +2 -0
- package/dist/lib/image-gen/ImageGenService.d.ts +3 -0
- package/dist/lib/image-gen/ImageGenService.js +3 -0
- package/dist/lib/mcp/batching/requestBatcher.js +99 -73
- package/dist/lib/mcp/httpRateLimiter.js +3 -1
- package/dist/lib/mcp/httpRetryHandler.js +3 -1
- package/dist/lib/mcp/mcpClientFactory.js +3 -1
- package/dist/lib/mcp/multiServerManager.d.ts +1 -14
- package/dist/lib/mcp/servers/aiProviders/aiAnalysisTools.js +5 -1
- package/dist/lib/mcp/servers/aiProviders/aiWorkflowTools.js +1 -0
- package/dist/lib/mcp/toolDiscoveryService.js +70 -57
- package/dist/lib/mcp/toolRegistry.js +11 -1
- package/dist/lib/memory/memoryRetrievalTools.js +182 -141
- package/dist/lib/neurolink.js +236 -40
- package/dist/lib/observability/exporterRegistry.d.ts +3 -21
- package/dist/lib/observability/exporters/sentryExporter.js +1 -0
- package/dist/lib/observability/metricsAggregator.d.ts +1 -31
- package/dist/lib/observability/tokenTracker.d.ts +7 -16
- package/dist/lib/observability/tokenTracker.js +6 -4
- package/dist/lib/observability/utils/spanSerializer.d.ts +5 -1
- package/dist/lib/observability/utils/spanSerializer.js +24 -4
- package/dist/lib/processors/base/BaseFileProcessor.js +66 -53
- package/dist/lib/processors/document/ExcelProcessor.d.ts +1 -1
- package/dist/lib/processors/errors/errorHelpers.d.ts +1 -31
- package/dist/lib/processors/errors/errorSerializer.d.ts +1 -45
- package/dist/lib/processors/registry/ProcessorRegistry.js +17 -6
- package/dist/lib/providers/amazonBedrock.js +189 -15
- package/dist/lib/providers/amazonSagemaker.js +25 -11
- package/dist/lib/providers/anthropic.js +13 -0
- package/dist/lib/providers/azureOpenai.js +2 -0
- package/dist/lib/providers/googleAiStudio.js +82 -0
- package/dist/lib/providers/googleVertex.js +52 -0
- package/dist/lib/providers/huggingFace.js +2 -0
- package/dist/lib/providers/litellm.js +2 -0
- package/dist/lib/providers/mistral.js +2 -0
- package/dist/lib/providers/ollama.js +84 -5
- package/dist/lib/providers/openAI.d.ts +2 -0
- package/dist/lib/providers/openAI.js +17 -6
- package/dist/lib/providers/openRouter.js +2 -0
- package/dist/lib/providers/openaiCompatible.js +2 -0
- package/dist/lib/providers/sagemaker/detection.d.ts +1 -33
- package/dist/lib/providers/sagemaker/diagnostics.d.ts +1 -25
- package/dist/lib/providers/sagemaker/language-model.d.ts +1 -1
- package/dist/lib/proxy/proxyConfig.js +4 -0
- package/dist/lib/proxy/proxyEnv.d.ts +1 -17
- package/dist/lib/proxy/proxyTracer.d.ts +1 -36
- package/dist/lib/proxy/proxyTracer.js +9 -0
- package/dist/lib/proxy/quietDetector.d.ts +1 -7
- package/dist/lib/proxy/rawStreamCapture.d.ts +1 -10
- package/dist/lib/proxy/requestLogger.d.ts +1 -21
- package/dist/lib/proxy/sseInterceptor.d.ts +1 -66
- package/dist/lib/proxy/sseInterceptor.js +6 -0
- package/dist/lib/proxy/updateChecker.d.ts +1 -6
- package/dist/lib/proxy/updateState.d.ts +1 -12
- package/dist/lib/rag/chunkers/BaseChunker.js +36 -22
- package/dist/lib/rag/chunking/jsonChunker.d.ts +1 -1
- package/dist/lib/rag/errors/RAGError.d.ts +1 -2
- package/dist/lib/rag/ragIntegration.js +45 -32
- package/dist/lib/rag/reranker/reranker.js +151 -122
- package/dist/lib/rag/retrieval/vectorQueryTool.js +79 -65
- package/dist/lib/sdk/toolRegistration.d.ts +10 -44
- package/dist/lib/sdk/toolRegistration.js +1 -1
- package/dist/lib/server/middleware/abortSignal.d.ts +1 -11
- package/dist/lib/server/middleware/auth.d.ts +1 -21
- package/dist/lib/server/middleware/auth.js +12 -0
- package/dist/lib/server/middleware/common.js +48 -32
- package/dist/lib/server/middleware/deprecation.d.ts +1 -20
- package/dist/lib/server/middleware/rateLimit.d.ts +1 -75
- package/dist/lib/server/middleware/validation.d.ts +3 -81
- package/dist/lib/server/middleware/validation.js +3 -0
- package/dist/lib/server/openapi/generator.d.ts +1 -47
- package/dist/lib/server/routes/agentRoutes.js +112 -57
- package/dist/lib/server/routes/claudeProxyRoutes.d.ts +1 -6
- package/dist/lib/server/routes/claudeProxyRoutes.js +127 -13
- package/dist/lib/server/routes/healthRoutes.js +58 -12
- package/dist/lib/server/routes/index.d.ts +1 -26
- package/dist/lib/server/routes/mcpRoutes.js +40 -7
- package/dist/lib/server/routes/memoryRoutes.js +22 -7
- package/dist/lib/server/routes/openApiRoutes.js +30 -6
- package/dist/lib/server/routes/toolRoutes.js +140 -68
- package/dist/lib/server/streaming/dataStream.d.ts +1 -35
- package/dist/lib/server/streaming/dataStream.js +15 -0
- package/dist/lib/services/server/ai/observability/instrumentation.js +114 -14
- package/dist/lib/session/globalSessionState.d.ts +1 -10
- package/dist/lib/tasks/tools/taskTools.d.ts +2 -2
- package/dist/lib/telemetry/traceContext.d.ts +9 -0
- package/dist/lib/telemetry/traceContext.js +19 -0
- package/dist/lib/telemetry/tracers.d.ts +2 -0
- package/dist/lib/telemetry/tracers.js +2 -0
- package/dist/lib/types/action.d.ts +2 -0
- package/dist/lib/types/artifact.d.ts +7 -0
- package/dist/lib/types/auth.d.ts +125 -18
- package/dist/lib/types/autoresearch.d.ts +12 -0
- package/dist/lib/types/cli.d.ts +415 -0
- package/dist/lib/types/client.d.ts +34 -0
- package/dist/lib/types/common.d.ts +12 -41
- package/dist/lib/types/context.d.ts +5 -0
- package/dist/lib/types/evaluation.d.ts +332 -1
- package/dist/lib/types/file.d.ts +4 -0
- package/dist/lib/types/mcp.d.ts +102 -2
- package/dist/lib/types/middleware.d.ts +116 -0
- package/dist/lib/types/multimodal.d.ts +65 -0
- package/dist/lib/types/observability.d.ts +81 -0
- package/dist/lib/types/processor.d.ts +47 -0
- package/dist/lib/types/providers.d.ts +120 -16
- package/dist/lib/types/proxy.d.ts +321 -1
- package/dist/lib/types/rag.d.ts +22 -0
- package/dist/lib/types/scorer.d.ts +141 -0
- package/dist/lib/types/server.d.ts +99 -0
- package/dist/lib/types/span.d.ts +2 -1
- package/dist/lib/types/span.js +1 -0
- package/dist/lib/types/tools.d.ts +44 -0
- package/dist/lib/types/tts.d.ts +6 -0
- package/dist/lib/types/utilities.d.ts +22 -0
- package/dist/lib/types/workflow.d.ts +18 -0
- package/dist/lib/utils/async/retry.d.ts +2 -8
- package/dist/lib/utils/async/retry.js +9 -9
- package/dist/lib/utils/imageCompressor.d.ts +1 -21
- package/dist/lib/utils/imageCompressor.js +5 -1
- package/dist/lib/utils/messageBuilder.d.ts +1 -1
- package/dist/lib/utils/redis.d.ts +1 -4
- package/dist/lib/utils/toolEndEmitter.d.ts +25 -0
- package/dist/lib/utils/toolEndEmitter.js +65 -0
- package/dist/lib/workflow/config.d.ts +7 -32
- package/dist/lib/workflow/core/ensembleExecutor.js +28 -0
- package/dist/lib/workflow/core/judgeScorer.js +23 -0
- package/dist/lib/workflow/core/responseConditioner.js +17 -0
- package/dist/lib/workflow/core/workflowRunner.d.ts +1 -19
- package/dist/lib/workflow/core/workflowRunner.js +202 -147
- package/dist/mcp/batching/requestBatcher.js +99 -73
- package/dist/mcp/httpRateLimiter.js +3 -1
- package/dist/mcp/httpRetryHandler.js +3 -1
- package/dist/mcp/mcpClientFactory.js +3 -1
- package/dist/mcp/multiServerManager.d.ts +1 -14
- package/dist/mcp/servers/aiProviders/aiAnalysisTools.js +5 -1
- package/dist/mcp/servers/aiProviders/aiWorkflowTools.js +1 -0
- package/dist/mcp/toolDiscoveryService.js +70 -57
- package/dist/mcp/toolRegistry.js +11 -1
- package/dist/memory/memoryRetrievalTools.js +182 -141
- package/dist/neurolink.js +236 -40
- package/dist/observability/exporterRegistry.d.ts +3 -21
- package/dist/observability/exporters/sentryExporter.js +1 -0
- package/dist/observability/metricsAggregator.d.ts +1 -31
- package/dist/observability/tokenTracker.d.ts +7 -16
- package/dist/observability/tokenTracker.js +6 -4
- package/dist/observability/utils/spanSerializer.d.ts +5 -1
- package/dist/observability/utils/spanSerializer.js +24 -4
- package/dist/processors/base/BaseFileProcessor.js +66 -53
- package/dist/processors/document/ExcelProcessor.d.ts +1 -1
- package/dist/processors/errors/errorHelpers.d.ts +1 -31
- package/dist/processors/errors/errorSerializer.d.ts +1 -45
- package/dist/processors/registry/ProcessorRegistry.js +17 -6
- package/dist/providers/amazonBedrock.js +189 -15
- package/dist/providers/amazonSagemaker.js +25 -11
- package/dist/providers/anthropic.js +13 -0
- package/dist/providers/azureOpenai.js +2 -0
- package/dist/providers/googleAiStudio.js +82 -0
- package/dist/providers/googleVertex.js +52 -0
- package/dist/providers/huggingFace.js +2 -0
- package/dist/providers/litellm.js +2 -0
- package/dist/providers/mistral.js +2 -0
- package/dist/providers/ollama.js +84 -5
- package/dist/providers/openAI.d.ts +2 -0
- package/dist/providers/openAI.js +17 -6
- package/dist/providers/openRouter.js +2 -0
- package/dist/providers/openaiCompatible.js +2 -0
- package/dist/providers/sagemaker/detection.d.ts +1 -33
- package/dist/providers/sagemaker/diagnostics.d.ts +1 -25
- package/dist/providers/sagemaker/language-model.d.ts +1 -1
- package/dist/proxy/proxyConfig.js +4 -0
- package/dist/proxy/proxyEnv.d.ts +1 -17
- package/dist/proxy/proxyTracer.d.ts +1 -36
- package/dist/proxy/proxyTracer.js +9 -0
- package/dist/proxy/quietDetector.d.ts +1 -7
- package/dist/proxy/rawStreamCapture.d.ts +1 -10
- package/dist/proxy/requestLogger.d.ts +1 -21
- package/dist/proxy/sseInterceptor.d.ts +1 -66
- package/dist/proxy/sseInterceptor.js +6 -0
- package/dist/proxy/updateChecker.d.ts +1 -6
- package/dist/proxy/updateState.d.ts +1 -12
- package/dist/rag/chunkers/BaseChunker.js +36 -22
- package/dist/rag/chunking/jsonChunker.d.ts +1 -1
- package/dist/rag/errors/RAGError.d.ts +1 -2
- package/dist/rag/ragIntegration.js +45 -32
- package/dist/rag/reranker/reranker.js +151 -122
- package/dist/rag/retrieval/vectorQueryTool.js +79 -65
- package/dist/sdk/toolRegistration.d.ts +10 -44
- package/dist/sdk/toolRegistration.js +1 -1
- package/dist/server/middleware/abortSignal.d.ts +1 -11
- package/dist/server/middleware/auth.d.ts +1 -21
- package/dist/server/middleware/auth.js +12 -0
- package/dist/server/middleware/common.js +48 -32
- package/dist/server/middleware/deprecation.d.ts +1 -20
- package/dist/server/middleware/rateLimit.d.ts +1 -75
- package/dist/server/middleware/validation.d.ts +3 -81
- package/dist/server/middleware/validation.js +3 -0
- package/dist/server/openapi/generator.d.ts +1 -47
- package/dist/server/routes/agentRoutes.js +112 -57
- package/dist/server/routes/claudeProxyRoutes.d.ts +1 -6
- package/dist/server/routes/claudeProxyRoutes.js +127 -13
- package/dist/server/routes/healthRoutes.js +58 -12
- package/dist/server/routes/index.d.ts +1 -26
- package/dist/server/routes/mcpRoutes.js +40 -7
- package/dist/server/routes/memoryRoutes.js +22 -7
- package/dist/server/routes/openApiRoutes.js +30 -6
- package/dist/server/routes/toolRoutes.js +140 -68
- package/dist/server/streaming/dataStream.d.ts +1 -35
- package/dist/server/streaming/dataStream.js +15 -0
- package/dist/services/server/ai/observability/instrumentation.js +114 -14
- package/dist/session/globalSessionState.d.ts +1 -10
- package/dist/tasks/tools/taskTools.d.ts +2 -2
- package/dist/telemetry/traceContext.d.ts +9 -0
- package/dist/telemetry/traceContext.js +18 -0
- package/dist/telemetry/tracers.d.ts +2 -0
- package/dist/telemetry/tracers.js +2 -0
- package/dist/types/action.d.ts +2 -0
- package/dist/types/artifact.d.ts +7 -0
- package/dist/types/auth.d.ts +125 -18
- package/dist/types/autoresearch.d.ts +12 -0
- package/dist/types/cli.d.ts +415 -0
- package/dist/types/client.d.ts +34 -0
- package/dist/types/common.d.ts +12 -41
- package/dist/types/context.d.ts +5 -0
- package/dist/types/evaluation.d.ts +332 -1
- package/dist/types/file.d.ts +4 -0
- package/dist/types/mcp.d.ts +102 -2
- package/dist/types/middleware.d.ts +116 -0
- package/dist/types/multimodal.d.ts +65 -0
- package/dist/types/observability.d.ts +81 -0
- package/dist/types/processor.d.ts +47 -0
- package/dist/types/providers.d.ts +120 -16
- package/dist/types/proxy.d.ts +321 -1
- package/dist/types/rag.d.ts +22 -0
- package/dist/types/scorer.d.ts +141 -0
- package/dist/types/server.d.ts +99 -0
- package/dist/types/span.d.ts +2 -1
- package/dist/types/span.js +1 -0
- package/dist/types/tools.d.ts +44 -0
- package/dist/types/tts.d.ts +6 -0
- package/dist/types/utilities.d.ts +22 -0
- package/dist/types/workflow.d.ts +18 -0
- package/dist/utils/async/retry.d.ts +2 -8
- package/dist/utils/async/retry.js +9 -9
- package/dist/utils/imageCompressor.d.ts +1 -21
- package/dist/utils/imageCompressor.js +5 -1
- package/dist/utils/messageBuilder.d.ts +1 -1
- package/dist/utils/redis.d.ts +1 -4
- package/dist/utils/toolEndEmitter.d.ts +25 -0
- package/dist/utils/toolEndEmitter.js +64 -0
- package/dist/workflow/config.d.ts +4 -29
- package/dist/workflow/core/ensembleExecutor.js +28 -0
- package/dist/workflow/core/judgeScorer.js +23 -0
- package/dist/workflow/core/responseConditioner.js +17 -0
- package/dist/workflow/core/workflowRunner.d.ts +1 -19
- package/dist/workflow/core/workflowRunner.js +202 -147
- package/package.json +2 -1
|
@@ -4,18 +4,34 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { randomBytes } from "node:crypto";
|
|
6
6
|
import { SpanStatus, SpanType, } from "../../types/index.js";
|
|
7
|
+
import { getActiveTraceContext } from "../../telemetry/traceContext.js";
|
|
7
8
|
/**
|
|
8
9
|
* Utility class for span creation and serialization
|
|
9
10
|
*/
|
|
10
11
|
export class SpanSerializer {
|
|
11
12
|
/**
|
|
12
|
-
* Create a new span with generated IDs
|
|
13
|
+
* Create a new span with generated IDs.
|
|
14
|
+
*
|
|
15
|
+
* When `traceId` / `parentSpanId` are omitted, the method automatically
|
|
16
|
+
* attempts to inherit them from the active OTel context so that Pipeline B
|
|
17
|
+
* spans land inside the same Langfuse trace as Pipeline A spans (fix A5).
|
|
13
18
|
*/
|
|
14
19
|
static createSpan(type, name, attributes = {}, parentSpanId, traceId) {
|
|
20
|
+
// A5 fix: When no explicit traceId is provided, try to inherit from the
|
|
21
|
+
// active OTel context so Pipeline B spans are linked to Pipeline A traces.
|
|
22
|
+
let resolvedTraceId = traceId;
|
|
23
|
+
let resolvedParentSpanId = parentSpanId;
|
|
24
|
+
if (!resolvedTraceId) {
|
|
25
|
+
const otelCtx = getActiveTraceContext();
|
|
26
|
+
resolvedTraceId = otelCtx.traceId ?? randomBytes(16).toString("hex");
|
|
27
|
+
if (!resolvedParentSpanId && otelCtx.parentSpanId) {
|
|
28
|
+
resolvedParentSpanId = otelCtx.parentSpanId;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
15
31
|
return {
|
|
16
32
|
spanId: randomBytes(8).toString("hex"),
|
|
17
|
-
traceId:
|
|
18
|
-
parentSpanId,
|
|
33
|
+
traceId: resolvedTraceId,
|
|
34
|
+
parentSpanId: resolvedParentSpanId,
|
|
19
35
|
type,
|
|
20
36
|
name,
|
|
21
37
|
startTime: new Date().toISOString(),
|
|
@@ -109,7 +125,11 @@ export class SpanSerializer {
|
|
|
109
125
|
// Langfuse tracing; use LangfuseExporterConfig.redactIO=true to suppress them
|
|
110
126
|
// in compliance-sensitive deployments.
|
|
111
127
|
metadata: filterSafeMetadata(span.attributes),
|
|
112
|
-
level: span.status === SpanStatus.ERROR
|
|
128
|
+
level: span.status === SpanStatus.ERROR
|
|
129
|
+
? "ERROR"
|
|
130
|
+
: span.status === SpanStatus.WARNING
|
|
131
|
+
? "WARNING"
|
|
132
|
+
: "DEFAULT",
|
|
113
133
|
statusMessage: span.statusMessage,
|
|
114
134
|
input: span.attributes["input"],
|
|
115
135
|
output: span.attributes["output"],
|
|
@@ -47,6 +47,8 @@ import { promisify } from "util";
|
|
|
47
47
|
import { gunzip } from "zlib";
|
|
48
48
|
import { SIZE_LIMITS } from "../config/index.js";
|
|
49
49
|
import { isAbortError } from "../../utils/errorHandling.js";
|
|
50
|
+
import { withSpan } from "../../telemetry/withSpan.js";
|
|
51
|
+
import { tracers } from "../../telemetry/tracers.js";
|
|
50
52
|
import { createFileError, extractHttpStatus, FileErrorCode, isRetryableError, } from "../errors/index.js";
|
|
51
53
|
import { DEFAULT_RETRY_CONFIG } from "../../types/index.js";
|
|
52
54
|
const gunzipAsync = promisify(gunzip);
|
|
@@ -104,78 +106,89 @@ export class BaseFileProcessor {
|
|
|
104
106
|
* ```
|
|
105
107
|
*/
|
|
106
108
|
async processFile(fileInfo, options) {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
else if (fileInfo.url) {
|
|
123
|
-
// Download from URL
|
|
124
|
-
const downloadResult = await this.downloadFileWithRetry(fileInfo, options);
|
|
125
|
-
if (!downloadResult.success) {
|
|
109
|
+
return withSpan({
|
|
110
|
+
name: "neurolink.file.process",
|
|
111
|
+
tracer: tracers.file,
|
|
112
|
+
attributes: {
|
|
113
|
+
"file.processor": this.constructor.name,
|
|
114
|
+
"file.type": this.config.fileTypeName,
|
|
115
|
+
"file.mimetype": fileInfo.mimetype ?? "unknown",
|
|
116
|
+
"file.name": fileInfo.name ?? "unknown",
|
|
117
|
+
},
|
|
118
|
+
}, async (_span) => {
|
|
119
|
+
try {
|
|
120
|
+
// Step 1: Validate file type and size
|
|
121
|
+
const validationResult = this.validateFileWithResult(fileInfo);
|
|
122
|
+
if (!validationResult.success) {
|
|
126
123
|
return {
|
|
127
124
|
success: false,
|
|
128
|
-
error:
|
|
125
|
+
error: validationResult.error,
|
|
129
126
|
};
|
|
130
127
|
}
|
|
131
|
-
|
|
128
|
+
// Step 2: Get file buffer (from direct buffer or download from URL)
|
|
129
|
+
let buffer;
|
|
130
|
+
if (fileInfo.buffer) {
|
|
131
|
+
// Direct buffer provided - skip download
|
|
132
|
+
buffer = fileInfo.buffer;
|
|
133
|
+
}
|
|
134
|
+
else if (fileInfo.url) {
|
|
135
|
+
// Download from URL
|
|
136
|
+
const downloadResult = await this.downloadFileWithRetry(fileInfo, options);
|
|
137
|
+
if (!downloadResult.success) {
|
|
138
|
+
return {
|
|
139
|
+
success: false,
|
|
140
|
+
error: downloadResult.error,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
if (!downloadResult.data) {
|
|
144
|
+
return {
|
|
145
|
+
success: false,
|
|
146
|
+
error: this.createError(FileErrorCode.DOWNLOAD_FAILED, {
|
|
147
|
+
reason: "Download succeeded but returned no data",
|
|
148
|
+
}),
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
buffer = downloadResult.data;
|
|
152
|
+
// Validate actual downloaded size against limit
|
|
153
|
+
if (!this.validateFileSize(buffer.length)) {
|
|
154
|
+
return {
|
|
155
|
+
success: false,
|
|
156
|
+
error: this.createError(FileErrorCode.FILE_TOO_LARGE, {
|
|
157
|
+
sizeMB: (buffer.length / (1024 * 1024)).toFixed(2),
|
|
158
|
+
maxMB: this.config.maxSizeMB,
|
|
159
|
+
type: this.config.fileTypeName,
|
|
160
|
+
}),
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
else {
|
|
165
|
+
// No buffer or URL provided
|
|
132
166
|
return {
|
|
133
167
|
success: false,
|
|
134
168
|
error: this.createError(FileErrorCode.DOWNLOAD_FAILED, {
|
|
135
|
-
reason: "
|
|
169
|
+
reason: "No buffer or URL provided for file",
|
|
136
170
|
}),
|
|
137
171
|
};
|
|
138
172
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
if (!
|
|
173
|
+
// Step 3: Post-download validation (subclasses can override)
|
|
174
|
+
const postValidationResult = await this.validateDownloadedFileWithResult(buffer, fileInfo);
|
|
175
|
+
if (!postValidationResult.success) {
|
|
142
176
|
return {
|
|
143
177
|
success: false,
|
|
144
|
-
error:
|
|
145
|
-
sizeMB: (buffer.length / (1024 * 1024)).toFixed(2),
|
|
146
|
-
maxMB: this.config.maxSizeMB,
|
|
147
|
-
type: this.config.fileTypeName,
|
|
148
|
-
}),
|
|
178
|
+
error: postValidationResult.error,
|
|
149
179
|
};
|
|
150
180
|
}
|
|
181
|
+
// Step 4: Build processed result using template method
|
|
182
|
+
return await this.buildProcessedResultWithResult(buffer, fileInfo);
|
|
151
183
|
}
|
|
152
|
-
|
|
153
|
-
//
|
|
154
|
-
return {
|
|
155
|
-
success: false,
|
|
156
|
-
error: this.createError(FileErrorCode.DOWNLOAD_FAILED, {
|
|
157
|
-
reason: "No buffer or URL provided for file",
|
|
158
|
-
}),
|
|
159
|
-
};
|
|
160
|
-
}
|
|
161
|
-
// Step 3: Post-download validation (subclasses can override)
|
|
162
|
-
const postValidationResult = await this.validateDownloadedFileWithResult(buffer, fileInfo);
|
|
163
|
-
if (!postValidationResult.success) {
|
|
184
|
+
catch (error) {
|
|
185
|
+
// Catch any unexpected errors
|
|
164
186
|
return {
|
|
165
187
|
success: false,
|
|
166
|
-
error:
|
|
188
|
+
error: this.createError(FileErrorCode.UNKNOWN_ERROR, { error: error instanceof Error ? error.message : String(error) }, error instanceof Error ? error : undefined),
|
|
167
189
|
};
|
|
168
190
|
}
|
|
169
|
-
|
|
170
|
-
return await this.buildProcessedResultWithResult(buffer, fileInfo);
|
|
171
|
-
}
|
|
172
|
-
catch (error) {
|
|
173
|
-
// Catch any unexpected errors
|
|
174
|
-
return {
|
|
175
|
-
success: false,
|
|
176
|
-
error: this.createError(FileErrorCode.UNKNOWN_ERROR, { error: error instanceof Error ? error.message : String(error) }, error instanceof Error ? error : undefined),
|
|
177
|
-
};
|
|
178
|
-
}
|
|
191
|
+
}); // end withSpan
|
|
179
192
|
}
|
|
180
193
|
/**
|
|
181
194
|
* Process multiple files with detailed summary.
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
* ```
|
|
37
37
|
*/
|
|
38
38
|
import { BaseFileProcessor } from "../base/BaseFileProcessor.js";
|
|
39
|
-
import type { FileInfo,
|
|
39
|
+
import type { FileInfo, ProcessOptions, ProcessedExcel, ProcessorFileProcessingResult } from "../../types/index.js";
|
|
40
40
|
/**
|
|
41
41
|
* Excel Processor - handles .xlsx and .xls files.
|
|
42
42
|
* Uses exceljs library for parsing with support for large files.
|
|
@@ -7,37 +7,8 @@
|
|
|
7
7
|
*
|
|
8
8
|
* @module processors/errors
|
|
9
9
|
*/
|
|
10
|
-
import type { FileProcessingError } from "../../types/index.js";
|
|
10
|
+
import type { FileProcessingError, FileProcessingSummary } from "../../types/index.js";
|
|
11
11
|
import { FileErrorCode } from "./FileErrorCode.js";
|
|
12
|
-
/**
|
|
13
|
-
* Summary of file processing operations.
|
|
14
|
-
*/
|
|
15
|
-
type FileProcessingSummary = {
|
|
16
|
-
/** Total number of files attempted */
|
|
17
|
-
totalFiles: number;
|
|
18
|
-
/** Successfully processed files */
|
|
19
|
-
processedFiles: Array<{
|
|
20
|
-
filename: string;
|
|
21
|
-
size?: number;
|
|
22
|
-
type?: string;
|
|
23
|
-
}>;
|
|
24
|
-
/** Files that failed to process */
|
|
25
|
-
failedFiles: Array<{
|
|
26
|
-
filename: string;
|
|
27
|
-
error: FileProcessingError;
|
|
28
|
-
}>;
|
|
29
|
-
/** Files that were skipped */
|
|
30
|
-
skippedFiles: Array<{
|
|
31
|
-
filename: string;
|
|
32
|
-
reason: string;
|
|
33
|
-
suggestedAlternative?: string;
|
|
34
|
-
}>;
|
|
35
|
-
/** Non-fatal warnings */
|
|
36
|
-
warnings: Array<{
|
|
37
|
-
filename: string;
|
|
38
|
-
message: string;
|
|
39
|
-
}>;
|
|
40
|
-
};
|
|
41
12
|
/**
|
|
42
13
|
* Create a structured file processing error with user-friendly messaging.
|
|
43
14
|
*
|
|
@@ -148,4 +119,3 @@ export declare function combineSummaries(summaries: FileProcessingSummary[]): Fi
|
|
|
148
119
|
* @returns Delay in milliseconds before next retry
|
|
149
120
|
*/
|
|
150
121
|
export declare function getRetryDelay(error: unknown, attempt: number, baseDelayMs?: number): number;
|
|
151
|
-
export {};
|
|
@@ -11,50 +11,7 @@
|
|
|
11
11
|
*
|
|
12
12
|
* @module processors/errors
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
* Serialized error representation with full context.
|
|
16
|
-
*/
|
|
17
|
-
type SerializedError = {
|
|
18
|
-
/** Unique error instance ID */
|
|
19
|
-
errorId: string;
|
|
20
|
-
/** Deterministic fingerprint for error aggregation */
|
|
21
|
-
errorFingerprint: string;
|
|
22
|
-
/** Error type/class name */
|
|
23
|
-
errorType: string;
|
|
24
|
-
/** Error message */
|
|
25
|
-
message: string;
|
|
26
|
-
/** Full stack trace */
|
|
27
|
-
stack?: string;
|
|
28
|
-
/** Parsed stack frames */
|
|
29
|
-
stackFrames?: string[];
|
|
30
|
-
/** HTTP status code if applicable */
|
|
31
|
-
statusCode?: number;
|
|
32
|
-
/** Whether the error is operational (expected) vs programmer error */
|
|
33
|
-
isOperational?: boolean;
|
|
34
|
-
/** Whether the error is retryable */
|
|
35
|
-
isRetryable?: boolean;
|
|
36
|
-
/** Error code */
|
|
37
|
-
code?: string;
|
|
38
|
-
/** Additional metadata */
|
|
39
|
-
metadata?: Record<string, unknown>;
|
|
40
|
-
/** Serialized cause error (for error chaining) */
|
|
41
|
-
cause?: SerializedError;
|
|
42
|
-
/** ISO timestamp of when the error was serialized */
|
|
43
|
-
timestamp: string;
|
|
44
|
-
};
|
|
45
|
-
/**
|
|
46
|
-
* Options for error serialization.
|
|
47
|
-
*/
|
|
48
|
-
type SerializeOptions = {
|
|
49
|
-
/** Include stack trace in output (default: true) */
|
|
50
|
-
includeStack?: boolean;
|
|
51
|
-
/** Max depth for nested object serialization (default: 5) */
|
|
52
|
-
maxDepth?: number;
|
|
53
|
-
/** Filter stack traces to application frames only (default: true in production) */
|
|
54
|
-
filterStacks?: boolean;
|
|
55
|
-
/** Additional context to include */
|
|
56
|
-
context?: Record<string, unknown>;
|
|
57
|
-
};
|
|
14
|
+
import type { SerializeOptions, SerializedError } from "../../types/index.js";
|
|
58
15
|
/**
|
|
59
16
|
* Safely serialize an error with full context preservation.
|
|
60
17
|
* Handles circular references, redacts sensitive data, and preserves error metadata.
|
|
@@ -137,4 +94,3 @@ export declare function summarizeError(error: unknown): {
|
|
|
137
94
|
code?: string;
|
|
138
95
|
fingerprint: string;
|
|
139
96
|
};
|
|
140
|
-
export {};
|
|
@@ -43,6 +43,8 @@
|
|
|
43
43
|
* const result = await registry.processFile(fileInfo);
|
|
44
44
|
* ```
|
|
45
45
|
*/
|
|
46
|
+
import { withSpan } from "../../telemetry/withSpan.js";
|
|
47
|
+
import { tracers } from "../../telemetry/tracers.js";
|
|
46
48
|
// =============================================================================
|
|
47
49
|
// UTILITY FUNCTIONS
|
|
48
50
|
// =============================================================================
|
|
@@ -399,12 +401,21 @@ export class ProcessorRegistry {
|
|
|
399
401
|
* ```
|
|
400
402
|
*/
|
|
401
403
|
async processFile(fileInfo, options) {
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
404
|
+
return withSpan({
|
|
405
|
+
name: "neurolink.processor.processFile",
|
|
406
|
+
tracer: tracers.processor,
|
|
407
|
+
attributes: {
|
|
408
|
+
"processor.filename": fileInfo.name ?? "unknown",
|
|
409
|
+
"processor.mimetype": fileInfo.mimetype ?? "unknown",
|
|
410
|
+
},
|
|
411
|
+
}, async () => {
|
|
412
|
+
const match = this.findProcessor(fileInfo.mimetype, fileInfo.name);
|
|
413
|
+
if (!match) {
|
|
414
|
+
return null;
|
|
415
|
+
}
|
|
416
|
+
const processor = match.processor;
|
|
417
|
+
return processor.processFile(fileInfo, options);
|
|
418
|
+
});
|
|
408
419
|
}
|
|
409
420
|
/**
|
|
410
421
|
* Process a file with detailed result including error information.
|