@astrasyncai/verification-gateway 2.4.8 → 2.4.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.
Files changed (89) 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 +29 -15
  6. package/dist/adapters/express.js.map +1 -1
  7. package/dist/adapters/express.mjs +29 -15
  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 +30 -14
  12. package/dist/adapters/mcp.js.map +1 -1
  13. package/dist/adapters/mcp.mjs +30 -14
  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 +37 -16
  18. package/dist/adapters/nextjs.js.map +1 -1
  19. package/dist/adapters/nextjs.mjs +37 -16
  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 +31 -13
  24. package/dist/adapters/sdk.js.map +1 -1
  25. package/dist/adapters/sdk.mjs +31 -13
  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/browser/background.js +25 -12
  30. package/dist/browser/background.js.map +1 -1
  31. package/dist/browser/background.mjs +25 -12
  32. package/dist/browser/background.mjs.map +1 -1
  33. package/dist/browser/browser-adapter.d.mts +2 -2
  34. package/dist/browser/browser-adapter.d.ts +2 -2
  35. package/dist/cli/index.d.mts +2 -2
  36. package/dist/cli/index.d.ts +2 -2
  37. package/dist/cursor/cursor-adapter.d.mts +2 -2
  38. package/dist/cursor/cursor-adapter.d.ts +2 -2
  39. package/dist/cursor/extension.d.mts +2 -2
  40. package/dist/cursor/extension.d.ts +2 -2
  41. package/dist/cursor/extension.js +25 -12
  42. package/dist/cursor/extension.js.map +1 -1
  43. package/dist/cursor/extension.mjs +25 -12
  44. package/dist/cursor/extension.mjs.map +1 -1
  45. package/dist/{express-DvVjR2H4.d.mts → express-4WStX3PV.d.mts} +1 -1
  46. package/dist/{express-714gJbaW.d.ts → express-C1ePFB7n.d.ts} +1 -1
  47. package/dist/gateway/gateway.d.mts +2 -2
  48. package/dist/gateway/gateway.d.ts +2 -2
  49. package/dist/gateway/gateway.js +25 -12
  50. package/dist/gateway/gateway.js.map +1 -1
  51. package/dist/gateway/gateway.mjs +25 -12
  52. package/dist/gateway/gateway.mjs.map +1 -1
  53. package/dist/git-trigger/git-hooks.d.mts +2 -2
  54. package/dist/git-trigger/git-hooks.d.ts +2 -2
  55. package/dist/{index-DYFS9QVb.d.mts → index-ChPX4WHl.d.mts} +1 -1
  56. package/dist/{index-DO0oG8ED.d.ts → index-Cjm-zBeZ.d.ts} +1 -1
  57. package/dist/{index-2WAlxs2G.d.ts → index-CzJMCgEy.d.ts} +1 -1
  58. package/dist/{index-P9t7M_dJ.d.mts → index-D8IEntil.d.mts} +1 -1
  59. package/dist/index.d.mts +22 -11
  60. package/dist/index.d.ts +22 -11
  61. package/dist/index.js +80 -25
  62. package/dist/index.js.map +1 -1
  63. package/dist/index.mjs +79 -25
  64. package/dist/index.mjs.map +1 -1
  65. package/dist/local-evaluator/evaluator.d.mts +2 -2
  66. package/dist/local-evaluator/evaluator.d.ts +2 -2
  67. package/dist/{nextjs-CZ-MwSOT.d.ts → nextjs-BIORS__0.d.ts} +1 -1
  68. package/dist/{nextjs-BCoH7EqF.d.mts → nextjs-CjzHdaXA.d.mts} +1 -1
  69. package/dist/registration/index.d.mts +76 -1
  70. package/dist/registration/index.d.ts +76 -1
  71. package/dist/registration/index.js +27 -2
  72. package/dist/registration/index.js.map +1 -1
  73. package/dist/registration/index.mjs +25 -1
  74. package/dist/registration/index.mjs.map +1 -1
  75. package/dist/{sdk-wwhFDXWX.d.mts → sdk-Chhz-FcT.d.mts} +9 -4
  76. package/dist/{sdk-kiA49vqJ.d.ts → sdk-CqTEQAc6.d.ts} +9 -4
  77. package/dist/transport/index.d.mts +2 -2
  78. package/dist/transport/index.d.ts +2 -2
  79. package/dist/{types-DOAb89cm.d.mts → types-DNK2BgIf.d.mts} +1 -1
  80. package/dist/{types-aucqzfUa.d.ts → types-DoWIuzfj.d.ts} +1 -1
  81. package/dist/{types-BwDmjIdr.d.mts → types-L15pYd2c.d.mts} +21 -4
  82. package/dist/{types-BwDmjIdr.d.ts → types-L15pYd2c.d.ts} +21 -4
  83. package/dist/ui/index.d.mts +1 -1
  84. package/dist/ui/index.d.ts +1 -1
  85. package/dist/ui/index.js +1 -1
  86. package/dist/ui/index.js.map +1 -1
  87. package/dist/ui/index.mjs +1 -1
  88. package/dist/ui/index.mjs.map +1 -1
  89. package/package.json +1 -1
@@ -3029,7 +3029,7 @@ function getTrustLevel(score) {
3029
3029
  }
3030
3030
 
3031
3031
  // src/version.ts
3032
- var SDK_VERSION = "2.4.7";
3032
+ var SDK_VERSION = "2.4.9";
3033
3033
 
3034
3034
  // src/verify.ts
3035
3035
  var DEFAULT_CONFIG = {
@@ -3112,12 +3112,17 @@ function createGuidanceResponse(config, reason, options = {}) {
3112
3112
  ]
3113
3113
  };
3114
3114
  return {
3115
- verified: false,
3115
+ // Round-18 G4: createGuidanceResponse fires for unverified-agent path or
3116
+ // API-error fallback. Identity is not verified (no agent resolved);
3117
+ // policy is not evaluated (we never reached the gate).
3118
+ identityVerified: false,
3119
+ policyAllowed: false,
3116
3120
  // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
3117
- // Adapters additionally short-circuit on `verified === false` before
3118
- // the gate check, but the access level still has to be honest at the
3119
- // data layer so downstream consumers (SDK adapters in other languages,
3120
- // custom integrations) inherit the correct semantics.
3121
+ // Adapters additionally short-circuit on `!identityVerified ||
3122
+ // !policyAllowed` before the gate check, but the access level still has
3123
+ // to be honest at the data layer so downstream consumers (SDK adapters
3124
+ // in other languages, custom integrations) inherit the correct
3125
+ // semantics.
3121
3126
  accessLevel: "none",
3122
3127
  guidance,
3123
3128
  denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
@@ -3261,15 +3266,17 @@ async function verify(config, request) {
3261
3266
  }
3262
3267
  if (!apiResponse.access?.allowed) {
3263
3268
  const aggregatedFailures = apiResponse.access?.failures;
3269
+ const idVerifiedFromBackend = apiResponse.verificationContext?.idVerified === true;
3264
3270
  const result2 = {
3265
- verified: false,
3271
+ identityVerified: idVerifiedFromBackend,
3272
+ policyAllowed: false,
3266
3273
  // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
3267
3274
  // Pre-rename this hardcoded `'guidance'`, which conflated with the
3268
3275
  // colocated `guidance: {...}` help-payload object below and let
3269
3276
  // denied requests pass any route gated at `'guidance'` because
3270
3277
  // `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
3271
- // ALSO short-circuit on `verified === false` before the gate check —
3272
- // belt-and-braces.
3278
+ // ALSO short-circuit on `!identityVerified || !policyAllowed` before
3279
+ // the gate check — belt-and-braces.
3273
3280
  accessLevel: "none",
3274
3281
  denialReasons: aggregatedFailures && aggregatedFailures.length > 0 ? aggregatedFailures.map((f) => f.message) : apiResponse.access?.reason ? [apiResponse.access.reason] : ["Access denied"],
3275
3282
  failures: aggregatedFailures,
@@ -3313,7 +3320,13 @@ async function verify(config, request) {
3313
3320
  const verificationContext = apiResponse.verificationContext;
3314
3321
  const accessLevel = apiResponse.access?.accessLevel ?? "standard";
3315
3322
  const result = {
3316
- verified: true,
3323
+ // Round-18 G4: backend allowed access. Identity is verified (we resolved
3324
+ // the caller to an agent) and policy passed all gates. Read idVerified
3325
+ // from verificationContext for symmetry with the deny branch; default true
3326
+ // on success path since `access.allowed === true` implies identity was
3327
+ // resolvable (anonymous-allow paths flow through createGuidanceResponse).
3328
+ identityVerified: apiResponse.verificationContext?.idVerified !== false,
3329
+ policyAllowed: true,
3317
3330
  accessLevel,
3318
3331
  agent,
3319
3332
  developer,
@@ -3336,7 +3349,7 @@ async function verify(config, request) {
3336
3349
  warningHeader: apiResponse.warningHeader
3337
3350
  };
3338
3351
  if (result.recommendation === "deny") {
3339
- result.verified = false;
3352
+ result.policyAllowed = false;
3340
3353
  result.accessLevel = "none";
3341
3354
  result.denialReasons = result.recommendationReasons || [
3342
3355
  "Access denied by AstraSync recommendation"
@@ -3431,7 +3444,7 @@ function toVerificationRequest(context, astraId) {
3431
3444
  };
3432
3445
  }
3433
3446
  function toDecision(result) {
3434
- if (result.verified) {
3447
+ if (result.identityVerified && result.policyAllowed) {
3435
3448
  return {
3436
3449
  recommendation: "ALLOW",
3437
3450
  reason: `Verified with access level: ${result.accessLevel}`,