@astrasyncai/verification-gateway 2.3.7 → 2.3.9
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/README.md +93 -10
- package/dist/adapter-interface/interface.d.mts +2 -2
- package/dist/adapter-interface/interface.d.ts +2 -2
- package/dist/adapters/express.d.mts +2 -2
- package/dist/adapters/express.d.ts +2 -2
- package/dist/adapters/express.js +81 -7
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/express.mjs +81 -7
- package/dist/adapters/express.mjs.map +1 -1
- package/dist/adapters/mcp.d.mts +1 -1
- package/dist/adapters/mcp.d.ts +1 -1
- package/dist/adapters/mcp.js +84 -12
- package/dist/adapters/mcp.js.map +1 -1
- package/dist/adapters/mcp.mjs +84 -12
- package/dist/adapters/mcp.mjs.map +1 -1
- package/dist/adapters/nextjs.d.mts +2 -2
- package/dist/adapters/nextjs.d.ts +2 -2
- package/dist/adapters/nextjs.js +40 -6
- package/dist/adapters/nextjs.js.map +1 -1
- package/dist/adapters/nextjs.mjs +40 -6
- package/dist/adapters/nextjs.mjs.map +1 -1
- package/dist/adapters/sdk.d.mts +2 -2
- package/dist/adapters/sdk.d.ts +2 -2
- package/dist/adapters/sdk.js +40 -6
- package/dist/adapters/sdk.js.map +1 -1
- package/dist/adapters/sdk.mjs +40 -6
- package/dist/adapters/sdk.mjs.map +1 -1
- package/dist/agent/index.d.mts +2 -2
- package/dist/agent/index.d.ts +2 -2
- package/dist/browser/background.js +39 -5
- package/dist/browser/background.js.map +1 -1
- package/dist/browser/background.mjs +39 -5
- package/dist/browser/background.mjs.map +1 -1
- package/dist/browser/browser-adapter.d.mts +2 -2
- package/dist/browser/browser-adapter.d.ts +2 -2
- package/dist/cli/index.d.mts +2 -2
- package/dist/cli/index.d.ts +2 -2
- package/dist/cursor/cursor-adapter.d.mts +2 -2
- package/dist/cursor/cursor-adapter.d.ts +2 -2
- package/dist/cursor/extension.d.mts +2 -2
- package/dist/cursor/extension.d.ts +2 -2
- package/dist/cursor/extension.js +39 -5
- package/dist/cursor/extension.js.map +1 -1
- package/dist/cursor/extension.mjs +39 -5
- package/dist/cursor/extension.mjs.map +1 -1
- package/dist/{express-D9oRsseg.d.mts → express-BiB51d5t.d.mts} +1 -1
- package/dist/{express-DMSIl20m.d.ts → express-D6tEDU08.d.ts} +1 -1
- package/dist/gateway/gateway.d.mts +2 -2
- package/dist/gateway/gateway.d.ts +2 -2
- package/dist/gateway/gateway.js +39 -5
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/gateway.mjs +39 -5
- package/dist/gateway/gateway.mjs.map +1 -1
- package/dist/git-trigger/git-hooks.d.mts +2 -2
- package/dist/git-trigger/git-hooks.d.ts +2 -2
- package/dist/{index-EwUWXC5T.d.ts → index-8DFMpITk.d.ts} +1 -1
- package/dist/{index-YNPs800Z.d.mts → index-B--6fiDp.d.mts} +1 -1
- package/dist/{index-Bn_7eGjb.d.mts → index-CAykfMWK.d.mts} +1 -1
- package/dist/{index-BtU9yFda.d.ts → index-Yt02MRyu.d.ts} +1 -1
- package/dist/index.d.mts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +87 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +87 -13
- package/dist/index.mjs.map +1 -1
- package/dist/local-evaluator/evaluator.d.mts +2 -2
- package/dist/local-evaluator/evaluator.d.ts +2 -2
- package/dist/{nextjs-B5ZBpHra.d.ts → nextjs-CK5F_tVZ.d.ts} +1 -1
- package/dist/{nextjs-BLtjRbc-.d.mts → nextjs-CpxqfQqD.d.mts} +1 -1
- package/dist/{sdk-BhkxvqnK.d.mts → sdk-BMvauMgP.d.ts} +9 -2
- package/dist/{sdk-YmE3RG8n.d.ts → sdk-yJjO7yzn.d.mts} +9 -2
- package/dist/transport/index.d.mts +2 -2
- package/dist/transport/index.d.ts +2 -2
- package/dist/{types-DxY5zt4z.d.mts → types-CKafuHDn.d.mts} +1 -1
- package/dist/{types-Bxqj1sKY.d.mts → types-UYT4GdPW.d.mts} +42 -4
- package/dist/{types-Bxqj1sKY.d.ts → types-UYT4GdPW.d.ts} +42 -4
- package/dist/{types-BecRpozv.d.ts → types-ppkhdldJ.d.ts} +1 -1
- package/dist/ui/index.d.mts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.js +3 -3
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +3 -3
- package/dist/ui/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -3258,7 +3258,7 @@ function verifyLocal(evaluator, context) {
|
|
|
3258
3258
|
// src/access-levels.ts
|
|
3259
3259
|
var ACCESS_LEVEL_HIERARCHY = {
|
|
3260
3260
|
none: 0,
|
|
3261
|
-
|
|
3261
|
+
restricted: 1,
|
|
3262
3262
|
"read-only": 2,
|
|
3263
3263
|
standard: 3,
|
|
3264
3264
|
full: 4,
|
|
@@ -3274,7 +3274,11 @@ function getTrustLevel(score) {
|
|
|
3274
3274
|
// src/verify.ts
|
|
3275
3275
|
var DEFAULT_CONFIG = {
|
|
3276
3276
|
apiBaseUrl: "https://astrasync.ai/api",
|
|
3277
|
-
|
|
3277
|
+
// v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
|
|
3278
|
+
// access). Pre-rename this defaulted to `'guidance'`, which combined with
|
|
3279
|
+
// a route gated at `'guidance'` to silently let unverified traffic
|
|
3280
|
+
// through (`hasMinimumAccess('guidance', 'guidance') === true`).
|
|
3281
|
+
defaultAccessLevel: "none",
|
|
3278
3282
|
// minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
|
|
3279
3283
|
cacheTtl: 300,
|
|
3280
3284
|
// 5 minutes
|
|
@@ -3339,7 +3343,12 @@ function createGuidanceResponse(config, reason) {
|
|
|
3339
3343
|
};
|
|
3340
3344
|
return {
|
|
3341
3345
|
verified: false,
|
|
3342
|
-
|
|
3346
|
+
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
3347
|
+
// Adapters additionally short-circuit on `verified === false` before
|
|
3348
|
+
// the gate check, but the access level still has to be honest at the
|
|
3349
|
+
// data layer so downstream consumers (SDK adapters in other languages,
|
|
3350
|
+
// custom integrations) inherit the correct semantics.
|
|
3351
|
+
accessLevel: "none",
|
|
3343
3352
|
guidance,
|
|
3344
3353
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
3345
3354
|
verifiedAt: /* @__PURE__ */ new Date()
|
|
@@ -3396,6 +3405,23 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
3396
3405
|
body: JSON.stringify(body)
|
|
3397
3406
|
});
|
|
3398
3407
|
const data = await response.json();
|
|
3408
|
+
if (response.status === 410) {
|
|
3409
|
+
return {
|
|
3410
|
+
success: true,
|
|
3411
|
+
access: {
|
|
3412
|
+
allowed: false,
|
|
3413
|
+
accessLevel: "none",
|
|
3414
|
+
reason: "endpoint_deactivated",
|
|
3415
|
+
failures: [
|
|
3416
|
+
{
|
|
3417
|
+
dimension: "endpoint.deactivated",
|
|
3418
|
+
message: typeof data?.message === "string" ? data.message : "Endpoint has been deactivated",
|
|
3419
|
+
guidance: typeof data?.guidance === "string" ? data.guidance : "Reactivate via POST /api/endpoints/{id}/reactivate, or update the URL on the calling agent."
|
|
3420
|
+
}
|
|
3421
|
+
]
|
|
3422
|
+
}
|
|
3423
|
+
};
|
|
3424
|
+
}
|
|
3399
3425
|
if (!response.ok) {
|
|
3400
3426
|
return {
|
|
3401
3427
|
success: false,
|
|
@@ -3449,7 +3475,14 @@ async function verify(config, request) {
|
|
|
3449
3475
|
const aggregatedFailures = apiResponse.access?.failures;
|
|
3450
3476
|
const result2 = {
|
|
3451
3477
|
verified: false,
|
|
3452
|
-
|
|
3478
|
+
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
3479
|
+
// Pre-rename this hardcoded `'guidance'`, which conflated with the
|
|
3480
|
+
// colocated `guidance: {...}` help-payload object below and let
|
|
3481
|
+
// denied requests pass any route gated at `'guidance'` because
|
|
3482
|
+
// `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
|
|
3483
|
+
// ALSO short-circuit on `verified === false` before the gate check —
|
|
3484
|
+
// belt-and-braces.
|
|
3485
|
+
accessLevel: "none",
|
|
3453
3486
|
denialReasons: aggregatedFailures && aggregatedFailures.length > 0 ? aggregatedFailures.map((f) => f.message) : apiResponse.access?.reason ? [apiResponse.access.reason] : ["Access denied"],
|
|
3454
3487
|
failures: aggregatedFailures,
|
|
3455
3488
|
requiresStepUp: apiResponse.access?.requiresStepUp,
|
|
@@ -3505,7 +3538,8 @@ async function verify(config, request) {
|
|
|
3505
3538
|
runtimeChallenge: apiResponse.runtimeChallenge,
|
|
3506
3539
|
tokenGuidance: apiResponse.tokenGuidance,
|
|
3507
3540
|
recommendation: apiResponse.recommendation,
|
|
3508
|
-
recommendationReasons: apiResponse.recommendationReasons
|
|
3541
|
+
recommendationReasons: apiResponse.recommendationReasons,
|
|
3542
|
+
warningHeader: apiResponse.warningHeader
|
|
3509
3543
|
};
|
|
3510
3544
|
if (result.recommendation === "deny") {
|
|
3511
3545
|
result.verified = false;
|