@astrasyncai/verification-gateway 4.4.0 → 4.5.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 (75) hide show
  1. package/dist/adapters/express.js +14 -10
  2. package/dist/adapters/express.js.map +1 -1
  3. package/dist/adapters/express.mjs +14 -10
  4. package/dist/adapters/express.mjs.map +1 -1
  5. package/dist/adapters/mcp.js +12 -9
  6. package/dist/adapters/mcp.js.map +1 -1
  7. package/dist/adapters/mcp.mjs +12 -9
  8. package/dist/adapters/mcp.mjs.map +1 -1
  9. package/dist/adapters/nextjs.js +15 -11
  10. package/dist/adapters/nextjs.js.map +1 -1
  11. package/dist/adapters/nextjs.mjs +15 -11
  12. package/dist/adapters/nextjs.mjs.map +1 -1
  13. package/dist/adapters/sdk.js +10 -7
  14. package/dist/adapters/sdk.js.map +1 -1
  15. package/dist/adapters/sdk.mjs +10 -7
  16. package/dist/adapters/sdk.mjs.map +1 -1
  17. package/dist/agent/index.js +1 -1
  18. package/dist/agent/index.js.map +1 -1
  19. package/dist/agent/index.mjs +1 -1
  20. package/dist/agent/index.mjs.map +1 -1
  21. package/dist/bin/astrasync-claude-hook.js +10 -7
  22. package/dist/bin/astrasync-codex-hook.js +10 -7
  23. package/dist/bin/astrasync-guard.js +10 -7
  24. package/dist/bin/astrasync.js +10 -7
  25. package/dist/browser/background.js +10 -7
  26. package/dist/browser/background.js.map +1 -1
  27. package/dist/browser/background.mjs +10 -7
  28. package/dist/browser/background.mjs.map +1 -1
  29. package/dist/cli/index.js +1 -1
  30. package/dist/cli/index.js.map +1 -1
  31. package/dist/cli/index.mjs +1 -1
  32. package/dist/cli/index.mjs.map +1 -1
  33. package/dist/codex/index.js +10 -7
  34. package/dist/codex/index.js.map +1 -1
  35. package/dist/codex/index.mjs +10 -7
  36. package/dist/codex/index.mjs.map +1 -1
  37. package/dist/cursor/extension.js +10 -7
  38. package/dist/cursor/extension.js.map +1 -1
  39. package/dist/cursor/extension.mjs +10 -7
  40. package/dist/cursor/extension.mjs.map +1 -1
  41. package/dist/edge-config.d.mts +11 -4
  42. package/dist/edge-config.d.ts +11 -4
  43. package/dist/edge-config.js +1 -1
  44. package/dist/edge-config.js.map +1 -1
  45. package/dist/edge-config.mjs +1 -1
  46. package/dist/edge-config.mjs.map +1 -1
  47. package/dist/edge-core/index.d.mts +21 -7
  48. package/dist/edge-core/index.d.ts +21 -7
  49. package/dist/edge-core/index.js +75 -15
  50. package/dist/edge-core/index.js.map +1 -1
  51. package/dist/edge-core/index.mjs +75 -15
  52. package/dist/edge-core/index.mjs.map +1 -1
  53. package/dist/gateway/gateway.js +10 -7
  54. package/dist/gateway/gateway.js.map +1 -1
  55. package/dist/gateway/gateway.mjs +10 -7
  56. package/dist/gateway/gateway.mjs.map +1 -1
  57. package/dist/index.d.mts +2 -2
  58. package/dist/index.d.ts +2 -2
  59. package/dist/index.js +19 -15
  60. package/dist/index.js.map +1 -1
  61. package/dist/index.mjs +19 -15
  62. package/dist/index.mjs.map +1 -1
  63. package/dist/registration/index.js +1 -1
  64. package/dist/registration/index.js.map +1 -1
  65. package/dist/registration/index.mjs +1 -1
  66. package/dist/registration/index.mjs.map +1 -1
  67. package/dist/transport/index.js +1 -1
  68. package/dist/transport/index.js.map +1 -1
  69. package/dist/transport/index.mjs +1 -1
  70. package/dist/transport/index.mjs.map +1 -1
  71. package/dist/verify.js +10 -7
  72. package/dist/verify.js.map +1 -1
  73. package/dist/verify.mjs +10 -7
  74. package/dist/verify.mjs.map +1 -1
  75. package/package.json +2 -2
@@ -36,7 +36,7 @@ __export(nextjs_exports, {
36
36
  module.exports = __toCommonJS(nextjs_exports);
37
37
 
38
38
  // src/version.ts
39
- var SDK_VERSION = "4.4.0";
39
+ var SDK_VERSION = "4.5.0";
40
40
 
41
41
  // src/http.ts
42
42
  var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
@@ -593,12 +593,15 @@ async function verify(config, request, options) {
593
593
  const verificationContext = apiResponse.verificationContext;
594
594
  const accessLevel = apiResponse.access?.accessLevel ?? "standard";
595
595
  const result = {
596
- // Round-18 G4: backend allowed access. Identity is verified (we resolved
597
- // the caller to an agent) and policy passed all gates. Read idVerified
598
- // from verificationContext for symmetry with the deny branch; default true
599
- // on success path since `access.allowed === true` implies identity was
600
- // resolvable (anonymous-allow paths flow through createGuidanceResponse).
601
- identityVerified: apiResponse.verificationContext?.idVerified !== false,
596
+ // 4.5.0 (probe F1): read idVerified from verificationContext with the
597
+ // SAME absent⇒false default as the deny branch. The previous `!== false`
598
+ // default manufactured `identityVerified: true` for anonymous
599
+ // allow_full/allow_partial/audit responses (which allow access but omit
600
+ // verificationContext entirely) — the "anonymous caller labelled
601
+ // verified" defect. Every authenticated success response has carried
602
+ // `verificationContext.idVerified: true` since v2.2.4, so a truth claim
603
+ // this load-bearing must never be defaulted on.
604
+ identityVerified: apiResponse.verificationContext?.idVerified === true,
602
605
  policyAllowed: true,
603
606
  accessLevel,
604
607
  agent,
@@ -1248,9 +1251,10 @@ function detectPlatformFingerprint(input) {
1248
1251
 
1249
1252
  // src/edge-core/classify.ts
1250
1253
  var STATIC_EXTENSIONS = /\.(css|js|mjs|map|png|jpe?g|gif|webp|avif|svg|ico|woff2?|ttf|otf|eot|mp4|webm|pdf|txt|xml)$/i;
1254
+ var SELF_UA_PATTERN = /^astrasync-sdk\//i;
1251
1255
  var BOT_UA_PATTERN = /curl|wget|python-requests|python-urllib|node-fetch|axios|got|okhttp|go-http-client|libwww|httpie|java\/|ruby|php|scrapy|headless|phantomjs|selenium|playwright|puppeteer|bot|crawler|spider|slurp/i;
1252
1256
  var BROWSER_UA_PATTERN = /mozilla\/\d/i;
1253
- var _patterns = { STATIC_EXTENSIONS, BOT_UA_PATTERN, BROWSER_UA_PATTERN };
1257
+ var _patterns = { STATIC_EXTENSIONS, BOT_UA_PATTERN, BROWSER_UA_PATTERN, SELF_UA_PATTERN };
1254
1258
 
1255
1259
  // src/edge-core/events.ts
1256
1260
  function sampled(rate, random = Math.random) {
@@ -1858,7 +1862,7 @@ function createMiddleware(options) {
1858
1862
  };
1859
1863
  let result = await verify(config, verificationRequest);
1860
1864
  let stepUpHoldOutcome;
1861
- if (config.stepUpMaxWaitMs !== void 0 && result.identityVerified && requiresHumanApproval(result) && result.stepUpApproval?.pollUrl) {
1865
+ if (config.stepUpMaxWaitMs !== void 0 && result.policyAllowed && requiresHumanApproval(result) && result.stepUpApproval?.pollUrl) {
1862
1866
  stepUpHoldOutcome = await awaitStepUpApproval(config, result.stepUpApproval);
1863
1867
  if (stepUpHoldOutcome === "approved") {
1864
1868
  result = await verify(config, verificationRequest, { bypassCache: true });
@@ -1866,9 +1870,9 @@ function createMiddleware(options) {
1866
1870
  result.stepUpOutcome = stepUpHoldOutcome;
1867
1871
  }
1868
1872
  }
1869
- const approvalRequired = result.identityVerified && result.policyAllowed && requiresHumanApproval(result);
1873
+ const approvalRequired = result.policyAllowed && requiresHumanApproval(result);
1870
1874
  if (approvalRequired) annotateApprovalRequired(result);
1871
- if (!result.identityVerified || !result.policyAllowed || approvalRequired) {
1875
+ if (!result.policyAllowed || approvalRequired) {
1872
1876
  if (result.misconfigured && pathname.startsWith("/api/")) {
1873
1877
  return NextResponse.json(
1874
1878
  {