@juspay/neurolink 13.4.9 → 13.5.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 +3 -3
- package/README.md +14 -4
- package/dist/browser/neurolink.min.js +419 -419
- package/dist/cli/commands/decide.js +25 -5
- package/dist/factories/providerDescriptors.d.ts +4 -3
- package/dist/factories/providerDescriptors.js +6 -4
- package/dist/hitl/hitlManager.d.ts +1 -0
- package/dist/hitl/hitlManager.js +2 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/neurolink.d.ts +4 -2
- package/dist/neurolink.js +36 -10
- 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/systemOneDecision.d.ts +30 -7
- package/dist/providers/systemOneDecision.js +71 -14
- package/dist/types/cli.d.ts +2 -0
- package/dist/types/decision.d.ts +117 -10
- package/dist/types/providerCatalog.d.ts +12 -1
- package/dist/types/providers.d.ts +2 -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/docs-site/static/search-index.json +24 -21
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
## [13.
|
|
1
|
+
## [13.5.0](https://github.com/juspay/neurolink/compare/v13.4.10...v13.5.0) (2026-10-19)
|
|
2
2
|
|
|
3
|
-
###
|
|
3
|
+
### Features
|
|
4
4
|
|
|
5
|
-
- **(
|
|
5
|
+
- **(xor):** value questions, audio and measured limits ([8abae3d](https://github.com/juspay/neurolink/commit/8abae3d69de5708fc7bd0f2213d83d531ebd84e1))
|
|
6
6
|
|
|
7
7
|
## [11.2.3](https://github.com/juspay/neurolink/compare/v11.2.2...v11.2.3) (2026-08-19)
|
|
8
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
|
|
@@ -491,7 +492,11 @@ NeuroLink includes a **HITL (Human-in-the-Loop) system** that pauses a tool call
|
|
|
491
492
|
| **Audit Logging** | `auditLogging: true` writes each request and decision, with the full tool arguments, to the NeuroLink logger; it is a log, not a compliance control | Debugging and your own review records |
|
|
492
493
|
|
|
493
494
|
```typescript
|
|
494
|
-
import {
|
|
495
|
+
import {
|
|
496
|
+
NeuroLink,
|
|
497
|
+
type ConfirmationRequestEvent,
|
|
498
|
+
type ConfirmationResponseEvent,
|
|
499
|
+
} from "@juspay/neurolink";
|
|
495
500
|
|
|
496
501
|
const neurolink = new NeuroLink({
|
|
497
502
|
hitl: {
|
|
@@ -505,6 +510,7 @@ const neurolink = new NeuroLink({
|
|
|
505
510
|
// Approval is event-based: NeuroLink emits a request, your app answers it
|
|
506
511
|
const emitter = neurolink.getEventEmitter();
|
|
507
512
|
emitter.on("hitl:confirmation-request", async (event) => {
|
|
513
|
+
const receivedAt = Date.now();
|
|
508
514
|
// The emitter types listener arguments as unknown, so narrow the event
|
|
509
515
|
const { payload } = event as ConfirmationRequestEvent;
|
|
510
516
|
const { confirmationId, toolName, arguments: args } = payload;
|
|
@@ -517,8 +523,12 @@ emitter.on("hitl:confirmation-request", async (event) => {
|
|
|
517
523
|
confirmationId,
|
|
518
524
|
approved,
|
|
519
525
|
reason: approved ? undefined : "Rejected by reviewer",
|
|
526
|
+
metadata: {
|
|
527
|
+
timestamp: new Date().toISOString(),
|
|
528
|
+
responseTime: Date.now() - receivedAt, // ms since the request arrived
|
|
529
|
+
},
|
|
520
530
|
},
|
|
521
|
-
});
|
|
531
|
+
} satisfies ConfirmationResponseEvent);
|
|
522
532
|
});
|
|
523
533
|
|
|
524
534
|
// A tool call to a matching tool pauses until your handler answers
|