@astrasyncai/verification-gateway 3.10.1 → 3.11.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 (57) hide show
  1. package/dist/adapters/express.js +1 -1
  2. package/dist/adapters/express.js.map +1 -1
  3. package/dist/adapters/express.mjs +1 -1
  4. package/dist/adapters/express.mjs.map +1 -1
  5. package/dist/adapters/mcp.js +1 -1
  6. package/dist/adapters/mcp.js.map +1 -1
  7. package/dist/adapters/mcp.mjs +1 -1
  8. package/dist/adapters/mcp.mjs.map +1 -1
  9. package/dist/adapters/nextjs.js +1 -1
  10. package/dist/adapters/nextjs.js.map +1 -1
  11. package/dist/adapters/nextjs.mjs +1 -1
  12. package/dist/adapters/nextjs.mjs.map +1 -1
  13. package/dist/adapters/sdk.js +1 -1
  14. package/dist/adapters/sdk.js.map +1 -1
  15. package/dist/adapters/sdk.mjs +1 -1
  16. package/dist/adapters/sdk.mjs.map +1 -1
  17. package/dist/bin/astrasync-claude-hook.js +47 -13
  18. package/dist/bin/astrasync-codex-hook.js +5107 -0
  19. package/dist/bin/astrasync-guard.js +176 -18
  20. package/dist/bin/astrasync.js +184 -18
  21. package/dist/browser/background.js +26 -3
  22. package/dist/browser/background.js.map +1 -1
  23. package/dist/browser/background.mjs +26 -3
  24. package/dist/browser/background.mjs.map +1 -1
  25. package/dist/claude-code/claude-code-adapter.js +9 -1
  26. package/dist/claude-code/claude-code-adapter.js.map +1 -1
  27. package/dist/claude-code/claude-code-adapter.mjs +9 -1
  28. package/dist/claude-code/claude-code-adapter.mjs.map +1 -1
  29. package/dist/codex/index.d.mts +230 -0
  30. package/dist/codex/index.d.ts +230 -0
  31. package/dist/codex/index.js +5225 -0
  32. package/dist/codex/index.js.map +1 -0
  33. package/dist/codex/index.mjs +5197 -0
  34. package/dist/codex/index.mjs.map +1 -0
  35. package/dist/cursor/extension.js +26 -3
  36. package/dist/cursor/extension.js.map +1 -1
  37. package/dist/cursor/extension.mjs +26 -3
  38. package/dist/cursor/extension.mjs.map +1 -1
  39. package/dist/gateway/gateway.d.mts +5 -0
  40. package/dist/gateway/gateway.d.ts +5 -0
  41. package/dist/gateway/gateway.js +26 -3
  42. package/dist/gateway/gateway.js.map +1 -1
  43. package/dist/gateway/gateway.mjs +26 -3
  44. package/dist/gateway/gateway.mjs.map +1 -1
  45. package/dist/index.d.mts +1 -1
  46. package/dist/index.d.ts +1 -1
  47. package/dist/index.js +1 -1
  48. package/dist/index.js.map +1 -1
  49. package/dist/index.mjs +1 -1
  50. package/dist/index.mjs.map +1 -1
  51. package/dist/local-evaluator/evaluator.js.map +1 -1
  52. package/dist/local-evaluator/evaluator.mjs.map +1 -1
  53. package/dist/verify.js +1 -1
  54. package/dist/verify.js.map +1 -1
  55. package/dist/verify.mjs +1 -1
  56. package/dist/verify.mjs.map +1 -1
  57. package/package.json +8 -2
@@ -3925,7 +3925,7 @@ function getTrustLevel(score) {
3925
3925
  }
3926
3926
 
3927
3927
  // src/version.ts
3928
- var SDK_VERSION = "3.10.1";
3928
+ var SDK_VERSION = "3.11.0";
3929
3929
 
3930
3930
  // src/well-known.ts
3931
3931
  var CACHE_TTL_MS = 60 * 60 * 1e3;
@@ -4443,10 +4443,12 @@ function toGatewayConfig(config) {
4443
4443
  };
4444
4444
  }
4445
4445
  function toVerificationRequest(context, astraId) {
4446
+ const dotIndex = context.purpose.indexOf(".");
4447
+ const dotted = dotIndex > 0;
4446
4448
  return {
4447
4449
  credentials: { astraId },
4448
- purpose: context.purpose,
4449
- action: context.action,
4450
+ purpose: dotted ? context.purpose.slice(0, dotIndex) : context.purpose,
4451
+ action: dotted ? context.purpose : context.action,
4450
4452
  resourceType: context.resourceType,
4451
4453
  resource: context.target,
4452
4454
  transactionValue: context.transactionValue,
@@ -4698,6 +4700,20 @@ var TraceLogger = class {
4698
4700
  decision: redactDeep(decision)
4699
4701
  });
4700
4702
  }
4703
+ /**
4704
+ * Log a tool call the guard saw but did not govern. One line per skip
4705
+ * keeps coverage holes (unmapped platform tools) visible in the traces
4706
+ * instead of silently indistinguishable from ALLOW.
4707
+ */
4708
+ logSkipped(toolName, reason) {
4709
+ if (!this.enabled) return;
4710
+ this.write({
4711
+ id: this.generateId(),
4712
+ timestamp: /* @__PURE__ */ new Date(),
4713
+ type: "skipped",
4714
+ metadata: { toolName, reason }
4715
+ });
4716
+ }
4701
4717
  /**
4702
4718
  * Log a mode switch event.
4703
4719
  */
@@ -4895,6 +4911,13 @@ var AstraSyncGateway = class {
4895
4911
  getSyncStatus() {
4896
4912
  return this.syncQueue?.getStatus() || null;
4897
4913
  }
4914
+ /**
4915
+ * Record a tool call the calling adapter saw but did not govern
4916
+ * (unmapped tool, skipTools, MCP with governMcp off). Trace-only.
4917
+ */
4918
+ logSkippedTool(toolName, reason) {
4919
+ this.traceLogger?.logSkipped(toolName, reason);
4920
+ }
4898
4921
  };
4899
4922
 
4900
4923
  // src/browser/background.ts