@juspay/neurolink 13.4.10 → 13.5.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 +2 -3
- package/README.md +3 -2
- package/dist/adapters/video/videoAnalyzer.d.ts +1 -0
- package/dist/adapters/video/videoAnalyzer.js +4 -0
- package/dist/autoresearch/index.d.ts +1 -0
- package/dist/autoresearch/index.js +4 -0
- package/dist/autoresearch/worker.js +4 -0
- package/dist/browser/neurolink.min.js +466 -466
- package/dist/cli/commands/decide.js +25 -5
- package/dist/cli/commands/observability.js +11 -4
- package/dist/cli/commands/telemetry.js +36 -6
- package/dist/cli/utils/formatters.d.ts +17 -0
- package/dist/cli/utils/formatters.js +39 -0
- package/dist/constants/langfuse.d.ts +17 -1
- package/dist/constants/langfuse.js +23 -1
- package/dist/constants/telemetry.d.ts +6 -0
- package/dist/constants/telemetry.js +6 -0
- package/dist/core/baseProvider.js +2 -0
- package/dist/core/geminiLoopAdapter.js +19 -0
- package/dist/core/loopEngine.js +10 -7
- package/dist/core/modules/StreamHandler.js +5 -4
- package/dist/core/modules/TelemetryHandler.d.ts +5 -1
- package/dist/core/modules/TelemetryHandler.js +16 -0
- package/dist/core/modules/ToolsManager.js +3 -0
- package/dist/core/nativeGenerateLoop.js +1 -1
- package/dist/evaluation/index.d.ts +1 -0
- package/dist/evaluation/index.js +4 -0
- package/dist/evaluation/ragasEvaluator.js +1 -0
- package/dist/factories/providerDescriptors.d.ts +4 -3
- package/dist/factories/providerDescriptors.js +6 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/mcp/externalServerManager.js +6 -2
- package/dist/mcp/toolRegistry.js +3 -0
- package/dist/neurolink.d.ts +20 -10
- package/dist/neurolink.js +134 -65
- package/dist/observability/FEATURE-STATUS.md +0 -4
- package/dist/observability/exporterRegistry.d.ts +6 -1
- package/dist/observability/exporterRegistry.js +18 -0
- package/dist/observability/exporterSpanProcessor.d.ts +20 -6
- package/dist/observability/exporterSpanProcessor.js +166 -34
- package/dist/observability/exporters/baseExporter.d.ts +22 -3
- package/dist/observability/exporters/baseExporter.js +87 -5
- package/dist/observability/exporters/langfuseExporter.d.ts +29 -3
- package/dist/observability/exporters/langfuseExporter.js +251 -41
- package/dist/observability/langfuseMasking.d.ts +1 -1
- package/dist/observability/langfuseMasking.js +1 -1
- package/dist/observability/otlpEncoding.d.ts +18 -5
- package/dist/observability/otlpEncoding.js +69 -12
- package/dist/observability/utils/spanSerializer.d.ts +3 -2
- package/dist/observability/utils/spanSerializer.js +5 -3
- package/dist/processors/base/BaseFileProcessor.d.ts +1 -0
- package/dist/processors/base/BaseFileProcessor.js +4 -0
- package/dist/processors/index.d.ts +1 -0
- package/dist/processors/index.js +4 -0
- package/dist/processors/registry/ProcessorRegistry.d.ts +1 -0
- package/dist/processors/registry/ProcessorRegistry.js +5 -0
- package/dist/providers/amazonBedrock/client.js +7 -5
- package/dist/providers/amazonSagemaker.js +32 -12
- package/dist/providers/anthropic/client.js +1 -0
- package/dist/providers/anthropic/loopAdapter.js +7 -3
- package/dist/providers/catalog/provider-catalog.schema.json +64 -3
- package/dist/providers/catalog/schema.js +81 -1
- package/dist/providers/catalog/xor.json +30 -10
- package/dist/providers/configuredDecision.d.ts +8 -1
- package/dist/providers/configuredDecision.js +22 -0
- package/dist/providers/decide/dialects/openaiDecisions.js +8 -0
- package/dist/providers/decide/dialects/systemOne.js +28 -2
- package/dist/providers/decide/guards.d.ts +6 -0
- package/dist/providers/decide/guards.js +22 -0
- package/dist/providers/googleAiStudio/client.js +2 -0
- package/dist/providers/googleVertex/client.d.ts +6 -5
- package/dist/providers/googleVertex/client.js +46 -19
- package/dist/providers/openaiChatCompletionsBase.js +4 -4
- package/dist/providers/systemOneDecision.d.ts +30 -7
- package/dist/providers/systemOneDecision.js +71 -14
- package/dist/proxy/codexUsage.js +59 -2
- package/dist/proxy/proxyTracer.d.ts +25 -1
- package/dist/proxy/proxyTracer.js +146 -22
- package/dist/proxy/proxyTranslationEngine.js +4 -2
- package/dist/proxy/sseInterceptor.js +6 -4
- package/dist/rag/chunkers/BaseChunker.js +1 -0
- package/dist/rag/index.d.ts +1 -0
- package/dist/rag/index.js +4 -0
- package/dist/rag/ragIntegration.js +1 -0
- package/dist/rag/reranker/reranker.js +2 -0
- package/dist/rag/retrieval/vectorQueryTool.js +1 -0
- package/dist/server/routes/codexProxyRoutes.js +3 -1
- package/dist/server/utils/validation.d.ts +3 -3
- package/dist/services/server/ai/observability/instrumentation.d.ts +8 -7
- package/dist/services/server/ai/observability/instrumentation.js +217 -47
- package/dist/services/server/ai/observability/langfuseSetup.d.ts +19 -1
- package/dist/services/server/ai/observability/langfuseSetup.js +62 -4
- package/dist/services/server/ai/observability/otlpSetup.d.ts +12 -2
- package/dist/services/server/ai/observability/otlpSetup.js +55 -4
- package/dist/telemetry/aiMetrics.d.ts +56 -0
- package/dist/telemetry/aiMetrics.js +229 -0
- package/dist/telemetry/attributes.d.ts +24 -1
- package/dist/telemetry/attributes.js +94 -9
- package/dist/telemetry/chatMessages.d.ts +6 -0
- package/dist/telemetry/chatMessages.js +37 -0
- package/dist/telemetry/index.d.ts +1 -1
- package/dist/telemetry/index.js +1 -1
- package/dist/telemetry/observation.d.ts +5 -5
- package/dist/telemetry/observation.js +128 -39
- package/dist/telemetry/spanSanitizer.d.ts +2 -2
- package/dist/telemetry/spanSanitizer.js +76 -8
- package/dist/telemetry/telemetryStarter.d.ts +16 -0
- package/dist/telemetry/telemetryStarter.js +28 -0
- package/dist/telemetry/traceContext.d.ts +3 -3
- package/dist/telemetry/traceContext.js +3 -3
- package/dist/telemetry/tracers.d.ts +13 -1
- package/dist/telemetry/tracers.js +49 -10
- package/dist/telemetry/withSpan.d.ts +19 -3
- package/dist/telemetry/withSpan.js +149 -20
- package/dist/types/cli.d.ts +2 -0
- package/dist/types/decision.d.ts +117 -10
- package/dist/types/exporter.d.ts +98 -3
- package/dist/types/livekit.d.ts +16 -1
- package/dist/types/loopEngine.d.ts +16 -1
- package/dist/types/observability.d.ts +38 -5
- package/dist/types/providerCatalog.d.ts +12 -1
- package/dist/types/providers.d.ts +2 -0
- package/dist/types/proxy.d.ts +2 -0
- package/dist/types/span.d.ts +26 -0
- package/dist/utils/decisionAnswers.d.ts +7 -1
- package/dist/utils/decisionAnswers.js +43 -2
- package/dist/utils/decisionLimits.d.ts +13 -1
- package/dist/utils/decisionLimits.js +52 -1
- package/dist/utils/decisionMedia.d.ts +4 -2
- package/dist/utils/decisionMedia.js +216 -14
- package/dist/utils/timeout.js +4 -2
- package/dist/voice/livekit/realtimeMcpTools.js +11 -2
- package/dist/voice/livekit/realtimeMemory.d.ts +20 -2
- package/dist/voice/livekit/realtimeMemory.js +139 -46
- package/dist/voice/livekit/realtimeVoiceAgent.js +20 -8
- package/dist/voice/livekit/turnRecorder.js +22 -9
- package/dist/workflow/core/ensembleExecutor.js +2 -0
- package/dist/workflow/core/judgeScorer.js +1 -0
- package/dist/workflow/core/responseConditioner.js +1 -0
- package/dist/workflow/core/workflowRunner.js +6 -1
- package/dist/workflow/index.d.ts +1 -0
- package/dist/workflow/index.js +4 -0
- package/docs-site/static/search-index.json +56 -48
- package/package.json +21 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
## [13.
|
|
1
|
+
## [13.5.1](https://github.com/juspay/neurolink/compare/v13.5.0...v13.5.1) (2026-10-20)
|
|
2
2
|
|
|
3
3
|
### Bug Fixes
|
|
4
4
|
|
|
5
|
-
- **(
|
|
6
|
-
- **(test):** restore network hooks and env when the provider-status case fails during setup ([fe71e65](https://github.com/juspay/neurolink/commit/fe71e653351626702ce1800a735101b1dcc186a1))
|
|
5
|
+
- **(observability):** close the review findings of the Langfuse OTEL pipeline (BZ-6924) ([dc39f4d](https://github.com/juspay/neurolink/commit/dc39f4ded73cca4a3faf3a5bea48babea6dd4d6f))
|
|
7
6
|
|
|
8
7
|
## [11.2.3](https://github.com/juspay/neurolink/compare/v11.2.2...v11.2.3) (2026-08-19)
|
|
9
8
|
|
package/README.md
CHANGED
|
@@ -286,12 +286,13 @@ TypeSafe and Laya both configured, TypeSafe runs; with only Laya's key and base
|
|
|
286
286
|
set, Laya runs.
|
|
287
287
|
|
|
288
288
|
[**XOR**](docs/getting-started/providers/xor.md) is Juspay's Apache-2.0,
|
|
289
|
-
open-weights decision model (`xor-latest` for text, `xor-omni` for
|
|
289
|
+
open-weights decision model (`xor-latest` for text, `xor-omni` for an image, audio and `value` extraction); setup is on
|
|
290
290
|
[Hugging Face](https://huggingface.co/juspay/xor). It has no built-in endpoint
|
|
291
291
|
either: set `XOR_API_KEY` and `XOR_BASE_URL` to the origin of a deployment or of
|
|
292
292
|
a LiteLLM proxy route (or pass `credentials.xor`). XOR counts only with both its
|
|
293
293
|
key and base URL set, and a call can always name it with `provider: "xor"`. It
|
|
294
|
-
accepts
|
|
294
|
+
accepts one image and one audio clip (WAV, FLAC, Ogg or MP3; it hears the first
|
|
295
|
+
30 seconds), which TypeSafe, Laya, SubQ and ScaleDown refuse. It refuses video.
|
|
295
296
|
|
|
296
297
|
[**SubQ**](docs/getting-started/providers/subq.md) is Subquadratic's hosted
|
|
297
298
|
decision model, SubQ Snap (`subq-snap-preview`, in public preview; provider id
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* @module adapters/video/geminiVideoAnalyzer
|
|
8
8
|
*/
|
|
9
9
|
import { AIProviderName } from "../../constants/enums.js";
|
|
10
|
+
import "../../services/server/ai/observability/instrumentation.js";
|
|
10
11
|
import type { ModelMessage } from "../../types/index.js";
|
|
11
12
|
export declare function analyzeVideoWithVertexAI(messages: ModelMessage[], options?: {
|
|
12
13
|
project?: string;
|
|
@@ -9,6 +9,10 @@
|
|
|
9
9
|
import { AIProviderName, ErrorSeverity, ErrorCategory, } from "../../constants/enums.js";
|
|
10
10
|
import { logger } from "../../utils/logger.js";
|
|
11
11
|
import { googleSdkProxyHttpOptions } from "../../proxy/proxyFetch.js";
|
|
12
|
+
// Starts tracing at the first span, as this module always did: the shared
|
|
13
|
+
// tracers only start what a loaded entry registered, and this path can be
|
|
14
|
+
// imported without the package entry. The client entry stays free of it.
|
|
15
|
+
import "../../services/server/ai/observability/instrumentation.js";
|
|
12
16
|
import { readFile } from "node:fs/promises";
|
|
13
17
|
import { NeuroLinkError, ErrorFactory } from "../../utils/errorHandling.js";
|
|
14
18
|
// ---------------------------------------------------------------------------
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
* import { resolveConfig, validateConfig, ResearchStateStore, RepoPolicy, ExperimentRunner, ResultRecorder } from "@juspay/neurolink/autoresearch";
|
|
11
11
|
* ```
|
|
12
12
|
*/
|
|
13
|
+
import "../services/server/ai/observability/instrumentation.js";
|
|
13
14
|
export { resolveConfig, validateConfig } from "./config.js";
|
|
14
15
|
export { ResearchStateStore } from "./stateStore.js";
|
|
15
16
|
export { RepoPolicy } from "./repoPolicy.js";
|
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
* import { resolveConfig, validateConfig, ResearchStateStore, RepoPolicy, ExperimentRunner, ResultRecorder } from "@juspay/neurolink/autoresearch";
|
|
11
11
|
* ```
|
|
12
12
|
*/
|
|
13
|
+
// Imported on its own, this entry starts tracing at its first span, as the
|
|
14
|
+
// main entry does. The import sits here rather than in the shared tracers so
|
|
15
|
+
// that the client entry stays free of the OpenTelemetry Node SDK.
|
|
16
|
+
import "../services/server/ai/observability/instrumentation.js";
|
|
13
17
|
// Configuration
|
|
14
18
|
export { resolveConfig, validateConfig } from "./config.js";
|
|
15
19
|
// State management
|
|
@@ -70,6 +70,7 @@ export class ResearchWorker {
|
|
|
70
70
|
return withSpan({
|
|
71
71
|
name: "autoresearch.initialize",
|
|
72
72
|
tracer: tracers.autoresearch,
|
|
73
|
+
observationType: "span",
|
|
73
74
|
attributes: {
|
|
74
75
|
[ATTR.AR_TAG]: tag,
|
|
75
76
|
[ATTR.AR_BRANCH]: `${this.config.branchPrefix}${tag}`,
|
|
@@ -130,6 +131,7 @@ export class ResearchWorker {
|
|
|
130
131
|
return withSpan({
|
|
131
132
|
name: "autoresearch.resume",
|
|
132
133
|
tracer: tracers.autoresearch,
|
|
134
|
+
observationType: "span",
|
|
133
135
|
}, async (span) => {
|
|
134
136
|
const state = await this.stateStore.load();
|
|
135
137
|
if (!state) {
|
|
@@ -181,6 +183,7 @@ export class ResearchWorker {
|
|
|
181
183
|
return withSpan({
|
|
182
184
|
name: "autoresearch.experiment_cycle",
|
|
183
185
|
tracer: tracers.autoresearch,
|
|
186
|
+
observationType: "span",
|
|
184
187
|
attributes: {
|
|
185
188
|
[ATTR.AR_TAG]: state.tag,
|
|
186
189
|
[ATTR.AR_RUN_COUNT]: state.runCount,
|
|
@@ -202,6 +205,7 @@ export class ResearchWorker {
|
|
|
202
205
|
const summary = await withSpan({
|
|
203
206
|
name: "autoresearch.experiment_run",
|
|
204
207
|
tracer: tracers.autoresearch,
|
|
208
|
+
observationType: "span",
|
|
205
209
|
attributes: { [ATTR.AR_TAG]: state.tag },
|
|
206
210
|
}, async () => {
|
|
207
211
|
return withTimeout(this.runner.run(), this.config.timeoutMs + 30_000, new Error("Experiment runner exceeded safety timeout"));
|