@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/adapters/sdk.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/version.ts
|
|
2
|
-
var SDK_VERSION = "
|
|
2
|
+
var SDK_VERSION = "5.0.0";
|
|
3
3
|
|
|
4
4
|
// src/http.ts
|
|
5
5
|
var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
|
|
@@ -19,84 +19,13 @@ function withUserAgent(initHeaders) {
|
|
|
19
19
|
}
|
|
20
20
|
var sdkFetch = (input, init) => fetch(input, { ...init, headers: withUserAgent(init?.headers) });
|
|
21
21
|
|
|
22
|
-
// src/
|
|
23
|
-
var ACCESS_LEVEL_HIERARCHY = {
|
|
24
|
-
none: 0,
|
|
25
|
-
restricted: 1,
|
|
26
|
-
"read-only": 2,
|
|
27
|
-
standard: 3,
|
|
28
|
-
full: 4,
|
|
29
|
-
internal: 5
|
|
30
|
-
};
|
|
22
|
+
// src/trust-levels.ts
|
|
31
23
|
function getTrustLevel(score) {
|
|
32
24
|
if (score >= 80) return "PLATINUM";
|
|
33
25
|
if (score >= 60) return "GOLD";
|
|
34
26
|
if (score >= 40) return "SILVER";
|
|
35
27
|
return "BRONZE";
|
|
36
28
|
}
|
|
37
|
-
function hasMinimumAccess(actual, required) {
|
|
38
|
-
return ACCESS_LEVEL_HIERARCHY[actual] >= ACCESS_LEVEL_HIERARCHY[required];
|
|
39
|
-
}
|
|
40
|
-
function getCapabilities(accessLevel) {
|
|
41
|
-
switch (accessLevel) {
|
|
42
|
-
case "none":
|
|
43
|
-
return {
|
|
44
|
-
canRead: false,
|
|
45
|
-
canWrite: false,
|
|
46
|
-
canDelete: false,
|
|
47
|
-
canAdmin: false,
|
|
48
|
-
canAccessInternal: false
|
|
49
|
-
};
|
|
50
|
-
case "restricted":
|
|
51
|
-
return {
|
|
52
|
-
canRead: false,
|
|
53
|
-
canWrite: false,
|
|
54
|
-
canDelete: false,
|
|
55
|
-
canAdmin: false,
|
|
56
|
-
canAccessInternal: false
|
|
57
|
-
};
|
|
58
|
-
case "read-only":
|
|
59
|
-
return {
|
|
60
|
-
canRead: true,
|
|
61
|
-
canWrite: false,
|
|
62
|
-
canDelete: false,
|
|
63
|
-
canAdmin: false,
|
|
64
|
-
canAccessInternal: false
|
|
65
|
-
};
|
|
66
|
-
case "standard":
|
|
67
|
-
return {
|
|
68
|
-
canRead: true,
|
|
69
|
-
canWrite: true,
|
|
70
|
-
canDelete: false,
|
|
71
|
-
canAdmin: false,
|
|
72
|
-
canAccessInternal: false
|
|
73
|
-
};
|
|
74
|
-
case "full":
|
|
75
|
-
return {
|
|
76
|
-
canRead: true,
|
|
77
|
-
canWrite: true,
|
|
78
|
-
canDelete: true,
|
|
79
|
-
canAdmin: false,
|
|
80
|
-
canAccessInternal: false
|
|
81
|
-
};
|
|
82
|
-
case "internal":
|
|
83
|
-
return {
|
|
84
|
-
canRead: true,
|
|
85
|
-
canWrite: true,
|
|
86
|
-
canDelete: true,
|
|
87
|
-
canAdmin: true,
|
|
88
|
-
canAccessInternal: true
|
|
89
|
-
};
|
|
90
|
-
default:
|
|
91
|
-
return {
|
|
92
|
-
canRead: false,
|
|
93
|
-
canWrite: false,
|
|
94
|
-
canDelete: false,
|
|
95
|
-
canAdmin: false,
|
|
96
|
-
canAccessInternal: false
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
29
|
|
|
101
30
|
// src/well-known.ts
|
|
102
31
|
var CACHE_TTL_MS = 60 * 60 * 1e3;
|
|
@@ -108,11 +37,6 @@ function getCachedWellKnownUrls(apiBaseUrl) {
|
|
|
108
37
|
// src/verify.ts
|
|
109
38
|
var DEFAULT_CONFIG = {
|
|
110
39
|
apiBaseUrl: "https://astrasync.ai/api",
|
|
111
|
-
// v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
|
|
112
|
-
// access). Pre-rename this defaulted to `'guidance'`, which combined with
|
|
113
|
-
// a route gated at `'guidance'` to silently let unverified traffic
|
|
114
|
-
// through (`hasMinimumAccess('guidance', 'guidance') === true`).
|
|
115
|
-
defaultAccessLevel: "none",
|
|
116
40
|
// minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
|
|
117
41
|
// cacheTtl deliberately unset. When undefined, cacheResult applies the 60s
|
|
118
42
|
// default; the caller's explicit value is honoured for cacheable results.
|
|
@@ -276,13 +200,6 @@ function createGuidanceResponse(_config, reason, options = {}) {
|
|
|
276
200
|
// policy is not evaluated (we never reached the gate).
|
|
277
201
|
identityVerified: false,
|
|
278
202
|
policyAllowed: false,
|
|
279
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
280
|
-
// Adapters additionally short-circuit on `!identityVerified ||
|
|
281
|
-
// !policyAllowed` before the gate check, but the access level still has
|
|
282
|
-
// to be honest at the data layer so downstream consumers (SDK adapters
|
|
283
|
-
// in other languages, custom integrations) inherit the correct
|
|
284
|
-
// semantics.
|
|
285
|
-
accessLevel: "none",
|
|
286
203
|
guidance,
|
|
287
204
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
288
205
|
// Round-10 (#47, O5): on API-error fallback, surface a typed failure so
|
|
@@ -376,7 +293,6 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
376
293
|
attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
|
|
377
294
|
access: {
|
|
378
295
|
allowed: false,
|
|
379
|
-
accessLevel: "none",
|
|
380
296
|
reason: "endpoint_deactivated",
|
|
381
297
|
failures: [
|
|
382
298
|
{
|
|
@@ -439,7 +355,7 @@ async function verify(config, request, options) {
|
|
|
439
355
|
if (!deprecationWarningShown && (config.minTrustScore !== void 0 || config.minTrustScoreForFull !== void 0)) {
|
|
440
356
|
deprecationWarningShown = true;
|
|
441
357
|
console.warn(
|
|
442
|
-
"[VerificationGateway] minTrustScore / minTrustScoreForFull are deprecated in v2.3.0 and have no effect. Server is now the single source of truth for access
|
|
358
|
+
"[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."
|
|
443
359
|
);
|
|
444
360
|
}
|
|
445
361
|
if (mergedConfig.cacheTtl !== 0 && !options?.bypassCache) {
|
|
@@ -485,14 +401,6 @@ async function verify(config, request, options) {
|
|
|
485
401
|
const result2 = {
|
|
486
402
|
identityVerified: idVerifiedFromBackend,
|
|
487
403
|
policyAllowed: false,
|
|
488
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
489
|
-
// Pre-rename this hardcoded `'guidance'`, which conflated with the
|
|
490
|
-
// colocated `guidance: {...}` help-payload object below and let
|
|
491
|
-
// denied requests pass any route gated at `'guidance'` because
|
|
492
|
-
// `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
|
|
493
|
-
// ALSO short-circuit on `!identityVerified || !policyAllowed` before
|
|
494
|
-
// the gate check — belt-and-braces.
|
|
495
|
-
accessLevel: "none",
|
|
496
404
|
// 3.6.0: the server now emits top-level denialReasons on every deny
|
|
497
405
|
// path — prefer it verbatim; the failure-message reconstruction remains
|
|
498
406
|
// as the fallback for older backends.
|
|
@@ -541,7 +449,6 @@ async function verify(config, request, options) {
|
|
|
541
449
|
trustScore: apiResponse.organization.trustScore
|
|
542
450
|
} : void 0;
|
|
543
451
|
const verificationContext = apiResponse.verificationContext;
|
|
544
|
-
const accessLevel = apiResponse.access?.accessLevel ?? "standard";
|
|
545
452
|
const result = {
|
|
546
453
|
// 4.5.0 (probe F1): read idVerified from verificationContext with the
|
|
547
454
|
// SAME absent⇒false default as the deny branch. The previous `!== false`
|
|
@@ -553,7 +460,6 @@ async function verify(config, request, options) {
|
|
|
553
460
|
// this load-bearing must never be defaulted on.
|
|
554
461
|
identityVerified: apiResponse.verificationContext?.idVerified === true,
|
|
555
462
|
policyAllowed: true,
|
|
556
|
-
accessLevel,
|
|
557
463
|
agent,
|
|
558
464
|
developer,
|
|
559
465
|
organization,
|
|
@@ -580,7 +486,6 @@ async function verify(config, request, options) {
|
|
|
580
486
|
};
|
|
581
487
|
if (result.recommendation === "deny") {
|
|
582
488
|
result.policyAllowed = false;
|
|
583
|
-
result.accessLevel = "none";
|
|
584
489
|
result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Access denied by AstraSync recommendation"];
|
|
585
490
|
result.guidance = result.runtimeChallenge ? {
|
|
586
491
|
message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
|
|
@@ -609,7 +514,6 @@ async function quickVerify(config, credentials) {
|
|
|
609
514
|
return {
|
|
610
515
|
identityVerified: result.identityVerified,
|
|
611
516
|
policyAllowed: result.policyAllowed,
|
|
612
|
-
accessLevel: result.accessLevel,
|
|
613
517
|
reason: result.denialReasons?.[0]
|
|
614
518
|
};
|
|
615
519
|
}
|
|
@@ -620,7 +524,6 @@ var VerificationGatewayClient = class {
|
|
|
620
524
|
this.config = {
|
|
621
525
|
apiBaseUrl: options.apiBaseUrl,
|
|
622
526
|
apiKey: options.apiKey,
|
|
623
|
-
defaultAccessLevel: options.defaultAccessLevel,
|
|
624
527
|
minTrustScore: options.minTrustScore,
|
|
625
528
|
minTrustScoreForFull: options.minTrustScoreForFull,
|
|
626
529
|
cacheTtl: options.cacheTtl,
|
|
@@ -669,26 +572,6 @@ var VerificationGatewayClient = class {
|
|
|
669
572
|
async quickVerify(credentials) {
|
|
670
573
|
return this.executeWithRetry(() => quickVerify(this.config, credentials));
|
|
671
574
|
}
|
|
672
|
-
/**
|
|
673
|
-
* Check if an agent has a specific access level.
|
|
674
|
-
*
|
|
675
|
-
* @deprecated 3.2.0 — the access-level band is informational only; it no
|
|
676
|
-
* longer gates in the middleware adapters (post-3.1.0 feedback #1). This
|
|
677
|
-
* explicit opt-in query still works, but prefer gating on the server-side
|
|
678
|
-
* policy decision (identity + policy + trust) or per-route `minTrustScore`.
|
|
679
|
-
* Explicit per-route condition→constraint rules are the Phase-2 successor.
|
|
680
|
-
*/
|
|
681
|
-
async hasAccess(credentials, requiredLevel) {
|
|
682
|
-
const result = await this.quickVerify(credentials);
|
|
683
|
-
return hasMinimumAccess(result.accessLevel, requiredLevel);
|
|
684
|
-
}
|
|
685
|
-
/**
|
|
686
|
-
* Get capabilities for a verified agent
|
|
687
|
-
*/
|
|
688
|
-
async getCapabilities(credentials) {
|
|
689
|
-
const result = await this.quickVerify(credentials);
|
|
690
|
-
return getCapabilities(result.accessLevel);
|
|
691
|
-
}
|
|
692
575
|
/**
|
|
693
576
|
* Verify a specific ASTRA-ID
|
|
694
577
|
*/
|
|
@@ -750,9 +633,7 @@ async function verifyOnce(options) {
|
|
|
750
633
|
export {
|
|
751
634
|
VerificationGatewayClient,
|
|
752
635
|
createClient,
|
|
753
|
-
getCapabilities,
|
|
754
636
|
getTrustLevel,
|
|
755
|
-
hasMinimumAccess,
|
|
756
637
|
verifyOnce
|
|
757
638
|
};
|
|
758
639
|
//# sourceMappingURL=sdk.mjs.map
|