@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/edge-core/index.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}`;
|
|
@@ -310,7 +310,7 @@ function detectPlatformFingerprint(input) {
|
|
|
310
310
|
return matchPlatformSignature(PLATFORM_AGENT_SIGNATURES, input);
|
|
311
311
|
}
|
|
312
312
|
|
|
313
|
-
// src/
|
|
313
|
+
// src/trust-levels.ts
|
|
314
314
|
function getTrustLevel(score) {
|
|
315
315
|
if (score >= 80) return "PLATINUM";
|
|
316
316
|
if (score >= 60) return "GOLD";
|
|
@@ -328,11 +328,6 @@ function getCachedWellKnownUrls(apiBaseUrl) {
|
|
|
328
328
|
// src/verify.ts
|
|
329
329
|
var DEFAULT_CONFIG = {
|
|
330
330
|
apiBaseUrl: "https://astrasync.ai/api",
|
|
331
|
-
// v2.3.9 (defect #30): default for unconfigured callers is `'none'` (no
|
|
332
|
-
// access). Pre-rename this defaulted to `'guidance'`, which combined with
|
|
333
|
-
// a route gated at `'guidance'` to silently let unverified traffic
|
|
334
|
-
// through (`hasMinimumAccess('guidance', 'guidance') === true`).
|
|
335
|
-
defaultAccessLevel: "none",
|
|
336
331
|
// minTrustScore + minTrustScoreForFull deprecated in v2.3.0 — server decides.
|
|
337
332
|
// cacheTtl deliberately unset. When undefined, cacheResult applies the 60s
|
|
338
333
|
// default; the caller's explicit value is honoured for cacheable results.
|
|
@@ -527,13 +522,6 @@ function createGuidanceResponse(_config, reason, options = {}) {
|
|
|
527
522
|
// policy is not evaluated (we never reached the gate).
|
|
528
523
|
identityVerified: false,
|
|
529
524
|
policyAllowed: false,
|
|
530
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
531
|
-
// Adapters additionally short-circuit on `!identityVerified ||
|
|
532
|
-
// !policyAllowed` before the gate check, but the access level still has
|
|
533
|
-
// to be honest at the data layer so downstream consumers (SDK adapters
|
|
534
|
-
// in other languages, custom integrations) inherit the correct
|
|
535
|
-
// semantics.
|
|
536
|
-
accessLevel: "none",
|
|
537
525
|
guidance,
|
|
538
526
|
denialReasons: reason ? [reason] : ["No valid agent credentials provided"],
|
|
539
527
|
// Round-10 (#47, O5): on API-error fallback, surface a typed failure so
|
|
@@ -627,7 +615,6 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
627
615
|
attemptId: typeof data?.attemptId === "string" ? data.attemptId : void 0,
|
|
628
616
|
access: {
|
|
629
617
|
allowed: false,
|
|
630
|
-
accessLevel: "none",
|
|
631
618
|
reason: "endpoint_deactivated",
|
|
632
619
|
failures: [
|
|
633
620
|
{
|
|
@@ -690,7 +677,7 @@ async function verify(config, request, options) {
|
|
|
690
677
|
if (!deprecationWarningShown && (config.minTrustScore !== void 0 || config.minTrustScoreForFull !== void 0)) {
|
|
691
678
|
deprecationWarningShown = true;
|
|
692
679
|
console.warn(
|
|
693
|
-
"[VerificationGateway] minTrustScore / minTrustScoreForFull are deprecated in v2.3.0 and have no effect. Server is now the single source of truth for access
|
|
680
|
+
"[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."
|
|
694
681
|
);
|
|
695
682
|
}
|
|
696
683
|
if (mergedConfig.cacheTtl !== 0 && !options?.bypassCache) {
|
|
@@ -736,14 +723,6 @@ async function verify(config, request, options) {
|
|
|
736
723
|
const result2 = {
|
|
737
724
|
identityVerified: idVerifiedFromBackend,
|
|
738
725
|
policyAllowed: false,
|
|
739
|
-
// v2.3.9 (defect #30): denials grant `'none'`, NEVER a positive band.
|
|
740
|
-
// Pre-rename this hardcoded `'guidance'`, which conflated with the
|
|
741
|
-
// colocated `guidance: {...}` help-payload object below and let
|
|
742
|
-
// denied requests pass any route gated at `'guidance'` because
|
|
743
|
-
// `hasMinimumAccess('guidance', 'guidance') === true`. Adapters now
|
|
744
|
-
// ALSO short-circuit on `!identityVerified || !policyAllowed` before
|
|
745
|
-
// the gate check — belt-and-braces.
|
|
746
|
-
accessLevel: "none",
|
|
747
726
|
// 3.6.0: the server now emits top-level denialReasons on every deny
|
|
748
727
|
// path — prefer it verbatim; the failure-message reconstruction remains
|
|
749
728
|
// as the fallback for older backends.
|
|
@@ -792,7 +771,6 @@ async function verify(config, request, options) {
|
|
|
792
771
|
trustScore: apiResponse.organization.trustScore
|
|
793
772
|
} : void 0;
|
|
794
773
|
const verificationContext = apiResponse.verificationContext;
|
|
795
|
-
const accessLevel = apiResponse.access?.accessLevel ?? "standard";
|
|
796
774
|
const result = {
|
|
797
775
|
// 4.5.0 (probe F1): read idVerified from verificationContext with the
|
|
798
776
|
// SAME absent⇒false default as the deny branch. The previous `!== false`
|
|
@@ -804,7 +782,6 @@ async function verify(config, request, options) {
|
|
|
804
782
|
// this load-bearing must never be defaulted on.
|
|
805
783
|
identityVerified: apiResponse.verificationContext?.idVerified === true,
|
|
806
784
|
policyAllowed: true,
|
|
807
|
-
accessLevel,
|
|
808
785
|
agent,
|
|
809
786
|
developer,
|
|
810
787
|
organization,
|
|
@@ -831,7 +808,6 @@ async function verify(config, request, options) {
|
|
|
831
808
|
};
|
|
832
809
|
if (result.recommendation === "deny") {
|
|
833
810
|
result.policyAllowed = false;
|
|
834
|
-
result.accessLevel = "none";
|
|
835
811
|
result.denialReasons = serverDenialReasons ?? result.recommendationReasons ?? ["Access denied by AstraSync recommendation"];
|
|
836
812
|
result.guidance = result.runtimeChallenge ? {
|
|
837
813
|
message: `Verification failed: ${result.runtimeChallenge.reason || "runtime challenge failed"}`,
|
|
@@ -1178,7 +1154,6 @@ var ASAT_HEADERS = {
|
|
|
1178
1154
|
trustScore: "X-AstraSync-Trust-Score",
|
|
1179
1155
|
agentId: "X-AstraSync-Agent-Id",
|
|
1180
1156
|
developerId: "X-AstraSync-Developer-Id",
|
|
1181
|
-
permissions: "X-AstraSync-Permissions",
|
|
1182
1157
|
observedDecision: "X-AstraSync-Observed-Decision"
|
|
1183
1158
|
};
|
|
1184
1159
|
var STRIP_HEADER_PREFIXES = ["x-astrasync-", "x-astra-verified-hop"];
|
|
@@ -1227,12 +1202,11 @@ function applyOutcome(options, outcome, policy) {
|
|
|
1227
1202
|
}
|
|
1228
1203
|
function asatHeaders(outcome) {
|
|
1229
1204
|
if (!outcome.asat) return {};
|
|
1230
|
-
const { trustScore, agentId, developerId
|
|
1205
|
+
const { trustScore, agentId, developerId } = outcome.asat;
|
|
1231
1206
|
return {
|
|
1232
1207
|
...trustScore !== void 0 && { [ASAT_HEADERS.trustScore]: String(trustScore) },
|
|
1233
1208
|
...agentId && { [ASAT_HEADERS.agentId]: agentId },
|
|
1234
|
-
...developerId && { [ASAT_HEADERS.developerId]: developerId }
|
|
1235
|
-
...accessLevel && { [ASAT_HEADERS.permissions]: accessLevel }
|
|
1209
|
+
...developerId && { [ASAT_HEADERS.developerId]: developerId }
|
|
1236
1210
|
};
|
|
1237
1211
|
}
|
|
1238
1212
|
function verifiedHopHeader(outcome) {
|
|
@@ -1440,8 +1414,7 @@ function outcomeFromVerifyResult(classification, result) {
|
|
|
1440
1414
|
outcome.asat = {
|
|
1441
1415
|
trustScore: result.agent?.trustScore,
|
|
1442
1416
|
agentId: result.agent?.astraId,
|
|
1443
|
-
developerId: result.developer?.astradId
|
|
1444
|
-
accessLevel: result.accessLevel
|
|
1417
|
+
developerId: result.developer?.astradId
|
|
1445
1418
|
};
|
|
1446
1419
|
return outcome;
|
|
1447
1420
|
}
|