@astrasyncai/verification-gateway 2.4.0 → 2.4.2
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 +137 -22
- 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 +37 -7
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/express.mjs +37 -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 +37 -7
- package/dist/adapters/mcp.js.map +1 -1
- package/dist/adapters/mcp.mjs +37 -7
- 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 +30 -4
- package/dist/adapters/nextjs.js.map +1 -1
- package/dist/adapters/nextjs.mjs +30 -4
- 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 +30 -4
- package/dist/adapters/sdk.js.map +1 -1
- package/dist/adapters/sdk.mjs +30 -4
- 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/bin/astrasync.js +163 -4
- package/dist/browser/background.js +30 -4
- package/dist/browser/background.js.map +1 -1
- package/dist/browser/background.mjs +30 -4
- 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 +30 -4
- package/dist/cursor/extension.js.map +1 -1
- package/dist/cursor/extension.mjs +30 -4
- package/dist/cursor/extension.mjs.map +1 -1
- package/dist/{express-4Vau6x6X.d.mts → express-DneHiMhu.d.mts} +1 -1
- package/dist/{express-Nq-wWICa.d.ts → express-DsiaQRFt.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 +30 -4
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/gateway.mjs +30 -4
- 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-DkyPV14Y.d.mts → index-C9yWlQ2Y.d.mts} +1 -1
- package/dist/{index-DiToN8gh.d.mts → index-DAGm-Sgf.d.mts} +1 -1
- package/dist/{index-B-EovXnY.d.ts → index-Dd4alF0l.d.ts} +1 -1
- package/dist/{index-CxwCN7AC.d.ts → index-NZiKvrtE.d.ts} +1 -1
- package/dist/index.d.mts +7 -7
- package/dist/index.d.ts +7 -7
- package/dist/index.js +37 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +37 -7
- 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-DO_4crcp.d.ts → nextjs-B4WmoiVm.d.ts} +1 -1
- package/dist/{nextjs-BTR7Oix-.d.mts → nextjs-vUuVCaBP.d.mts} +1 -1
- package/dist/registration/index.d.mts +174 -7
- package/dist/registration/index.d.ts +174 -7
- package/dist/registration/index.js +171 -6
- package/dist/registration/index.js.map +1 -1
- package/dist/registration/index.mjs +167 -5
- package/dist/registration/index.mjs.map +1 -1
- package/dist/{sdk-TnHXD-Oh.d.ts → sdk-BvWp4q2q.d.ts} +1 -1
- package/dist/{sdk-DSLCyXIX.d.mts → sdk-Cixo6pTV.d.mts} +1 -1
- package/dist/transport/index.d.mts +2 -2
- package/dist/transport/index.d.ts +2 -2
- package/dist/{types-pU2O0BFq.d.mts → types-C_e1IZdU.d.mts} +1 -1
- package/dist/{types-BVp22KkN.d.mts → types-DLai3jly.d.mts} +16 -13
- package/dist/{types-BVp22KkN.d.ts → types-DLai3jly.d.ts} +16 -13
- package/dist/{types-DVCWReEN.d.ts → types-IUzu-A4u.d.ts} +1 -1
- package/dist/ui/index.d.mts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/package.json +1 -1
|
@@ -3350,8 +3350,18 @@ function cacheResult(credentials, result, ttlSeconds) {
|
|
|
3350
3350
|
expiresAt: Date.now() + ttlSeconds * 1e3
|
|
3351
3351
|
});
|
|
3352
3352
|
}
|
|
3353
|
-
function createGuidanceResponse(config, reason) {
|
|
3354
|
-
const
|
|
3353
|
+
function createGuidanceResponse(config, reason, options = {}) {
|
|
3354
|
+
const source = options.source ?? "no_credentials";
|
|
3355
|
+
const isApiError = source === "api_error";
|
|
3356
|
+
const guidance = isApiError ? {
|
|
3357
|
+
message: "Verification is temporarily unavailable. Retry with exponential backoff; if the issue persists, contact support with the correlationId.",
|
|
3358
|
+
registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/register`,
|
|
3359
|
+
documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
|
|
3360
|
+
steps: [
|
|
3361
|
+
"Retry the request with exponential backoff",
|
|
3362
|
+
"If failures persist, share the correlationId with support"
|
|
3363
|
+
]
|
|
3364
|
+
} : {
|
|
3355
3365
|
message: "This service verifies AI agents before granting access. Please register your agent with AstraSync.",
|
|
3356
3366
|
registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/register`,
|
|
3357
3367
|
documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
|
|
@@ -3372,6 +3382,18 @@ function createGuidanceResponse(config, reason) {
|
|
|
3372
3382
|
accessLevel: "none",
|
|
3373
3383
|
guidance,
|
|
3374
3384
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
3385
|
+
// Round-10 (#47, O5): on API-error fallback, surface a typed failure so
|
|
3386
|
+
// partners (and their custom onDenied handlers) can branch on
|
|
3387
|
+
// dimension. Without this, the synthesised stub was indistinguishable
|
|
3388
|
+
// from a real policy deny.
|
|
3389
|
+
failures: isApiError ? [
|
|
3390
|
+
{
|
|
3391
|
+
dimension: "verify_access.api_error",
|
|
3392
|
+
message: reason ?? "Verification temporarily unavailable",
|
|
3393
|
+
guidance: guidance.message
|
|
3394
|
+
}
|
|
3395
|
+
] : void 0,
|
|
3396
|
+
correlationId: options.correlationId,
|
|
3375
3397
|
verifiedAt: /* @__PURE__ */ new Date()
|
|
3376
3398
|
};
|
|
3377
3399
|
}
|
|
@@ -3446,7 +3468,8 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
3446
3468
|
if (!response.ok) {
|
|
3447
3469
|
return {
|
|
3448
3470
|
success: false,
|
|
3449
|
-
error: data.message || data.error || `API returned ${response.status}
|
|
3471
|
+
error: data.message || data.error || `API returned ${response.status}`,
|
|
3472
|
+
correlationId: typeof data?.correlationId === "string" ? data.correlationId : void 0
|
|
3450
3473
|
};
|
|
3451
3474
|
}
|
|
3452
3475
|
return data;
|
|
@@ -3490,7 +3513,10 @@ async function verify(config, request) {
|
|
|
3490
3513
|
}
|
|
3491
3514
|
const apiResponse = await callVerifyAccessAPI(mergedConfig, enrichedRequest);
|
|
3492
3515
|
if (!apiResponse.success) {
|
|
3493
|
-
return createGuidanceResponse(mergedConfig, apiResponse.error
|
|
3516
|
+
return createGuidanceResponse(mergedConfig, apiResponse.error, {
|
|
3517
|
+
source: "api_error",
|
|
3518
|
+
correlationId: apiResponse.correlationId
|
|
3519
|
+
});
|
|
3494
3520
|
}
|
|
3495
3521
|
if (!apiResponse.access?.allowed) {
|
|
3496
3522
|
const aggregatedFailures = apiResponse.access?.failures;
|