@astrasyncai/verification-gateway 2.4.14 → 2.5.1

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.
Files changed (45) hide show
  1. package/dist/adapters/express.js +107 -15
  2. package/dist/adapters/express.js.map +1 -1
  3. package/dist/adapters/express.mjs +107 -15
  4. package/dist/adapters/express.mjs.map +1 -1
  5. package/dist/adapters/mcp.d.mts +75 -53
  6. package/dist/adapters/mcp.d.ts +75 -53
  7. package/dist/adapters/mcp.js +128 -23
  8. package/dist/adapters/mcp.js.map +1 -1
  9. package/dist/adapters/mcp.mjs +128 -23
  10. package/dist/adapters/mcp.mjs.map +1 -1
  11. package/dist/adapters/nextjs.js +24 -14
  12. package/dist/adapters/nextjs.js.map +1 -1
  13. package/dist/adapters/nextjs.mjs +24 -14
  14. package/dist/adapters/nextjs.mjs.map +1 -1
  15. package/dist/adapters/sdk.js +23 -13
  16. package/dist/adapters/sdk.js.map +1 -1
  17. package/dist/adapters/sdk.mjs +23 -13
  18. package/dist/adapters/sdk.mjs.map +1 -1
  19. package/dist/browser/background.js +23 -13
  20. package/dist/browser/background.js.map +1 -1
  21. package/dist/browser/background.mjs +23 -13
  22. package/dist/browser/background.mjs.map +1 -1
  23. package/dist/cursor/extension.js +23 -13
  24. package/dist/cursor/extension.js.map +1 -1
  25. package/dist/cursor/extension.mjs +23 -13
  26. package/dist/cursor/extension.mjs.map +1 -1
  27. package/dist/gateway/gateway.js +23 -13
  28. package/dist/gateway/gateway.js.map +1 -1
  29. package/dist/gateway/gateway.mjs +23 -13
  30. package/dist/gateway/gateway.mjs.map +1 -1
  31. package/dist/index.d.mts +32 -2
  32. package/dist/index.d.ts +32 -2
  33. package/dist/index.js +180 -39
  34. package/dist/index.js.map +1 -1
  35. package/dist/index.mjs +177 -39
  36. package/dist/index.mjs.map +1 -1
  37. package/dist/registration/index.js +7 -7
  38. package/dist/registration/index.js.map +1 -1
  39. package/dist/registration/index.mjs +7 -7
  40. package/dist/registration/index.mjs.map +1 -1
  41. package/dist/ui/index.js +2 -2
  42. package/dist/ui/index.js.map +1 -1
  43. package/dist/ui/index.mjs +2 -2
  44. package/dist/ui/index.mjs.map +1 -1
  45. package/package.json +1 -1
@@ -3311,6 +3311,13 @@ function getTrustLevel(score) {
3311
3311
  // src/version.ts
3312
3312
  var SDK_VERSION = "2.4.13";
3313
3313
 
3314
+ // src/well-known.ts
3315
+ var CACHE_TTL_MS = 60 * 60 * 1e3;
3316
+ var cache = /* @__PURE__ */ new Map();
3317
+ function getCachedWellKnownUrls(apiBaseUrl) {
3318
+ return cache.get(apiBaseUrl)?.data;
3319
+ }
3320
+
3314
3321
  // src/verify.ts
3315
3322
  var DEFAULT_CONFIG = {
3316
3323
  apiBaseUrl: "https://astrasync.ai/api",
@@ -3412,21 +3419,22 @@ function cacheResult(request, result, configuredTtl) {
3412
3419
  expiresAt: Date.now() + ttlSeconds * 1e3
3413
3420
  });
3414
3421
  }
3415
- function createGuidanceResponse(config, reason, options = {}) {
3422
+ function createGuidanceResponse(_config, reason, options = {}) {
3416
3423
  const source = options.source ?? "no_credentials";
3417
3424
  const isApiError = source === "api_error";
3425
+ const urls = options.urls;
3418
3426
  const guidance = isApiError ? {
3419
3427
  message: "Verification is temporarily unavailable. Retry with exponential backoff; if the issue persists, contact support with the correlationId.",
3420
- registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/agents/register`,
3421
- documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
3428
+ registrationUrl: urls?.registrationUrl ?? "",
3429
+ documentationUrl: urls?.documentationUrl ?? "",
3422
3430
  steps: [
3423
3431
  "Retry the request with exponential backoff",
3424
3432
  "If failures persist, share the correlationId with support"
3425
3433
  ]
3426
3434
  } : {
3427
3435
  message: "This service verifies AI agents before granting access. Please register your agent with AstraSync.",
3428
- registrationUrl: `${config.apiBaseUrl.replace("/api", "")}/agents/register`,
3429
- documentationUrl: `${config.apiBaseUrl.replace("/api", "")}/docs/agent-access`,
3436
+ registrationUrl: urls?.registrationUrl ?? "",
3437
+ documentationUrl: urls?.documentationUrl ?? "",
3430
3438
  steps: [
3431
3439
  "Register for an AstraSync account",
3432
3440
  "Create and register your agent",
@@ -3468,7 +3476,7 @@ async function callVerifyAccessAPI(config, request) {
3468
3476
  const { credentials, ...requestData } = request;
3469
3477
  const body = {
3470
3478
  ...credentials.astraId && { agentId: credentials.astraId },
3471
- purpose: requestData.purpose || "general"
3479
+ ...requestData.purpose && { purpose: requestData.purpose }
3472
3480
  };
3473
3481
  if (requestData.action) body.action = requestData.action;
3474
3482
  if (requestData.resourceType) body.resourceType = requestData.resourceType;
@@ -3548,6 +3556,7 @@ async function callVerifyAccessAPI(config, request) {
3548
3556
  }
3549
3557
  async function verify(config, request) {
3550
3558
  const mergedConfig = { ...DEFAULT_CONFIG, ...config };
3559
+ const urls = mergedConfig.apiBaseUrl ? getCachedWellKnownUrls(mergedConfig.apiBaseUrl) : void 0;
3551
3560
  if (!initCheckPerformed && !mergedConfig.disableInitChecks && mergedConfig.apiBaseUrl) {
3552
3561
  if (mergedConfig.strictInit) {
3553
3562
  await performInitCheck(mergedConfig.apiBaseUrl, mergedConfig.debug, true);
@@ -3584,7 +3593,8 @@ async function verify(config, request) {
3584
3593
  if (!apiResponse.success) {
3585
3594
  return createGuidanceResponse(mergedConfig, apiResponse.error, {
3586
3595
  source: "api_error",
3587
- correlationId: apiResponse.correlationId
3596
+ correlationId: apiResponse.correlationId,
3597
+ urls
3588
3598
  });
3589
3599
  }
3590
3600
  if (!apiResponse.access?.allowed) {
@@ -3607,8 +3617,8 @@ async function verify(config, request) {
3607
3617
  requiresApproval: apiResponse.access?.requiresApproval,
3608
3618
  guidance: {
3609
3619
  message: apiResponse.access?.reason || "Access denied by PDLSS policy",
3610
- registrationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/agents/register`,
3611
- documentationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/docs/pdlss`
3620
+ registrationUrl: urls?.registrationUrl ?? "",
3621
+ documentationUrl: urls?.documentationUrl ?? ""
3612
3622
  },
3613
3623
  verifiedAt: /* @__PURE__ */ new Date(),
3614
3624
  // Extract sessionId so decisions can be recorded for denials too
@@ -3679,12 +3689,12 @@ async function verify(config, request) {
3679
3689
  ];
3680
3690
  result.guidance = result.runtimeChallenge ? {
3681
3691
  message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
3682
- registrationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/agents/register`,
3683
- documentationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/docs/runtime-challenge`
3692
+ registrationUrl: urls?.registrationUrl ?? "",
3693
+ documentationUrl: urls?.documentationUrl ?? ""
3684
3694
  } : {
3685
3695
  message: result.recommendationReasons?.[0] || "Access denied by AstraSync recommendation",
3686
- registrationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/agents/register`,
3687
- documentationUrl: `${mergedConfig.apiBaseUrl?.replace("/api", "")}/docs/pdlss`
3696
+ registrationUrl: urls?.registrationUrl ?? "",
3697
+ documentationUrl: urls?.documentationUrl ?? ""
3688
3698
  };
3689
3699
  } else if (result.recommendation === "step_up_required") {
3690
3700
  result.requiresStepUp = true;