@astrasyncai/verification-gateway 5.18.0 → 5.19.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/CHANGELOG.md +178 -0
- package/README.md +168 -4
- package/dist/adapters/express.d.mts +9 -1
- package/dist/adapters/express.d.ts +9 -1
- package/dist/adapters/express.js +96 -37
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/express.mjs +96 -37
- package/dist/adapters/express.mjs.map +1 -1
- package/dist/adapters/http-pdlss.d.mts +7 -1
- package/dist/adapters/http-pdlss.d.ts +7 -1
- package/dist/adapters/http-pdlss.js +18 -2
- package/dist/adapters/http-pdlss.js.map +1 -1
- package/dist/adapters/http-pdlss.mjs +16 -1
- package/dist/adapters/http-pdlss.mjs.map +1 -1
- package/dist/adapters/kit-express.d.mts +93 -1
- package/dist/adapters/kit-express.d.ts +93 -1
- package/dist/adapters/kit-express.js +181 -2
- package/dist/adapters/kit-express.js.map +1 -1
- package/dist/adapters/kit-express.mjs +180 -2
- package/dist/adapters/kit-express.mjs.map +1 -1
- package/dist/adapters/mcp.d.mts +80 -9
- package/dist/adapters/mcp.d.ts +80 -9
- package/dist/adapters/mcp.js +153 -5
- package/dist/adapters/mcp.js.map +1 -1
- package/dist/adapters/mcp.mjs +151 -5
- package/dist/adapters/mcp.mjs.map +1 -1
- package/dist/adapters/nextjs.d.mts +1 -1
- package/dist/adapters/nextjs.d.ts +1 -1
- package/dist/adapters/nextjs.js +41 -4
- package/dist/adapters/nextjs.js.map +1 -1
- package/dist/adapters/nextjs.mjs +41 -4
- package/dist/adapters/nextjs.mjs.map +1 -1
- package/dist/adapters/sdk.d.mts +44 -1
- package/dist/adapters/sdk.d.ts +44 -1
- package/dist/adapters/sdk.js +76 -2
- package/dist/adapters/sdk.js.map +1 -1
- package/dist/adapters/sdk.mjs +76 -2
- package/dist/adapters/sdk.mjs.map +1 -1
- 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 +46 -6
- package/dist/bin/astrasync-codex-hook.js +46 -6
- package/dist/bin/astrasync-guard.js +375 -117
- package/dist/bin/astrasync.js +417 -117
- package/dist/browser/background.js +46 -6
- package/dist/browser/background.js.map +1 -1
- package/dist/browser/background.mjs +46 -6
- package/dist/browser/background.mjs.map +1 -1
- 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.js +46 -6
- package/dist/codex/index.js.map +1 -1
- package/dist/codex/index.mjs +46 -6
- package/dist/codex/index.mjs.map +1 -1
- package/dist/cursor/extension.js +46 -6
- package/dist/cursor/extension.js.map +1 -1
- package/dist/cursor/extension.mjs +46 -6
- 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 -1
- package/dist/edge-core/index.d.ts +1 -1
- package/dist/edge-core/index.js +21 -2
- package/dist/edge-core/index.js.map +1 -1
- package/dist/edge-core/index.mjs +21 -2
- package/dist/edge-core/index.mjs.map +1 -1
- package/dist/gateway/gateway.js +46 -6
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/gateway.mjs +46 -6
- package/dist/gateway/gateway.mjs.map +1 -1
- package/dist/git-trigger/git-hooks.d.mts +1 -1
- package/dist/git-trigger/git-hooks.d.ts +1 -1
- package/dist/index.d.mts +542 -30
- package/dist/index.d.ts +542 -30
- package/dist/index.js +1171 -183
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1157 -173
- package/dist/index.mjs.map +1 -1
- package/dist/registration/index.d.mts +1 -1
- package/dist/registration/index.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/transport/index.js +3 -2
- package/dist/transport/index.js.map +1 -1
- package/dist/transport/index.mjs +3 -2
- package/dist/transport/index.mjs.map +1 -1
- package/dist/{types-3ObBpsnf.d.mts → types-BoGjyon0.d.mts} +81 -2
- package/dist/{types-Cns4l8gX.d.mts → types-DqWPkiYl.d.mts} +90 -12
- package/dist/{types-Cns4l8gX.d.ts → types-DqWPkiYl.d.ts} +90 -12
- package/dist/{types-BoxZEYPS.d.ts → types-eWyZuz-3.d.ts} +81 -2
- package/dist/ui/index.d.mts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/verify.d.mts +23 -2
- package/dist/verify.d.ts +23 -2
- package/dist/verify.js +23 -4
- package/dist/verify.js.map +1 -1
- package/dist/verify.mjs +23 -4
- package/dist/verify.mjs.map +1 -1
- package/dist/webhooks.d.mts +16 -3
- package/dist/webhooks.d.ts +16 -3
- package/dist/webhooks.js +24 -13
- package/dist/webhooks.js.map +1 -1
- package/dist/webhooks.mjs +24 -13
- package/dist/webhooks.mjs.map +1 -1
- package/package.json +1 -1
package/dist/adapters/nextjs.mjs
CHANGED
|
@@ -434,7 +434,7 @@ function routePolicyOf(route) {
|
|
|
434
434
|
}
|
|
435
435
|
|
|
436
436
|
// src/version.ts
|
|
437
|
-
var SDK_VERSION = "5.
|
|
437
|
+
var SDK_VERSION = "5.19.0";
|
|
438
438
|
|
|
439
439
|
// src/http.ts
|
|
440
440
|
var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
|
|
@@ -700,7 +700,12 @@ function getCacheKey(request, counterpartyId) {
|
|
|
700
700
|
// its start_checkout quote was served the cached quote-leg grant (no
|
|
701
701
|
// settlementOutcome) and never reached the backend. Same F-A1-07 bug class.
|
|
702
702
|
request.commercePhase || "",
|
|
703
|
-
request.checkoutSessionId || ""
|
|
703
|
+
request.checkoutSessionId || "",
|
|
704
|
+
// 5.19.0: a route_config purpose claim is checked server-side against
|
|
705
|
+
// the stored rule for this method + path, so it changes the verdict.
|
|
706
|
+
request.purposeSource || "",
|
|
707
|
+
request.requestMethod || "",
|
|
708
|
+
request.requestPath || ""
|
|
704
709
|
].join("|");
|
|
705
710
|
}
|
|
706
711
|
function getCachedResult(request, counterpartyId) {
|
|
@@ -908,6 +913,11 @@ async function callVerifyAccessAPI(config, request) {
|
|
|
908
913
|
if (requestData.buyerEmail) body.buyerEmail = requestData.buyerEmail;
|
|
909
914
|
if (requestData.commerceArtifacts) body.commerceArtifacts = requestData.commerceArtifacts;
|
|
910
915
|
if (requestData.attemptId) body.attemptId = requestData.attemptId;
|
|
916
|
+
if (requestData.purposeSource) body.purposeSource = requestData.purposeSource;
|
|
917
|
+
if (requestData.agentArtifacts) body.agentArtifacts = requestData.agentArtifacts;
|
|
918
|
+
if (requestData.metadata) body.metadata = requestData.metadata;
|
|
919
|
+
if (requestData.requestMethod) body.requestMethod = requestData.requestMethod;
|
|
920
|
+
if (requestData.requestPath) body.requestPath = requestData.requestPath;
|
|
911
921
|
if (requestData.considerationSet) body.considerationSet = requestData.considerationSet;
|
|
912
922
|
body.sdkVersion = SDK_VERSION;
|
|
913
923
|
if (requestData.callerMetadata || requestData.clientIp || requestData.userAgent) {
|
|
@@ -1097,9 +1107,18 @@ async function verify(config, request, options) {
|
|
|
1097
1107
|
if (!apiResponse.access?.allowed) {
|
|
1098
1108
|
const aggregatedFailures = apiResponse.access?.failures;
|
|
1099
1109
|
const idVerifiedFromBackend = apiResponse.verificationContext?.idVerified === true && !aggregatedFailures?.some((f) => REJECTED_IDENTITY_DIMENSIONS.has(f.dimension));
|
|
1110
|
+
const denyAgent = idVerifiedFromBackend && apiResponse.agent ? {
|
|
1111
|
+
astraId: apiResponse.agent.astraId,
|
|
1112
|
+
name: apiResponse.agent.name,
|
|
1113
|
+
trustScore: apiResponse.agent.trustScore,
|
|
1114
|
+
trustLevel: getTrustLevel(apiResponse.agent.trustScore),
|
|
1115
|
+
blockchainAnchored: apiResponse.agent.blockchainStatus === "anchored",
|
|
1116
|
+
status: apiResponse.agent.agentStatus
|
|
1117
|
+
} : void 0;
|
|
1100
1118
|
const result2 = {
|
|
1101
1119
|
identityVerified: idVerifiedFromBackend,
|
|
1102
1120
|
policyAllowed: false,
|
|
1121
|
+
...denyAgent && { agent: denyAgent },
|
|
1103
1122
|
// 3.6.0: the server now emits top-level denialReasons on every deny
|
|
1104
1123
|
// path — prefer it verbatim; the failure-message reconstruction remains
|
|
1105
1124
|
// as the fallback for older backends.
|
|
@@ -1236,7 +1255,7 @@ async function verify(config, request, options) {
|
|
|
1236
1255
|
return result;
|
|
1237
1256
|
}
|
|
1238
1257
|
var refusedPolicyReads = /* @__PURE__ */ new Set();
|
|
1239
|
-
async function fetchRoutes(config, counterpartyId) {
|
|
1258
|
+
async function fetchRoutes(config, counterpartyId, options = {}) {
|
|
1240
1259
|
if (!counterpartyId) return null;
|
|
1241
1260
|
const headers = { "Content-Type": "application/json" };
|
|
1242
1261
|
if (config.apiKey) {
|
|
@@ -1245,7 +1264,7 @@ async function fetchRoutes(config, counterpartyId) {
|
|
|
1245
1264
|
}
|
|
1246
1265
|
try {
|
|
1247
1266
|
const response = await sdkFetch(
|
|
1248
|
-
`${config.apiBaseUrl}/endpoints/${encodeURIComponent(counterpartyId)}/routes
|
|
1267
|
+
`${config.apiBaseUrl}/endpoints/${encodeURIComponent(counterpartyId)}/routes` + (options.codeGates?.length ? `?codeGates=${options.codeGates.map(encodeURIComponent).join(",")}` : ""),
|
|
1249
1268
|
{ method: "GET", headers }
|
|
1250
1269
|
);
|
|
1251
1270
|
if (!response.ok) {
|
|
@@ -2078,6 +2097,20 @@ function resolveHttpPdlss(input) {
|
|
|
2078
2097
|
}
|
|
2079
2098
|
return { purpose, action, purposeSource, actionSource };
|
|
2080
2099
|
}
|
|
2100
|
+
function wirePurposeSource(source) {
|
|
2101
|
+
switch (source) {
|
|
2102
|
+
case "route_config":
|
|
2103
|
+
return "route_config";
|
|
2104
|
+
case "header":
|
|
2105
|
+
case "legacy_header":
|
|
2106
|
+
case "query":
|
|
2107
|
+
return "header";
|
|
2108
|
+
case "custom_extractor":
|
|
2109
|
+
return "body";
|
|
2110
|
+
default:
|
|
2111
|
+
return "default";
|
|
2112
|
+
}
|
|
2113
|
+
}
|
|
2081
2114
|
|
|
2082
2115
|
// src/adapters/approval-gate.ts
|
|
2083
2116
|
var APPROVAL_REASON = "Transaction is above the autonomous limit and requires human approval. The agent owner can approve or deny this transaction in the AstraSync dashboard.";
|
|
@@ -2509,6 +2542,10 @@ function createMiddleware(options) {
|
|
|
2509
2542
|
...commerceArtifacts && { commerceArtifacts },
|
|
2510
2543
|
purpose,
|
|
2511
2544
|
action: pdlssPair.action,
|
|
2545
|
+
// 5.19.0: route purpose claim + request line (checked server-side).
|
|
2546
|
+
purposeSource: wirePurposeSource(pdlssPair.purposeSource),
|
|
2547
|
+
requestMethod: request.method,
|
|
2548
|
+
requestPath: pathname,
|
|
2512
2549
|
resource: pathname,
|
|
2513
2550
|
counterpartyUrl,
|
|
2514
2551
|
counterpartyType: config.counterpartyType || "website",
|