@astrasyncai/verification-gateway 4.6.0 → 5.0.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 (135) 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 +6 -33
  6. package/dist/adapters/express.js.map +1 -1
  7. package/dist/adapters/express.mjs +6 -33
  8. package/dist/adapters/express.mjs.map +1 -1
  9. package/dist/adapters/mcp.d.mts +2 -2
  10. package/dist/adapters/mcp.d.ts +2 -2
  11. package/dist/adapters/mcp.js +23 -65
  12. package/dist/adapters/mcp.js.map +1 -1
  13. package/dist/adapters/mcp.mjs +22 -64
  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 +4 -30
  18. package/dist/adapters/nextjs.js.map +1 -1
  19. package/dist/adapters/nextjs.mjs +4 -30
  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 +3 -124
  24. package/dist/adapters/sdk.js.map +1 -1
  25. package/dist/adapters/sdk.mjs +3 -122
  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/agent/index.js +1 -1
  30. package/dist/agent/index.js.map +1 -1
  31. package/dist/agent/index.mjs +1 -1
  32. package/dist/agent/index.mjs.map +1 -1
  33. package/dist/bin/astrasync-claude-hook.js +4 -29
  34. package/dist/bin/astrasync-codex-hook.js +4 -29
  35. package/dist/bin/astrasync-guard.js +4 -29
  36. package/dist/bin/astrasync.js +9 -34
  37. package/dist/browser/background.js +4 -29
  38. package/dist/browser/background.js.map +1 -1
  39. package/dist/browser/background.mjs +4 -29
  40. package/dist/browser/background.mjs.map +1 -1
  41. package/dist/browser/browser-adapter.d.mts +2 -2
  42. package/dist/browser/browser-adapter.d.ts +2 -2
  43. package/dist/claude-code/claude-code-adapter.d.mts +2 -2
  44. package/dist/claude-code/claude-code-adapter.d.ts +2 -2
  45. package/dist/cli/index.d.mts +2 -2
  46. package/dist/cli/index.d.ts +2 -2
  47. package/dist/cli/index.js +1 -1
  48. package/dist/cli/index.js.map +1 -1
  49. package/dist/cli/index.mjs +1 -1
  50. package/dist/cli/index.mjs.map +1 -1
  51. package/dist/codex/index.d.mts +2 -2
  52. package/dist/codex/index.d.ts +2 -2
  53. package/dist/codex/index.js +4 -29
  54. package/dist/codex/index.js.map +1 -1
  55. package/dist/codex/index.mjs +4 -29
  56. package/dist/codex/index.mjs.map +1 -1
  57. package/dist/cursor/cursor-adapter.d.mts +2 -2
  58. package/dist/cursor/cursor-adapter.d.ts +2 -2
  59. package/dist/cursor/extension.d.mts +2 -2
  60. package/dist/cursor/extension.d.ts +2 -2
  61. package/dist/cursor/extension.js +4 -29
  62. package/dist/cursor/extension.js.map +1 -1
  63. package/dist/cursor/extension.mjs +4 -29
  64. package/dist/cursor/extension.mjs.map +1 -1
  65. package/dist/edge-config.d.mts +1 -1
  66. package/dist/edge-config.d.ts +1 -1
  67. package/dist/edge-config.js +1 -1
  68. package/dist/edge-config.js.map +1 -1
  69. package/dist/edge-config.mjs +1 -1
  70. package/dist/edge-config.mjs.map +1 -1
  71. package/dist/edge-core/index.d.mts +1 -3
  72. package/dist/edge-core/index.d.ts +1 -3
  73. package/dist/edge-core/index.js +6 -33
  74. package/dist/edge-core/index.js.map +1 -1
  75. package/dist/edge-core/index.mjs +6 -33
  76. package/dist/edge-core/index.mjs.map +1 -1
  77. package/dist/{express-D-8Ks2Uo.d.ts → express-B5lWuemA.d.ts} +1 -1
  78. package/dist/{express-DBtPKXOL.d.mts → express-Dm-snUuY.d.mts} +1 -1
  79. package/dist/gateway/gateway.d.mts +2 -2
  80. package/dist/gateway/gateway.d.ts +2 -2
  81. package/dist/gateway/gateway.js +4 -29
  82. package/dist/gateway/gateway.js.map +1 -1
  83. package/dist/gateway/gateway.mjs +4 -29
  84. package/dist/gateway/gateway.mjs.map +1 -1
  85. package/dist/git-trigger/git-hooks.d.mts +2 -2
  86. package/dist/git-trigger/git-hooks.d.ts +2 -2
  87. package/dist/{index-kGCGWd5x.d.mts → index-B5k_vUmK.d.mts} +1 -1
  88. package/dist/{index-CUfmJ1Dq.d.mts → index-BOzM6xUq.d.mts} +1 -1
  89. package/dist/{index-BND3kQev.d.ts → index-dRfxUdFA.d.ts} +1 -1
  90. package/dist/{index-DlZORQsb.d.ts → index-y8xToocF.d.ts} +1 -1
  91. package/dist/index.d.mts +10 -10
  92. package/dist/index.d.ts +10 -10
  93. package/dist/index.js +25 -217
  94. package/dist/index.js.map +1 -1
  95. package/dist/index.mjs +25 -210
  96. package/dist/index.mjs.map +1 -1
  97. package/dist/local-evaluator/evaluator.d.mts +2 -2
  98. package/dist/local-evaluator/evaluator.d.ts +2 -2
  99. package/dist/local-evaluator/evaluator.js.map +1 -1
  100. package/dist/local-evaluator/evaluator.mjs.map +1 -1
  101. package/dist/{mcp-ZRN4kY3b.d.mts → mcp-DgsyQiQq.d.mts} +53 -52
  102. package/dist/{mcp-DToTlwIn.d.ts → mcp-OosmAcKf.d.ts} +53 -52
  103. package/dist/{nextjs-C0KASOy_.d.mts → nextjs-B1sBdEav.d.mts} +1 -1
  104. package/dist/{nextjs-lwNvWYWT.d.ts → nextjs-DoRmhV_Z.d.ts} +1 -1
  105. package/dist/registration/index.js +1 -1
  106. package/dist/registration/index.js.map +1 -1
  107. package/dist/registration/index.mjs +1 -1
  108. package/dist/registration/index.mjs.map +1 -1
  109. package/dist/sdk-B83N3xKc.d.mts +142 -0
  110. package/dist/sdk-H_9BTNBS.d.ts +142 -0
  111. package/dist/transport/index.d.mts +2 -2
  112. package/dist/transport/index.d.ts +2 -2
  113. package/dist/transport/index.js +1 -1
  114. package/dist/transport/index.js.map +1 -1
  115. package/dist/transport/index.mjs +1 -1
  116. package/dist/transport/index.mjs.map +1 -1
  117. package/dist/{types-CGPU7HLi.d.ts → types-BK2POWNc.d.ts} +15 -50
  118. package/dist/{types-Cx9hTpKI.d.mts → types-CJjZvPr9.d.mts} +15 -50
  119. package/dist/{types-DhhJxKIC.d.ts → types-CXf3q4kZ.d.ts} +1 -3
  120. package/dist/{types-CfSJLS4i.d.mts → types-DQmop7ZW.d.mts} +1 -3
  121. package/dist/ui/index.d.mts +2 -17
  122. package/dist/ui/index.d.ts +2 -17
  123. package/dist/ui/index.js +1 -43
  124. package/dist/ui/index.js.map +1 -1
  125. package/dist/ui/index.mjs +1 -42
  126. package/dist/ui/index.mjs.map +1 -1
  127. package/dist/verify.d.mts +3 -4
  128. package/dist/verify.d.ts +3 -4
  129. package/dist/verify.js +3 -28
  130. package/dist/verify.js.map +1 -1
  131. package/dist/verify.mjs +3 -28
  132. package/dist/verify.mjs.map +1 -1
  133. package/package.json +1 -1
  134. package/dist/sdk-B4aodEwj.d.ts +0 -215
  135. package/dist/sdk-B9dSwum7.d.mts +0 -215
@@ -3988,7 +3988,7 @@ function verifyLocal(evaluator, context) {
3988
3988
  return evaluator.evaluate(context);
3989
3989
  }
3990
3990
 
3991
- // src/access-levels.ts
3991
+ // src/trust-levels.ts
3992
3992
  function getTrustLevel(score) {
3993
3993
  if (score >= 80) return "PLATINUM";
3994
3994
  if (score >= 60) return "GOLD";
@@ -3997,7 +3997,7 @@ function getTrustLevel(score) {
3997
3997
  }
3998
3998
 
3999
3999
  // src/version.ts
4000
- var SDK_VERSION = "4.6.0";
4000
+ var SDK_VERSION = "5.0.0";
4001
4001
 
4002
4002
  // src/http.ts
4003
4003
  var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
@@ -4027,11 +4027,6 @@ function getCachedWellKnownUrls(apiBaseUrl) {
4027
4027
  // src/verify.ts
4028
4028
  var DEFAULT_CONFIG = {
4029
4029
  apiBaseUrl: "https://astrasync.ai/api",
4030
- // v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
4031
- // access). Pre-rename this defaulted to `'guidance'`, which combined with
4032
- // a route gated at `'guidance'` to silently let unverified traffic
4033
- // through (`hasMinimumAccess('guidance', 'guidance') === true`).
4034
- defaultAccessLevel: "none",
4035
4030
  // minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
4036
4031
  // cacheTtl deliberately unset. When undefined, cacheResult applies the 60s
4037
4032
  // default; the caller's explicit value is honoured for cacheable results.
@@ -4192,13 +4187,6 @@ function createGuidanceResponse(_config, reason, options = {}) {
4192
4187
  // policy is not evaluated (we never reached the gate).
4193
4188
  identityVerified: false,
4194
4189
  policyAllowed: false,
4195
- // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
4196
- // Adapters additionally short-circuit on `!identityVerified ||
4197
- // !policyAllowed` before the gate check, but the access level still has
4198
- // to be honest at the data layer so downstream consumers (SDK adapters
4199
- // in other languages, custom integrations) inherit the correct
4200
- // semantics.
4201
- accessLevel: "none",
4202
4190
  guidance,
4203
4191
  denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
4204
4192
  // Round-10 (#47, O5): on API-error fallback, surface a typed failure so
@@ -4292,7 +4280,6 @@ async function callVerifyAccessAPI(config, request) {
4292
4280
  attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
4293
4281
  access: {
4294
4282
  allowed: false,
4295
- accessLevel: "none",
4296
4283
  reason: "endpoint_deactivated",
4297
4284
  failures: [
4298
4285
  {
@@ -4355,7 +4342,7 @@ async function verify(config, request, options) {
4355
4342
  if (!deprecationWarningShown && (config.minTrustScore !== void 0 || config.minTrustScoreForFull !== void 0)) {
4356
4343
  deprecationWarningShown = true;
4357
4344
  console.warn(
4358
- "[VerificationGateway] minTrustScore / minTrustScoreForFull are deprecated in v2.3.0 and have no effect. Server is now the single source of truth for access-level decisions (the SDK reads access.accessLevel from the verify-access response). To gate access to an endpoint, configure the endpoint's trust_score_requirement server-side."
4345
+ "[VerificationGateway] minTrustScore / minTrustScoreForFull are deprecated in v2.3.0 and have no effect. Server is now the single source of truth for access decisions (verified ID + runtime challenge + PDLSS + trust score). To gate access to an endpoint, configure the endpoint's trust_score_requirement server-side."
4359
4346
  );
4360
4347
  }
4361
4348
  if (mergedConfig.cacheTtl !== 0 && !options?.bypassCache) {
@@ -4401,14 +4388,6 @@ async function verify(config, request, options) {
4401
4388
  const result2 = {
4402
4389
  identityVerified: idVerifiedFromBackend,
4403
4390
  policyAllowed: false,
4404
- // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
4405
- // Pre-rename this hardcoded `'guidance'`, which conflated with the
4406
- // colocated `guidance: {...}` help-payload object below and let
4407
- // denied requests pass any route gated at `'guidance'` because
4408
- // `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
4409
- // ALSO short-circuit on `!identityVerified || !policyAllowed` before
4410
- // the gate check — belt-and-braces.
4411
- accessLevel: "none",
4412
4391
  // 3.6.0: the server now emits top-level denialReasons on every deny
4413
4392
  // path — prefer it verbatim; the failure-message reconstruction remains
4414
4393
  // as the fallback for older backends.
@@ -4457,7 +4436,6 @@ async function verify(config, request, options) {
4457
4436
  trustScore: apiResponse.organization.trustScore
4458
4437
  } : void 0;
4459
4438
  const verificationContext = apiResponse.verificationContext;
4460
- const accessLevel = apiResponse.access?.accessLevel ?? "standard";
4461
4439
  const result = {
4462
4440
  // 4.5.0 (probe F1): read idVerified from verificationContext with the
4463
4441
  // SAME absent⇒false default as the deny branch. The previous `!== false`
@@ -4469,7 +4447,6 @@ async function verify(config, request, options) {
4469
4447
  // this load-bearing must never be defaulted on.
4470
4448
  identityVerified: apiResponse.verificationContext?.idVerified === true,
4471
4449
  policyAllowed: true,
4472
- accessLevel,
4473
4450
  agent,
4474
4451
  developer,
4475
4452
  organization,
@@ -4496,7 +4473,6 @@ async function verify(config, request, options) {
4496
4473
  };
4497
4474
  if (result.recommendation === "deny") {
4498
4475
  result.policyAllowed = false;
4499
- result.accessLevel = "none";
4500
4476
  result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Access denied by AstraSync recommendation"];
4501
4477
  result.guidance = result.runtimeChallenge ? {
4502
4478
  message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
@@ -4612,7 +4588,6 @@ function toGatewayConfig(config) {
4612
4588
  return {
4613
4589
  apiBaseUrl: config.apiBaseUrl || "https://api.astrasync.ai",
4614
4590
  apiKey: config.apiKey,
4615
- defaultAccessLevel: config.defaultAccessLevel,
4616
4591
  minTrustScore: config.minTrustScore,
4617
4592
  minTrustScoreForFull: config.minTrustScoreForFull,
4618
4593
  cacheTtl: config.cacheTtl,
@@ -4640,7 +4615,7 @@ function toDecision(result) {
4640
4615
  if (result.identityVerified && result.policyAllowed) {
4641
4616
  return {
4642
4617
  recommendation: "ALLOW",
4643
- reason: `Verified with access level: ${result.accessLevel}`,
4618
+ reason: result.agent?.trustScore ? `Verified (trust score ${result.agent.trustScore})` : "Verified",
4644
4619
  trustScore: result.agent?.trustScore,
4645
4620
  sessionId: "sessionId" in result ? result.sessionId : void 0
4646
4621
  };