@juspay/neurolink
Version:
The pipe layer of an AI nervous system: one interface connecting provider neurons to your application, across three inference types — generate, stream and decide. `decide` returns typed, calibrated judgements from a non-generative model (~400ms, ~$0.00002
35 lines (34 loc) • 1.3 kB
JavaScript
import { parentPort } from "node:worker_threads";
import { performance } from "node:perf_hooks";
import { processProxyBodyCapture } from "./bodyCaptureProcessing.js";
// Sequential processing bounds serialization/compression memory. The parent
// bounds both the queued record count and clone bytes, including in-flight work.
let tail = Promise.resolve();
parentPort?.on("message", (message) => {
tail = tail.then(async () => {
const started = performance.now();
const queueWaitMs = Math.max(0, Date.now() - message.queuedAt);
try {
const result = await processProxyBodyCapture(message.entry, message.logDir);
parentPort?.postMessage({
id: message.id,
result: {
...result,
queueWaitMs,
processingMs: performance.now() - started,
},
});
}
catch {
parentPort?.postMessage({
id: message.id,
result: {
error: "body_capture_processing_failed",
stored: { bodyWriteFailed: true },
queueWaitMs,
processingMs: performance.now() - started,
},
});
}
});
});