@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
@@ -3931,7 +3931,7 @@ function getTrustLevel(score) {
3931
3931
  }
3932
3932
 
3933
3933
  // src/version.ts
3934
- var SDK_VERSION = "3.10.1";
3934
+ var SDK_VERSION = "3.11.0";
3935
3935
 
3936
3936
  // src/well-known.ts
3937
3937
  var CACHE_TTL_MS = 60 * 60 * 1e3;
@@ -4446,10 +4446,12 @@ function toGatewayConfig(config) {
4446
4446
  };
4447
4447
  }
4448
4448
  function toVerificationRequest(context, astraId) {
4449
+ const dotIndex = context.purpose.indexOf(".");
4450
+ const dotted = dotIndex > 0;
4449
4451
  return {
4450
4452
  credentials: { astraId },
4451
- purpose: context.purpose,
4452
- action: context.action,
4453
+ purpose: dotted ? context.purpose.slice(0, dotIndex) : context.purpose,
4454
+ action: dotted ? context.purpose : context.action,
4453
4455
  resourceType: context.resourceType,
4454
4456
  resource: context.target,
4455
4457
  transactionValue: context.transactionValue,
@@ -4701,6 +4703,20 @@ var TraceLogger = class {
4701
4703
  decision: redactDeep(decision)
4702
4704
  });
4703
4705
  }
4706
+ /**
4707
+ * Log a tool call the guard saw but did not govern. One line per skip
4708
+ * keeps coverage holes (unmapped platform tools) visible in the traces
4709
+ * instead of silently indistinguishable from ALLOW.
4710
+ */
4711
+ logSkipped(toolName, reason) {
4712
+ if (!this.enabled) return;
4713
+ this.write({
4714
+ id: this.generateId(),
4715
+ timestamp: /* @__PURE__ */ new Date(),
4716
+ type: "skipped",
4717
+ metadata: { toolName, reason }
4718
+ });
4719
+ }
4704
4720
  /**
4705
4721
  * Log a mode switch event.
4706
4722
  */
@@ -4898,6 +4914,13 @@ var AstraSyncGateway = class {
4898
4914
  getSyncStatus() {
4899
4915
  return this.syncQueue?.getStatus() || null;
4900
4916
  }
4917
+ /**
4918
+ * Record a tool call the calling adapter saw but did not govern
4919
+ * (unmapped tool, skipTools, MCP with governMcp off). Trace-only.
4920
+ */
4921
+ logSkippedTool(toolName, reason) {
4922
+ this.traceLogger?.logSkipped(toolName, reason);
4923
+ }
4901
4924
  };
4902
4925
 
4903
4926
  // src/cursor/extension.ts