@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.
- package/dist/adapter-interface/interface.d.mts +2 -2
- package/dist/adapter-interface/interface.d.ts +2 -2
- package/dist/adapters/express.d.mts +2 -2
- package/dist/adapters/express.d.ts +2 -2
- package/dist/adapters/express.js +6 -33
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/express.mjs +6 -33
- package/dist/adapters/express.mjs.map +1 -1
- package/dist/adapters/mcp.d.mts +2 -2
- package/dist/adapters/mcp.d.ts +2 -2
- package/dist/adapters/mcp.js +23 -65
- package/dist/adapters/mcp.js.map +1 -1
- package/dist/adapters/mcp.mjs +22 -64
- package/dist/adapters/mcp.mjs.map +1 -1
- package/dist/adapters/nextjs.d.mts +2 -2
- package/dist/adapters/nextjs.d.ts +2 -2
- package/dist/adapters/nextjs.js +4 -30
- package/dist/adapters/nextjs.js.map +1 -1
- package/dist/adapters/nextjs.mjs +4 -30
- package/dist/adapters/nextjs.mjs.map +1 -1
- package/dist/adapters/sdk.d.mts +2 -2
- package/dist/adapters/sdk.d.ts +2 -2
- package/dist/adapters/sdk.js +3 -124
- package/dist/adapters/sdk.js.map +1 -1
- package/dist/adapters/sdk.mjs +3 -122
- package/dist/adapters/sdk.mjs.map +1 -1
- package/dist/agent/index.d.mts +2 -2
- package/dist/agent/index.d.ts +2 -2
- package/dist/agent/index.js +1 -1
- package/dist/agent/index.js.map +1 -1
- package/dist/agent/index.mjs +1 -1
- package/dist/agent/index.mjs.map +1 -1
- package/dist/bin/astrasync-claude-hook.js +4 -29
- package/dist/bin/astrasync-codex-hook.js +4 -29
- package/dist/bin/astrasync-guard.js +4 -29
- package/dist/bin/astrasync.js +9 -34
- package/dist/browser/background.js +4 -29
- package/dist/browser/background.js.map +1 -1
- package/dist/browser/background.mjs +4 -29
- package/dist/browser/background.mjs.map +1 -1
- package/dist/browser/browser-adapter.d.mts +2 -2
- package/dist/browser/browser-adapter.d.ts +2 -2
- package/dist/claude-code/claude-code-adapter.d.mts +2 -2
- package/dist/claude-code/claude-code-adapter.d.ts +2 -2
- package/dist/cli/index.d.mts +2 -2
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +1 -1
- package/dist/cli/index.mjs.map +1 -1
- package/dist/codex/index.d.mts +2 -2
- package/dist/codex/index.d.ts +2 -2
- package/dist/codex/index.js +4 -29
- package/dist/codex/index.js.map +1 -1
- package/dist/codex/index.mjs +4 -29
- package/dist/codex/index.mjs.map +1 -1
- package/dist/cursor/cursor-adapter.d.mts +2 -2
- package/dist/cursor/cursor-adapter.d.ts +2 -2
- package/dist/cursor/extension.d.mts +2 -2
- package/dist/cursor/extension.d.ts +2 -2
- package/dist/cursor/extension.js +4 -29
- package/dist/cursor/extension.js.map +1 -1
- package/dist/cursor/extension.mjs +4 -29
- package/dist/cursor/extension.mjs.map +1 -1
- package/dist/edge-config.d.mts +1 -1
- package/dist/edge-config.d.ts +1 -1
- package/dist/edge-config.js +1 -1
- package/dist/edge-config.js.map +1 -1
- package/dist/edge-config.mjs +1 -1
- package/dist/edge-config.mjs.map +1 -1
- package/dist/edge-core/index.d.mts +1 -3
- package/dist/edge-core/index.d.ts +1 -3
- package/dist/edge-core/index.js +6 -33
- package/dist/edge-core/index.js.map +1 -1
- package/dist/edge-core/index.mjs +6 -33
- package/dist/edge-core/index.mjs.map +1 -1
- package/dist/{express-D-8Ks2Uo.d.ts → express-B5lWuemA.d.ts} +1 -1
- package/dist/{express-DBtPKXOL.d.mts → express-Dm-snUuY.d.mts} +1 -1
- package/dist/gateway/gateway.d.mts +2 -2
- package/dist/gateway/gateway.d.ts +2 -2
- package/dist/gateway/gateway.js +4 -29
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/gateway.mjs +4 -29
- package/dist/gateway/gateway.mjs.map +1 -1
- package/dist/git-trigger/git-hooks.d.mts +2 -2
- package/dist/git-trigger/git-hooks.d.ts +2 -2
- package/dist/{index-kGCGWd5x.d.mts → index-B5k_vUmK.d.mts} +1 -1
- package/dist/{index-CUfmJ1Dq.d.mts → index-BOzM6xUq.d.mts} +1 -1
- package/dist/{index-BND3kQev.d.ts → index-dRfxUdFA.d.ts} +1 -1
- package/dist/{index-DlZORQsb.d.ts → index-y8xToocF.d.ts} +1 -1
- package/dist/index.d.mts +10 -10
- package/dist/index.d.ts +10 -10
- package/dist/index.js +25 -217
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +25 -210
- package/dist/index.mjs.map +1 -1
- package/dist/local-evaluator/evaluator.d.mts +2 -2
- package/dist/local-evaluator/evaluator.d.ts +2 -2
- package/dist/local-evaluator/evaluator.js.map +1 -1
- package/dist/local-evaluator/evaluator.mjs.map +1 -1
- package/dist/{mcp-ZRN4kY3b.d.mts → mcp-DgsyQiQq.d.mts} +53 -52
- package/dist/{mcp-DToTlwIn.d.ts → mcp-OosmAcKf.d.ts} +53 -52
- package/dist/{nextjs-C0KASOy_.d.mts → nextjs-B1sBdEav.d.mts} +1 -1
- package/dist/{nextjs-lwNvWYWT.d.ts → nextjs-DoRmhV_Z.d.ts} +1 -1
- package/dist/registration/index.js +1 -1
- package/dist/registration/index.js.map +1 -1
- package/dist/registration/index.mjs +1 -1
- package/dist/registration/index.mjs.map +1 -1
- package/dist/sdk-B83N3xKc.d.mts +142 -0
- package/dist/sdk-H_9BTNBS.d.ts +142 -0
- package/dist/transport/index.d.mts +2 -2
- package/dist/transport/index.d.ts +2 -2
- package/dist/transport/index.js +1 -1
- package/dist/transport/index.js.map +1 -1
- package/dist/transport/index.mjs +1 -1
- package/dist/transport/index.mjs.map +1 -1
- package/dist/{types-CGPU7HLi.d.ts → types-BK2POWNc.d.ts} +15 -50
- package/dist/{types-Cx9hTpKI.d.mts → types-CJjZvPr9.d.mts} +15 -50
- package/dist/{types-DhhJxKIC.d.ts → types-CXf3q4kZ.d.ts} +1 -3
- package/dist/{types-CfSJLS4i.d.mts → types-DQmop7ZW.d.mts} +1 -3
- package/dist/ui/index.d.mts +2 -17
- package/dist/ui/index.d.ts +2 -17
- package/dist/ui/index.js +1 -43
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/index.mjs +1 -42
- package/dist/ui/index.mjs.map +1 -1
- package/dist/verify.d.mts +3 -4
- package/dist/verify.d.ts +3 -4
- package/dist/verify.js +3 -28
- package/dist/verify.js.map +1 -1
- package/dist/verify.mjs +3 -28
- package/dist/verify.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/sdk-B4aodEwj.d.ts +0 -215
- package/dist/sdk-B9dSwum7.d.mts +0 -215
package/dist/gateway/gateway.mjs
CHANGED
|
@@ -3705,7 +3705,7 @@ function verifyLocal(evaluator, context) {
|
|
|
3705
3705
|
return evaluator.evaluate(context);
|
|
3706
3706
|
}
|
|
3707
3707
|
|
|
3708
|
-
// src/
|
|
3708
|
+
// src/trust-levels.ts
|
|
3709
3709
|
function getTrustLevel(score) {
|
|
3710
3710
|
if (score >= 80) return "PLATINUM";
|
|
3711
3711
|
if (score >= 60) return "GOLD";
|
|
@@ -3714,7 +3714,7 @@ function getTrustLevel(score) {
|
|
|
3714
3714
|
}
|
|
3715
3715
|
|
|
3716
3716
|
// src/version.ts
|
|
3717
|
-
var SDK_VERSION = "
|
|
3717
|
+
var SDK_VERSION = "5.0.0";
|
|
3718
3718
|
|
|
3719
3719
|
// src/http.ts
|
|
3720
3720
|
var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
|
|
@@ -3744,11 +3744,6 @@ function getCachedWellKnownUrls(apiBaseUrl) {
|
|
|
3744
3744
|
// src/verify.ts
|
|
3745
3745
|
var DEFAULT_CONFIG = {
|
|
3746
3746
|
apiBaseUrl: "https://astrasync.ai/api",
|
|
3747
|
-
// v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
|
|
3748
|
-
// access). Pre-rename this defaulted to `'guidance'`, which combined with
|
|
3749
|
-
// a route gated at `'guidance'` to silently let unverified traffic
|
|
3750
|
-
// through (`hasMinimumAccess('guidance', 'guidance') === true`).
|
|
3751
|
-
defaultAccessLevel: "none",
|
|
3752
3747
|
// minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
|
|
3753
3748
|
// cacheTtl deliberately unset. When undefined, cacheResult applies the 60s
|
|
3754
3749
|
// default; the caller's explicit value is honoured for cacheable results.
|
|
@@ -3909,13 +3904,6 @@ function createGuidanceResponse(_config, reason, options = {}) {
|
|
|
3909
3904
|
// policy is not evaluated (we never reached the gate).
|
|
3910
3905
|
identityVerified: false,
|
|
3911
3906
|
policyAllowed: false,
|
|
3912
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
3913
|
-
// Adapters additionally short-circuit on `!identityVerified ||
|
|
3914
|
-
// !policyAllowed` before the gate check, but the access level still has
|
|
3915
|
-
// to be honest at the data layer so downstream consumers (SDK adapters
|
|
3916
|
-
// in other languages, custom integrations) inherit the correct
|
|
3917
|
-
// semantics.
|
|
3918
|
-
accessLevel: "none",
|
|
3919
3907
|
guidance,
|
|
3920
3908
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
3921
3909
|
// Round-10 (#47, O5): on API-error fallback, surface a typed failure so
|
|
@@ -4009,7 +3997,6 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
4009
3997
|
attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
|
|
4010
3998
|
access: {
|
|
4011
3999
|
allowed: false,
|
|
4012
|
-
accessLevel: "none",
|
|
4013
4000
|
reason: "endpoint_deactivated",
|
|
4014
4001
|
failures: [
|
|
4015
4002
|
{
|
|
@@ -4072,7 +4059,7 @@ async function verify(config, request, options) {
|
|
|
4072
4059
|
if (!deprecationWarningShown && (config.minTrustScore !== void 0 || config.minTrustScoreForFull !== void 0)) {
|
|
4073
4060
|
deprecationWarningShown = true;
|
|
4074
4061
|
console.warn(
|
|
4075
|
-
"[VerificationGateway] minTrustScore / minTrustScoreForFull are deprecated in v2.3.0 and have no effect. Server is now the single source of truth for access
|
|
4062
|
+
"[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."
|
|
4076
4063
|
);
|
|
4077
4064
|
}
|
|
4078
4065
|
if (mergedConfig.cacheTtl !== 0 && !options?.bypassCache) {
|
|
@@ -4118,14 +4105,6 @@ async function verify(config, request, options) {
|
|
|
4118
4105
|
const result2 = {
|
|
4119
4106
|
identityVerified: idVerifiedFromBackend,
|
|
4120
4107
|
policyAllowed: false,
|
|
4121
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
4122
|
-
// Pre-rename this hardcoded `'guidance'`, which conflated with the
|
|
4123
|
-
// colocated `guidance: {...}` help-payload object below and let
|
|
4124
|
-
// denied requests pass any route gated at `'guidance'` because
|
|
4125
|
-
// `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
|
|
4126
|
-
// ALSO short-circuit on `!identityVerified || !policyAllowed` before
|
|
4127
|
-
// the gate check — belt-and-braces.
|
|
4128
|
-
accessLevel: "none",
|
|
4129
4108
|
// 3.6.0: the server now emits top-level denialReasons on every deny
|
|
4130
4109
|
// path — prefer it verbatim; the failure-message reconstruction remains
|
|
4131
4110
|
// as the fallback for older backends.
|
|
@@ -4174,7 +4153,6 @@ async function verify(config, request, options) {
|
|
|
4174
4153
|
trustScore: apiResponse.organization.trustScore
|
|
4175
4154
|
} : void 0;
|
|
4176
4155
|
const verificationContext = apiResponse.verificationContext;
|
|
4177
|
-
const accessLevel = apiResponse.access?.accessLevel ?? "standard";
|
|
4178
4156
|
const result = {
|
|
4179
4157
|
// 4.5.0 (probe F1): read idVerified from verificationContext with the
|
|
4180
4158
|
// SAME absent⇒false default as the deny branch. The previous `!== false`
|
|
@@ -4186,7 +4164,6 @@ async function verify(config, request, options) {
|
|
|
4186
4164
|
// this load-bearing must never be defaulted on.
|
|
4187
4165
|
identityVerified: apiResponse.verificationContext?.idVerified === true,
|
|
4188
4166
|
policyAllowed: true,
|
|
4189
|
-
accessLevel,
|
|
4190
4167
|
agent,
|
|
4191
4168
|
developer,
|
|
4192
4169
|
organization,
|
|
@@ -4213,7 +4190,6 @@ async function verify(config, request, options) {
|
|
|
4213
4190
|
};
|
|
4214
4191
|
if (result.recommendation === "deny") {
|
|
4215
4192
|
result.policyAllowed = false;
|
|
4216
|
-
result.accessLevel = "none";
|
|
4217
4193
|
result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Access denied by AstraSync recommendation"];
|
|
4218
4194
|
result.guidance = result.runtimeChallenge ? {
|
|
4219
4195
|
message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
|
|
@@ -4329,7 +4305,6 @@ function toGatewayConfig(config) {
|
|
|
4329
4305
|
return {
|
|
4330
4306
|
apiBaseUrl: config.apiBaseUrl || "https://api.astrasync.ai",
|
|
4331
4307
|
apiKey: config.apiKey,
|
|
4332
|
-
defaultAccessLevel: config.defaultAccessLevel,
|
|
4333
4308
|
minTrustScore: config.minTrustScore,
|
|
4334
4309
|
minTrustScoreForFull: config.minTrustScoreForFull,
|
|
4335
4310
|
cacheTtl: config.cacheTtl,
|
|
@@ -4357,7 +4332,7 @@ function toDecision(result) {
|
|
|
4357
4332
|
if (result.identityVerified && result.policyAllowed) {
|
|
4358
4333
|
return {
|
|
4359
4334
|
recommendation: "ALLOW",
|
|
4360
|
-
reason: `Verified
|
|
4335
|
+
reason: result.agent?.trustScore ? `Verified (trust score ${result.agent.trustScore})` : "Verified",
|
|
4361
4336
|
trustScore: result.agent?.trustScore,
|
|
4362
4337
|
sessionId: "sessionId" in result ? result.sessionId : void 0
|
|
4363
4338
|
};
|