@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
@@ -3948,7 +3948,7 @@ function verifyLocal(evaluator, context) {
3948
3948
  return evaluator.evaluate(context);
3949
3949
  }
3950
3950
 
3951
- // src/access-levels.ts
3951
+ // src/trust-levels.ts
3952
3952
  function getTrustLevel(score) {
3953
3953
  if (score >= 80) return "PLATINUM";
3954
3954
  if (score >= 60) return "GOLD";
@@ -3957,7 +3957,7 @@ function getTrustLevel(score) {
3957
3957
  }
3958
3958
 
3959
3959
  // src/version.ts
3960
- var SDK_VERSION = "4.6.0";
3960
+ var SDK_VERSION = "5.0.0";
3961
3961
 
3962
3962
  // src/http.ts
3963
3963
  var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
@@ -3987,11 +3987,6 @@ function getCachedWellKnownUrls(apiBaseUrl) {
3987
3987
  // src/verify.ts
3988
3988
  var DEFAULT_CONFIG = {
3989
3989
  apiBaseUrl: "https://astrasync.ai/api",
3990
- // v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
3991
- // access). Pre-rename this defaulted to `'guidance'`, which combined with
3992
- // a route gated at `'guidance'` to silently let unverified traffic
3993
- // through (`hasMinimumAccess('guidance', 'guidance') === true`).
3994
- defaultAccessLevel: "none",
3995
3990
  // minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
3996
3991
  // cacheTtl deliberately unset. When undefined, cacheResult applies the 60s
3997
3992
  // default; the caller's explicit value is honoured for cacheable results.
@@ -4152,13 +4147,6 @@ function createGuidanceResponse(_config, reason, options = {}) {
4152
4147
  // policy is not evaluated (we never reached the gate).
4153
4148
  identityVerified: false,
4154
4149
  policyAllowed: false,
4155
- // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
4156
- // Adapters additionally short-circuit on `!identityVerified ||
4157
- // !policyAllowed` before the gate check, but the access level still has
4158
- // to be honest at the data layer so downstream consumers (SDK adapters
4159
- // in other languages, custom integrations) inherit the correct
4160
- // semantics.
4161
- accessLevel: "none",
4162
4150
  guidance,
4163
4151
  denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
4164
4152
  // Round-10 (#47, O5): on API-error fallback, surface a typed failure so
@@ -4252,7 +4240,6 @@ async function callVerifyAccessAPI(config, request) {
4252
4240
  attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
4253
4241
  access: {
4254
4242
  allowed: false,
4255
- accessLevel: "none",
4256
4243
  reason: "endpoint_deactivated",
4257
4244
  failures: [
4258
4245
  {
@@ -4315,7 +4302,7 @@ async function verify(config, request, options) {
4315
4302
  if (!deprecationWarningShown && (config.minTrustScore !== void 0 || config.minTrustScoreForFull !== void 0)) {
4316
4303
  deprecationWarningShown = true;
4317
4304
  console.warn(
4318
- "[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."
4305
+ "[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."
4319
4306
  );
4320
4307
  }
4321
4308
  if (mergedConfig.cacheTtl !== 0 && !options?.bypassCache) {
@@ -4361,14 +4348,6 @@ async function verify(config, request, options) {
4361
4348
  const result2 = {
4362
4349
  identityVerified: idVerifiedFromBackend,
4363
4350
  policyAllowed: false,
4364
- // v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
4365
- // Pre-rename this hardcoded `'guidance'`, which conflated with the
4366
- // colocated `guidance: {...}` help-payload object below and let
4367
- // denied requests pass any route gated at `'guidance'` because
4368
- // `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
4369
- // ALSO short-circuit on `!identityVerified || !policyAllowed` before
4370
- // the gate check — belt-and-braces.
4371
- accessLevel: "none",
4372
4351
  // 3.6.0: the server now emits top-level denialReasons on every deny
4373
4352
  // path — prefer it verbatim; the failure-message reconstruction remains
4374
4353
  // as the fallback for older backends.
@@ -4417,7 +4396,6 @@ async function verify(config, request, options) {
4417
4396
  trustScore: apiResponse.organization.trustScore
4418
4397
  } : void 0;
4419
4398
  const verificationContext = apiResponse.verificationContext;
4420
- const accessLevel = apiResponse.access?.accessLevel ?? "standard";
4421
4399
  const result = {
4422
4400
  // 4.5.0 (probe F1): read idVerified from verificationContext with the
4423
4401
  // SAME absent⇒false default as the deny branch. The previous `!== false`
@@ -4429,7 +4407,6 @@ async function verify(config, request, options) {
4429
4407
  // this load-bearing must never be defaulted on.
4430
4408
  identityVerified: apiResponse.verificationContext?.idVerified === true,
4431
4409
  policyAllowed: true,
4432
- accessLevel,
4433
4410
  agent,
4434
4411
  developer,
4435
4412
  organization,
@@ -4456,7 +4433,6 @@ async function verify(config, request, options) {
4456
4433
  };
4457
4434
  if (result.recommendation === "deny") {
4458
4435
  result.policyAllowed = false;
4459
- result.accessLevel = "none";
4460
4436
  result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Access denied by AstraSync recommendation"];
4461
4437
  result.guidance = result.runtimeChallenge ? {
4462
4438
  message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
@@ -4572,7 +4548,6 @@ function toGatewayConfig(config) {
4572
4548
  return {
4573
4549
  apiBaseUrl: config.apiBaseUrl || "https://api.astrasync.ai",
4574
4550
  apiKey: config.apiKey,
4575
- defaultAccessLevel: config.defaultAccessLevel,
4576
4551
  minTrustScore: config.minTrustScore,
4577
4552
  minTrustScoreForFull: config.minTrustScoreForFull,
4578
4553
  cacheTtl: config.cacheTtl,
@@ -4600,7 +4575,7 @@ function toDecision(result) {
4600
4575
  if (result.identityVerified && result.policyAllowed) {
4601
4576
  return {
4602
4577
  recommendation: "ALLOW",
4603
- reason: `Verified with access level: ${result.accessLevel}`,
4578
+ reason: result.agent?.trustScore ? `Verified (trust score ${result.agent.trustScore})` : "Verified",
4604
4579
  trustScore: result.agent?.trustScore,
4605
4580
  sessionId: "sessionId" in result ? result.sessionId : void 0
4606
4581
  };