@astrasyncai/verification-gateway 3.11.1 → 3.12.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.
Files changed (99) hide show
  1. package/dist/adapter-interface/interface.d.mts +2 -2
  2. package/dist/adapter-interface/interface.d.ts +2 -2
  3. package/dist/adapters/express.d.mts +2 -2
  4. package/dist/adapters/express.d.ts +2 -2
  5. package/dist/adapters/express.js +22 -3
  6. package/dist/adapters/express.js.map +1 -1
  7. package/dist/adapters/express.mjs +22 -3
  8. package/dist/adapters/express.mjs.map +1 -1
  9. package/dist/adapters/mcp.d.mts +1 -1
  10. package/dist/adapters/mcp.d.ts +1 -1
  11. package/dist/adapters/mcp.js +22 -3
  12. package/dist/adapters/mcp.js.map +1 -1
  13. package/dist/adapters/mcp.mjs +22 -3
  14. package/dist/adapters/mcp.mjs.map +1 -1
  15. package/dist/adapters/nextjs.d.mts +2 -2
  16. package/dist/adapters/nextjs.d.ts +2 -2
  17. package/dist/adapters/nextjs.js +22 -3
  18. package/dist/adapters/nextjs.js.map +1 -1
  19. package/dist/adapters/nextjs.mjs +22 -3
  20. package/dist/adapters/nextjs.mjs.map +1 -1
  21. package/dist/adapters/sdk.d.mts +2 -2
  22. package/dist/adapters/sdk.d.ts +2 -2
  23. package/dist/adapters/sdk.js +22 -3
  24. package/dist/adapters/sdk.js.map +1 -1
  25. package/dist/adapters/sdk.mjs +22 -3
  26. package/dist/adapters/sdk.mjs.map +1 -1
  27. package/dist/agent/index.d.mts +2 -2
  28. package/dist/agent/index.d.ts +2 -2
  29. package/dist/bin/astrasync-claude-hook.js +22 -3
  30. package/dist/bin/astrasync-codex-hook.js +22 -3
  31. package/dist/bin/astrasync-guard.js +22 -3
  32. package/dist/bin/astrasync.js +23 -3
  33. package/dist/browser/background.js +22 -3
  34. package/dist/browser/background.js.map +1 -1
  35. package/dist/browser/background.mjs +22 -3
  36. package/dist/browser/background.mjs.map +1 -1
  37. package/dist/browser/browser-adapter.d.mts +2 -2
  38. package/dist/browser/browser-adapter.d.ts +2 -2
  39. package/dist/claude-code/claude-code-adapter.d.mts +2 -2
  40. package/dist/claude-code/claude-code-adapter.d.ts +2 -2
  41. package/dist/cli/index.d.mts +2 -2
  42. package/dist/cli/index.d.ts +2 -2
  43. package/dist/codex/index.d.mts +2 -2
  44. package/dist/codex/index.d.ts +2 -2
  45. package/dist/codex/index.js +22 -3
  46. package/dist/codex/index.js.map +1 -1
  47. package/dist/codex/index.mjs +22 -3
  48. package/dist/codex/index.mjs.map +1 -1
  49. package/dist/cursor/cursor-adapter.d.mts +2 -2
  50. package/dist/cursor/cursor-adapter.d.ts +2 -2
  51. package/dist/cursor/extension.d.mts +2 -2
  52. package/dist/cursor/extension.d.ts +2 -2
  53. package/dist/cursor/extension.js +22 -3
  54. package/dist/cursor/extension.js.map +1 -1
  55. package/dist/cursor/extension.mjs +22 -3
  56. package/dist/cursor/extension.mjs.map +1 -1
  57. package/dist/edge-config.d.mts +1 -1
  58. package/dist/edge-config.d.ts +1 -1
  59. package/dist/{express-DCXa1oqj.d.mts → express-B39o89gf.d.mts} +1 -1
  60. package/dist/{express-ClNtDhhc.d.ts → express-BuxKNO_q.d.ts} +1 -1
  61. package/dist/gateway/gateway.d.mts +2 -2
  62. package/dist/gateway/gateway.d.ts +2 -2
  63. package/dist/gateway/gateway.js +22 -3
  64. package/dist/gateway/gateway.js.map +1 -1
  65. package/dist/gateway/gateway.mjs +22 -3
  66. package/dist/gateway/gateway.mjs.map +1 -1
  67. package/dist/git-trigger/git-hooks.d.mts +2 -2
  68. package/dist/git-trigger/git-hooks.d.ts +2 -2
  69. package/dist/{index-CfHurO1P.d.ts → index-BG62SXso.d.ts} +1 -1
  70. package/dist/{index-D2ztkumS.d.ts → index-CLHdqs2M.d.ts} +1 -1
  71. package/dist/{index-Dr_XiN65.d.mts → index-CqydB4ks.d.mts} +1 -1
  72. package/dist/{index-BrNKDmiR.d.mts → index-DME3w3lf.d.mts} +1 -1
  73. package/dist/index.d.mts +9 -9
  74. package/dist/index.d.ts +9 -9
  75. package/dist/index.js +42 -3
  76. package/dist/index.js.map +1 -1
  77. package/dist/index.mjs +41 -3
  78. package/dist/index.mjs.map +1 -1
  79. package/dist/local-evaluator/evaluator.d.mts +2 -2
  80. package/dist/local-evaluator/evaluator.d.ts +2 -2
  81. package/dist/{nextjs-DcQIk6Zj.d.mts → nextjs-D74W7wt-.d.mts} +1 -1
  82. package/dist/{nextjs-CEBVBsdi.d.ts → nextjs-Ddlw_J1J.d.ts} +1 -1
  83. package/dist/{sdk-CZkbSOeO.d.mts → sdk-Bn6bj7kt.d.mts} +1 -1
  84. package/dist/{sdk-H0JCLW2y.d.ts → sdk-CT7gdkfR.d.ts} +1 -1
  85. package/dist/transport/index.d.mts +2 -2
  86. package/dist/transport/index.d.ts +2 -2
  87. package/dist/{types-sy3tq8lp.d.mts → types-BntuzEEn.d.mts} +103 -1
  88. package/dist/{types-DhFPiZ3t.d.ts → types-DHu7m9HI.d.ts} +1 -1
  89. package/dist/{types-cQVCMeNV.d.mts → types-Djw4GLtz.d.mts} +1 -1
  90. package/dist/{types-9tns4wyl.d.ts → types-SDu4Llbe.d.ts} +103 -1
  91. package/dist/ui/index.d.mts +1 -1
  92. package/dist/ui/index.d.ts +1 -1
  93. package/dist/verify.d.mts +13 -2
  94. package/dist/verify.d.ts +13 -2
  95. package/dist/verify.js +42 -3
  96. package/dist/verify.js.map +1 -1
  97. package/dist/verify.mjs +41 -3
  98. package/dist/verify.mjs.map +1 -1
  99. package/package.json +1 -1
@@ -3672,7 +3672,7 @@ function getTrustLevel(score) {
3672
3672
  }
3673
3673
 
3674
3674
  // src/version.ts
3675
- var SDK_VERSION = "3.11.1";
3675
+ var SDK_VERSION = "3.12.0";
3676
3676
 
3677
3677
  // src/well-known.ts
3678
3678
  var CACHE_TTL_MS = 60 * 60 * 1e3;
@@ -3839,6 +3839,7 @@ function createGuidanceResponse(_config, reason, options = {}) {
3839
3839
  }
3840
3840
  ] : void 0,
3841
3841
  correlationId: options.correlationId,
3842
+ attemptId: options.attemptId,
3842
3843
  verifiedAt: /* @__PURE__ */ new Date()
3843
3844
  };
3844
3845
  }
@@ -3868,6 +3869,8 @@ async function callVerifyAccessAPI(config, request) {
3868
3869
  body.runtimeChallengeOptions = requestData.runtimeChallengeOptions;
3869
3870
  if (requestData.invocationProtocol) body.invocationProtocol = requestData.invocationProtocol;
3870
3871
  if (requestData.commerceArtifacts) body.commerceArtifacts = requestData.commerceArtifacts;
3872
+ if (requestData.attemptId) body.attemptId = requestData.attemptId;
3873
+ if (requestData.considerationSet) body.considerationSet = requestData.considerationSet;
3871
3874
  body.sdkVersion = SDK_VERSION;
3872
3875
  if (requestData.callerMetadata || requestData.clientIp || requestData.userAgent) {
3873
3876
  const meta = {
@@ -3895,6 +3898,9 @@ async function callVerifyAccessAPI(config, request) {
3895
3898
  if (response.status === 410) {
3896
3899
  return {
3897
3900
  success: true,
3901
+ // 3.12.0 (Trust Record): keep the server-echoed attempt handle even on
3902
+ // the synthesised 410 deny shape (echoed on every branch).
3903
+ attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
3898
3904
  access: {
3899
3905
  allowed: false,
3900
3906
  accessLevel: "none",
@@ -3913,7 +3919,8 @@ async function callVerifyAccessAPI(config, request) {
3913
3919
  return {
3914
3920
  success: false,
3915
3921
  error: data.message || data.error || `API returned ${response.status}`,
3916
- correlationId: typeof data?.correlationId === "string" ? data.correlationId : void 0
3922
+ correlationId: typeof data?.correlationId === "string" ? data.correlationId : void 0,
3923
+ attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0
3917
3924
  };
3918
3925
  }
3919
3926
  return data;
@@ -3947,7 +3954,13 @@ async function verify(config, request, options) {
3947
3954
  if (mergedConfig.debug) {
3948
3955
  console.log("[VerificationGateway] Returning cached result");
3949
3956
  }
3950
- return cached;
3957
+ const hit = { ...cached };
3958
+ if (request.attemptId) {
3959
+ hit.attemptId = request.attemptId;
3960
+ } else {
3961
+ delete hit.attemptId;
3962
+ }
3963
+ return hit;
3951
3964
  }
3952
3965
  }
3953
3966
  const enrichedRequest = { ...request };
@@ -3967,6 +3980,7 @@ async function verify(config, request, options) {
3967
3980
  return createGuidanceResponse(mergedConfig, apiResponse.error, {
3968
3981
  source: "api_error",
3969
3982
  correlationId: apiResponse.correlationId,
3983
+ attemptId: apiResponse.attemptId,
3970
3984
  urls
3971
3985
  });
3972
3986
  }
@@ -4002,6 +4016,9 @@ async function verify(config, request, options) {
4002
4016
  // Anonymous traffic has no session → correlationId is the per-attempt
4003
4017
  // linking key (the sessionId-equivalent for anonymous callers).
4004
4018
  correlationId: apiResponse.correlationId,
4019
+ // 3.12.0 (Trust Record): server echoes the attempt-chain handle on
4020
+ // every branch — denials included (the funnel outlives one deny).
4021
+ attemptId: apiResponse.attemptId,
4005
4022
  recommendation: apiResponse.recommendation,
4006
4023
  recommendationReasons: apiResponse.recommendationReasons,
4007
4024
  stepUpApproval: apiResponse.stepUpApproval,
@@ -4053,6 +4070,8 @@ async function verify(config, request, options) {
4053
4070
  // v2.3.10 (defect #34, round-4): anonymous responses surface correlationId
4054
4071
  // (no session row exists for unverified callers).
4055
4072
  correlationId: apiResponse.correlationId,
4073
+ // 3.12.0 (Trust Record): server-echoed attempt-chain handle.
4074
+ attemptId: apiResponse.attemptId,
4056
4075
  runtimeChallenge: apiResponse.runtimeChallenge,
4057
4076
  tokenGuidance: apiResponse.tokenGuidance,
4058
4077
  recommendation: apiResponse.recommendation,