@astrasyncai/verification-gateway 5.17.0 → 5.17.2

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 (94) hide show
  1. package/README.md +94 -18
  2. package/dist/adapters/express.d.mts +1 -1
  3. package/dist/adapters/express.d.ts +1 -1
  4. package/dist/adapters/express.js +33 -5
  5. package/dist/adapters/express.js.map +1 -1
  6. package/dist/adapters/express.mjs +33 -5
  7. package/dist/adapters/express.mjs.map +1 -1
  8. package/dist/adapters/mcp.d.mts +1 -1
  9. package/dist/adapters/mcp.d.ts +1 -1
  10. package/dist/adapters/mcp.js +24 -5
  11. package/dist/adapters/mcp.js.map +1 -1
  12. package/dist/adapters/mcp.mjs +24 -5
  13. package/dist/adapters/mcp.mjs.map +1 -1
  14. package/dist/adapters/nextjs.d.mts +1 -1
  15. package/dist/adapters/nextjs.d.ts +1 -1
  16. package/dist/adapters/nextjs.js +24 -5
  17. package/dist/adapters/nextjs.js.map +1 -1
  18. package/dist/adapters/nextjs.mjs +24 -5
  19. package/dist/adapters/nextjs.mjs.map +1 -1
  20. package/dist/adapters/sdk.d.mts +1 -1
  21. package/dist/adapters/sdk.d.ts +1 -1
  22. package/dist/adapters/sdk.js +5 -1
  23. package/dist/adapters/sdk.js.map +1 -1
  24. package/dist/adapters/sdk.mjs +5 -1
  25. package/dist/adapters/sdk.mjs.map +1 -1
  26. package/dist/agent/index.js +1 -1
  27. package/dist/agent/index.js.map +1 -1
  28. package/dist/agent/index.mjs +1 -1
  29. package/dist/agent/index.mjs.map +1 -1
  30. package/dist/bin/astrasync-claude-hook.js +5 -1
  31. package/dist/bin/astrasync-codex-hook.js +5 -1
  32. package/dist/bin/astrasync-guard.js +34 -7
  33. package/dist/bin/astrasync.js +34 -7
  34. package/dist/browser/background.js +5 -1
  35. package/dist/browser/background.js.map +1 -1
  36. package/dist/browser/background.mjs +5 -1
  37. package/dist/browser/background.mjs.map +1 -1
  38. package/dist/cli/index.js +1 -1
  39. package/dist/cli/index.js.map +1 -1
  40. package/dist/cli/index.mjs +1 -1
  41. package/dist/cli/index.mjs.map +1 -1
  42. package/dist/codex/index.js +5 -1
  43. package/dist/codex/index.js.map +1 -1
  44. package/dist/codex/index.mjs +5 -1
  45. package/dist/codex/index.mjs.map +1 -1
  46. package/dist/cursor/extension.js +5 -1
  47. package/dist/cursor/extension.js.map +1 -1
  48. package/dist/cursor/extension.mjs +5 -1
  49. package/dist/cursor/extension.mjs.map +1 -1
  50. package/dist/edge-config.d.mts +1 -1
  51. package/dist/edge-config.d.ts +1 -1
  52. package/dist/edge-config.js +1 -1
  53. package/dist/edge-config.js.map +1 -1
  54. package/dist/edge-config.mjs +1 -1
  55. package/dist/edge-config.mjs.map +1 -1
  56. package/dist/edge-core/index.d.mts +1 -1
  57. package/dist/edge-core/index.d.ts +1 -1
  58. package/dist/edge-core/index.js +5 -1
  59. package/dist/edge-core/index.js.map +1 -1
  60. package/dist/edge-core/index.mjs +5 -1
  61. package/dist/edge-core/index.mjs.map +1 -1
  62. package/dist/gateway/gateway.js +5 -1
  63. package/dist/gateway/gateway.js.map +1 -1
  64. package/dist/gateway/gateway.mjs +5 -1
  65. package/dist/gateway/gateway.mjs.map +1 -1
  66. package/dist/git-trigger/git-hooks.d.mts +1 -1
  67. package/dist/git-trigger/git-hooks.d.ts +1 -1
  68. package/dist/index.d.mts +16 -2
  69. package/dist/index.d.ts +16 -2
  70. package/dist/index.js +33 -5
  71. package/dist/index.js.map +1 -1
  72. package/dist/index.mjs +33 -5
  73. package/dist/index.mjs.map +1 -1
  74. package/dist/registration/index.js +1 -1
  75. package/dist/registration/index.js.map +1 -1
  76. package/dist/registration/index.mjs +1 -1
  77. package/dist/registration/index.mjs.map +1 -1
  78. package/dist/transport/index.js +1 -1
  79. package/dist/transport/index.js.map +1 -1
  80. package/dist/transport/index.mjs +1 -1
  81. package/dist/transport/index.mjs.map +1 -1
  82. package/dist/{types-Bm1QvGqI.d.ts → types-DA8LzAOB.d.ts} +6 -0
  83. package/dist/{types-Blz520bR.d.mts → types-DRb_plOh.d.mts} +14 -0
  84. package/dist/{types-Blz520bR.d.ts → types-DRb_plOh.d.ts} +14 -0
  85. package/dist/{types-DBe4hgfT.d.mts → types-vNBvYD7Z.d.mts} +6 -0
  86. package/dist/ui/index.d.mts +1 -1
  87. package/dist/ui/index.d.ts +1 -1
  88. package/dist/verify.d.mts +1 -1
  89. package/dist/verify.d.ts +1 -1
  90. package/dist/verify.js +5 -1
  91. package/dist/verify.js.map +1 -1
  92. package/dist/verify.mjs +5 -1
  93. package/dist/verify.mjs.map +1 -1
  94. package/package.json +1 -1
@@ -424,7 +424,7 @@ function routePolicyOf(route) {
424
424
  }
425
425
 
426
426
  // src/version.ts
427
- var SDK_VERSION = "5.17.0";
427
+ var SDK_VERSION = "5.17.2";
428
428
 
429
429
  // src/http.ts
430
430
  var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
@@ -674,6 +674,7 @@ function getCacheKey(request, counterpartyId) {
674
674
  request.enableRuntimeChallenge ? "1" : "0",
675
675
  // 5.16.0: route policy changes the verdict (owners / challenge).
676
676
  request.routePolicy ? JSON.stringify(request.routePolicy) : "",
677
+ request.approvalHeldByRoute ? "1" : "0",
677
678
  // callerMetadata fields contribute to risk model; include the ones
678
679
  // backend reads. sourceIp/userAgent/forwardedFor change per-request
679
680
  // so their inclusion effectively forces a re-check for any varying
@@ -881,6 +882,7 @@ async function callVerifyAccessAPI(config, request) {
881
882
  if (requestData.enableRuntimeChallenge)
882
883
  body.enableRuntimeChallenge = requestData.enableRuntimeChallenge;
883
884
  if (requestData.routePolicy) body.routePolicy = requestData.routePolicy;
885
+ if (requestData.approvalHeldByRoute) body.approvalHeldByRoute = true;
884
886
  if (requestData.createSession) body.createSession = requestData.createSession;
885
887
  if (requestData.durationRequired) body.durationRequired = requestData.durationRequired;
886
888
  if (requestData.counterpartyType) body.counterpartyType = requestData.counterpartyType;
@@ -1212,6 +1214,8 @@ async function verify(config, request, options) {
1212
1214
  } else if (result.recommendation === "step_up_required" && result.identityVerified) {
1213
1215
  result.requiresStepUp = true;
1214
1216
  result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Step-up verification required"];
1217
+ const stepUpFailures = apiResponse.access?.failures;
1218
+ if (stepUpFailures?.length) result.failures = stepUpFailures;
1215
1219
  }
1216
1220
  const escalates = result.requiresStepUp === true || result.requiresApproval === true || result.recommendation === "step_up_required";
1217
1221
  if (mergedConfig.cacheTtl !== 0 && result.recommendation !== "deny" && !escalates) {
@@ -2071,12 +2075,27 @@ function requiresHumanApproval(result) {
2071
2075
  return result.requiresStepUp === true || result.requiresApproval === true;
2072
2076
  }
2073
2077
  function annotateApprovalRequired(result) {
2074
- result.failures = [
2075
- ...result.failures ?? [],
2076
- { dimension: "commerce.intent.approval_required", message: APPROVAL_REASON }
2077
- ];
2078
+ if (isDimensionApproval(result)) {
2079
+ result.denialReasons = [DIMENSION_APPROVAL_REASON, ...result.denialReasons ?? []];
2080
+ return;
2081
+ }
2082
+ const named = (result.failures ?? []).some(
2083
+ (f) => f.dimension === "commerce.intent.approval_required"
2084
+ );
2085
+ if (!named) {
2086
+ result.failures = [
2087
+ ...result.failures ?? [],
2088
+ { dimension: "commerce.intent.approval_required", message: APPROVAL_REASON }
2089
+ ];
2090
+ }
2078
2091
  result.denialReasons = [APPROVAL_REASON, ...result.denialReasons ?? []];
2079
2092
  }
2093
+ var DIMENSION_APPROVAL_REASON = "The agent's owner asked to approve this kind of request. The owner can approve or deny it in the AstraSync dashboard.";
2094
+ var DIMENSION_APPROVAL = /^pdlss\.[a-z_]+\.approval_required$/;
2095
+ function isDimensionApproval(result) {
2096
+ const f = result.failures ?? [];
2097
+ return f.some((x) => DIMENSION_APPROVAL.test(x.dimension)) && !f.some((x) => x.dimension === "commerce.intent.approval_required");
2098
+ }
2080
2099
 
2081
2100
  // src/verified-hop.ts
2082
2101
  var MCP_VERIFIED_HOP_HEADER = "X-Astra-Verified-Hop";