@juspay/neurolink 9.37.0 → 9.39.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/dist/browser/neurolink.min.js +566 -515
- package/dist/lib/models/anthropicModels.d.ts +3 -1
- package/dist/lib/models/anthropicModels.js +37 -1
- package/dist/lib/processors/media/VideoProcessor.d.ts +8 -2
- package/dist/lib/processors/media/VideoProcessor.js +90 -41
- package/dist/lib/providers/anthropic.js +38 -6
- package/dist/lib/server/routes/claudeProxyRoutes.js +187 -13
- package/dist/lib/telemetry/telemetryService.d.ts +1 -1
- package/dist/lib/telemetry/telemetryService.js +27 -13
- package/dist/models/anthropicModels.d.ts +3 -1
- package/dist/models/anthropicModels.js +37 -1
- package/dist/processors/media/VideoProcessor.d.ts +8 -2
- package/dist/processors/media/VideoProcessor.js +90 -41
- package/dist/providers/anthropic.js +38 -6
- package/dist/server/routes/claudeProxyRoutes.js +187 -13
- package/dist/telemetry/telemetryService.d.ts +1 -1
- package/dist/telemetry/telemetryService.js +27 -13
- package/package.json +7 -7
- package/dist/processors/media/ffprobe-static.d.ts +0 -4
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { context, metrics, trace, } from "@opentelemetry/api";
|
|
2
|
+
import { BasicTracerProvider, BatchSpanProcessor, } from "@opentelemetry/sdk-trace-base";
|
|
3
|
+
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
|
|
4
4
|
import { resourceFromAttributes } from "@opentelemetry/resources";
|
|
5
5
|
import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION, } from "@opentelemetry/semantic-conventions";
|
|
6
6
|
import { logger } from "../utils/logger.js";
|
|
7
7
|
export class TelemetryService {
|
|
8
8
|
static instance;
|
|
9
|
-
|
|
9
|
+
tracerProvider;
|
|
10
10
|
enabled = false;
|
|
11
11
|
initialized = false;
|
|
12
12
|
meter;
|
|
@@ -52,11 +52,16 @@ export class TelemetryService {
|
|
|
52
52
|
[ATTR_SERVICE_NAME]: process.env.OTEL_SERVICE_NAME || "neurolink-ai",
|
|
53
53
|
[ATTR_SERVICE_VERSION]: process.env.OTEL_SERVICE_VERSION || "3.0.1",
|
|
54
54
|
});
|
|
55
|
-
|
|
55
|
+
const exporter = new OTLPTraceExporter({
|
|
56
|
+
url: process.env.OTEL_EXPORTER_OTLP_ENDPOINT
|
|
57
|
+
? `${process.env.OTEL_EXPORTER_OTLP_ENDPOINT}/v1/traces`
|
|
58
|
+
: undefined,
|
|
59
|
+
});
|
|
60
|
+
this.tracerProvider = new BasicTracerProvider({
|
|
56
61
|
resource,
|
|
57
|
-
|
|
58
|
-
instrumentations: [getNodeAutoInstrumentations()],
|
|
62
|
+
spanProcessors: [new BatchSpanProcessor(exporter)],
|
|
59
63
|
});
|
|
64
|
+
trace.setGlobalTracerProvider(this.tracerProvider);
|
|
60
65
|
this.meter = metrics.getMeter("neurolink-ai");
|
|
61
66
|
this.tracer = trace.getTracer("neurolink-ai");
|
|
62
67
|
this.initializeMetrics();
|
|
@@ -101,12 +106,21 @@ export class TelemetryService {
|
|
|
101
106
|
return;
|
|
102
107
|
}
|
|
103
108
|
try {
|
|
104
|
-
|
|
109
|
+
// Register AsyncLocalStorage context manager for proper parent-child
|
|
110
|
+
// span relationships across async boundaries (required for startActiveSpan)
|
|
111
|
+
try {
|
|
112
|
+
const { AsyncLocalStorageContextManager } = await import("@opentelemetry/context-async-hooks");
|
|
113
|
+
context.setGlobalContextManager(new AsyncLocalStorageContextManager().enable());
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
// context-async-hooks not installed — context propagation
|
|
117
|
+
// will use the default (noop) manager
|
|
118
|
+
}
|
|
105
119
|
this.initialized = true;
|
|
106
|
-
logger.debug("[Telemetry]
|
|
120
|
+
logger.debug("[Telemetry] Tracer provider started successfully");
|
|
107
121
|
}
|
|
108
122
|
catch (error) {
|
|
109
|
-
logger.error("[Telemetry] Failed to start
|
|
123
|
+
logger.error("[Telemetry] Failed to start:", error);
|
|
110
124
|
this.enabled = false;
|
|
111
125
|
this.initialized = false;
|
|
112
126
|
}
|
|
@@ -294,11 +308,11 @@ export class TelemetryService {
|
|
|
294
308
|
}
|
|
295
309
|
// Cleanup
|
|
296
310
|
async shutdown() {
|
|
297
|
-
if (this.enabled && this.
|
|
311
|
+
if (this.enabled && this.tracerProvider) {
|
|
298
312
|
try {
|
|
299
|
-
await this.
|
|
313
|
+
await this.tracerProvider.shutdown();
|
|
300
314
|
this.initialized = false;
|
|
301
|
-
logger.debug("[Telemetry]
|
|
315
|
+
logger.debug("[Telemetry] Tracer provider shutdown completed");
|
|
302
316
|
}
|
|
303
317
|
catch (error) {
|
|
304
318
|
logger.error("[Telemetry] Error during shutdown:", error);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@juspay/neurolink",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.39.0",
|
|
4
4
|
"description": "Universal AI Development Platform with working MCP integration, multi-provider support, and professional CLI. Built-in tools operational, 58+ external MCP servers discoverable. Connect to filesystem, GitHub, database operations, and more. Build, test, and deploy AI applications with 13 providers: OpenAI, Anthropic, Google AI, AWS Bedrock, Azure, Hugging Face, Ollama, and Mistral AI.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Juspay Technologies",
|
|
@@ -31,6 +31,8 @@
|
|
|
31
31
|
"build:browser": "node scripts/build-browser.mjs",
|
|
32
32
|
"build:browser:dev": "node scripts/build-browser.mjs --dev",
|
|
33
33
|
"build:cli": "echo 'Building CLI...' && svelte-kit sync && tsc --project tsconfig.cli.json",
|
|
34
|
+
"build:cli:bundle": "node scripts/bundle-cli.mjs",
|
|
35
|
+
"build:cli:bundle:minify": "node scripts/bundle-cli.mjs --minify",
|
|
34
36
|
"build:action": "ncc build src/action/index.ts -o action-dist --source-map",
|
|
35
37
|
"build:cli:link": "pnpm run build:cli && pnpm link --global",
|
|
36
38
|
"cli": "node dist/cli/index.js",
|
|
@@ -202,11 +204,11 @@
|
|
|
202
204
|
"@langfuse/otel": "^5.0.1",
|
|
203
205
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
204
206
|
"@openrouter/ai-sdk-provider": "^2.2.3",
|
|
205
|
-
"@opentelemetry/
|
|
207
|
+
"@opentelemetry/context-async-hooks": "^2.6.1",
|
|
206
208
|
"@opentelemetry/core": "^2.6.0",
|
|
207
209
|
"@opentelemetry/exporter-trace-otlp-http": "^0.213.0",
|
|
208
210
|
"@opentelemetry/resources": "^2.6.0",
|
|
209
|
-
"@opentelemetry/sdk-
|
|
211
|
+
"@opentelemetry/sdk-trace-base": "^2.6.0",
|
|
210
212
|
"@opentelemetry/semantic-conventions": "^1.40.0",
|
|
211
213
|
"adm-zip": "^0.5.16",
|
|
212
214
|
"ai": "^6.0.134",
|
|
@@ -222,6 +224,7 @@
|
|
|
222
224
|
"json-schema-to-zod": "^2.7.0",
|
|
223
225
|
"mammoth": "^1.11.0",
|
|
224
226
|
"mathjs": "^15.1.1",
|
|
227
|
+
"mediabunny": "^1.40.1",
|
|
225
228
|
"minisearch": "^7.2.0",
|
|
226
229
|
"music-metadata": "^11.11.2",
|
|
227
230
|
"nanoid": "^5.1.5",
|
|
@@ -244,7 +247,6 @@
|
|
|
244
247
|
},
|
|
245
248
|
"peerDependencies": {
|
|
246
249
|
"@opentelemetry/api": "^1.9.0",
|
|
247
|
-
"@opentelemetry/sdk-trace-base": "^2.0.0",
|
|
248
250
|
"@opentelemetry/sdk-trace-node": "^2.0.0",
|
|
249
251
|
"react": ">=18.0.0",
|
|
250
252
|
"react-dom": ">=18.0.0"
|
|
@@ -269,7 +271,6 @@
|
|
|
269
271
|
"express-rate-limit": "^8.2.1",
|
|
270
272
|
"fastify": "^5.7.2",
|
|
271
273
|
"ffmpeg-static": "^5.3.0",
|
|
272
|
-
"ffprobe-static": "^3.1.0",
|
|
273
274
|
"koa": "^3.1.1",
|
|
274
275
|
"koa-bodyparser": "^4.4.1",
|
|
275
276
|
"sharp": "^0.34.5"
|
|
@@ -385,8 +386,7 @@
|
|
|
385
386
|
"sqlite3",
|
|
386
387
|
"canvas",
|
|
387
388
|
"ffmpeg-static",
|
|
388
|
-
"sharp"
|
|
389
|
-
"ffprobe-static"
|
|
389
|
+
"sharp"
|
|
390
390
|
],
|
|
391
391
|
"overrides": {
|
|
392
392
|
"esbuild@<=0.24.2": ">=0.25.0",
|