@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
|
@@ -3329,8 +3329,18 @@ function cacheResult(credentials, result, ttlSeconds) {
|
|
|
3329
3329
|
expiresAt: Date.now() + ttlSeconds * 1e3
|
|
3330
3330
|
});
|
|
3331
3331
|
}
|
|
3332
|
-
function createGuidanceResponse(config, reason) {
|
|
3333
|
-
const
|
|
3332
|
+
function createGuidanceResponse(config, reason, options = {}) {
|
|
3333
|
+
const source = options.source ?? "no_credentials";
|
|
3334
|
+
const isApiError = source === "api_error";
|
|
3335
|
+
const guidance = isApiError ? {
|
|
3336
|
+
message: "Verification is temporarily unavailable. Retry with exponential backoff; if the issue persists, contact support with the correlationId.",
|
|
3337
|
+
registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/register`,
|
|
3338
|
+
documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
|
|
3339
|
+
steps: [
|
|
3340
|
+
"Retry the request with exponential backoff",
|
|
3341
|
+
"If failures persist, share the correlationId with support"
|
|
3342
|
+
]
|
|
3343
|
+
} : {
|
|
3334
3344
|
message: "This service verifies AI agents before granting access. Please register your agent with AstraSync.",
|
|
3335
3345
|
registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/register`,
|
|
3336
3346
|
documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
|
|
@@ -3351,6 +3361,18 @@ function createGuidanceResponse(config, reason) {
|
|
|
3351
3361
|
accessLevel: "none",
|
|
3352
3362
|
guidance,
|
|
3353
3363
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
3364
|
+
// Round-10 (#47, O5): on API-error fallback, surface a typed failure so
|
|
3365
|
+
// partners (and their custom onDenied handlers) can branch on
|
|
3366
|
+
// dimension. Without this, the synthesised stub was indistinguishable
|
|
3367
|
+
// from a real policy deny.
|
|
3368
|
+
failures: isApiError ? [
|
|
3369
|
+
{
|
|
3370
|
+
dimension: "verify_access.api_error",
|
|
3371
|
+
message: reason ?? "Verification temporarily unavailable",
|
|
3372
|
+
guidance: guidance.message
|
|
3373
|
+
}
|
|
3374
|
+
] : void 0,
|
|
3375
|
+
correlationId: options.correlationId,
|
|
3354
3376
|
verifiedAt: /* @__PURE__ */ new Date()
|
|
3355
3377
|
};
|
|
3356
3378
|
}
|
|
@@ -3425,7 +3447,8 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
3425
3447
|
if (!response.ok) {
|
|
3426
3448
|
return {
|
|
3427
3449
|
success: false,
|
|
3428
|
-
error: data.message || data.error || `API returned ${response.status}
|
|
3450
|
+
error: data.message || data.error || `API returned ${response.status}`,
|
|
3451
|
+
correlationId: typeof data?.correlationId === "string" ? data.correlationId : void 0
|
|
3429
3452
|
};
|
|
3430
3453
|
}
|
|
3431
3454
|
return data;
|
|
@@ -3469,7 +3492,10 @@ async function verify(config, request) {
|
|
|
3469
3492
|
}
|
|
3470
3493
|
const apiResponse = await callVerifyAccessAPI(mergedConfig, enrichedRequest);
|
|
3471
3494
|
if (!apiResponse.success) {
|
|
3472
|
-
return createGuidanceResponse(mergedConfig, apiResponse.error
|
|
3495
|
+
return createGuidanceResponse(mergedConfig, apiResponse.error, {
|
|
3496
|
+
source: "api_error",
|
|
3497
|
+
correlationId: apiResponse.correlationId
|
|
3498
|
+
});
|
|
3473
3499
|
}
|
|
3474
3500
|
if (!apiResponse.access?.allowed) {
|
|
3475
3501
|
const aggregatedFailures = apiResponse.access?.failures;
|