@astrasyncai/verification-gateway 5.17.2 → 5.18.1
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 +1878 -0
- package/README.md +141 -7
- package/dist/adapters/express.d.mts +1 -1
- package/dist/adapters/express.d.ts +1 -1
- package/dist/adapters/express.js +30 -12
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/express.mjs +30 -12
- package/dist/adapters/express.mjs.map +1 -1
- package/dist/adapters/kit-express.d.mts +63 -0
- package/dist/adapters/kit-express.d.ts +63 -0
- package/dist/adapters/kit-express.js +88 -0
- package/dist/adapters/kit-express.js.map +1 -0
- package/dist/adapters/kit-express.mjs +61 -0
- package/dist/adapters/kit-express.mjs.map +1 -0
- package/dist/adapters/mcp.d.mts +1 -1
- package/dist/adapters/mcp.d.ts +1 -1
- package/dist/adapters/mcp.js +1 -1
- package/dist/adapters/mcp.js.map +1 -1
- package/dist/adapters/mcp.mjs +1 -1
- 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 +18 -8
- package/dist/adapters/nextjs.js.map +1 -1
- package/dist/adapters/nextjs.mjs +18 -8
- package/dist/adapters/nextjs.mjs.map +1 -1
- package/dist/adapters/sdk.d.mts +1 -1
- package/dist/adapters/sdk.d.ts +1 -1
- package/dist/adapters/sdk.js +1 -1
- package/dist/adapters/sdk.js.map +1 -1
- package/dist/adapters/sdk.mjs +1 -1
- 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 +1 -1
- package/dist/bin/astrasync-codex-hook.js +1 -1
- package/dist/bin/astrasync-guard.js +330 -112
- package/dist/bin/astrasync.js +359 -113
- package/dist/browser/background.js +1 -1
- package/dist/browser/background.js.map +1 -1
- package/dist/browser/background.mjs +1 -1
- 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 +1 -1
- package/dist/codex/index.js.map +1 -1
- package/dist/codex/index.mjs +1 -1
- package/dist/codex/index.mjs.map +1 -1
- package/dist/cursor/extension.js +1 -1
- package/dist/cursor/extension.js.map +1 -1
- package/dist/cursor/extension.mjs +1 -1
- 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 +5 -4
- package/dist/edge-core/index.d.ts +5 -4
- package/dist/edge-core/index.js +18 -8
- package/dist/edge-core/index.js.map +1 -1
- package/dist/edge-core/index.mjs +18 -8
- package/dist/edge-core/index.mjs.map +1 -1
- package/dist/gateway/gateway.js +1 -1
- package/dist/gateway/gateway.js.map +1 -1
- package/dist/gateway/gateway.mjs +1 -1
- 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 +391 -13
- package/dist/index.d.ts +391 -13
- package/dist/index.js +766 -230
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +749 -222
- 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.d.mts +4 -3
- package/dist/transport/index.d.ts +4 -3
- 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-vNBvYD7Z.d.mts → types-3ObBpsnf.d.mts} +7 -0
- package/dist/{types-DA8LzAOB.d.ts → types-BoxZEYPS.d.ts} +7 -0
- package/dist/{types-DRb_plOh.d.mts → types-Cns4l8gX.d.mts} +17 -0
- package/dist/{types-DRb_plOh.d.ts → types-Cns4l8gX.d.ts} +17 -0
- package/dist/ui/index.d.mts +1 -1
- package/dist/ui/index.d.ts +1 -1
- package/dist/verify.d.mts +1 -1
- package/dist/verify.d.ts +1 -1
- package/dist/verify.js +1 -1
- package/dist/verify.js.map +1 -1
- package/dist/verify.mjs +1 -1
- package/dist/verify.mjs.map +1 -1
- package/package.json +8 -2
|
@@ -289,6 +289,23 @@ function detectCommerce(req, host) {
|
|
|
289
289
|
}
|
|
290
290
|
const signature = headerValue(req, "signature");
|
|
291
291
|
const signatureInput = headerValue(req, "signature-input");
|
|
292
|
+
if (/\/checkout[-_]sessions(\/|$)/.test(req.uri) && headerValue(req, "ucp-agent")) {
|
|
293
|
+
const signed = Boolean(signature && signatureInput);
|
|
294
|
+
return {
|
|
295
|
+
protocol: "ucp",
|
|
296
|
+
artifacts: {
|
|
297
|
+
ucpRequest: { method, url, ...jsonBody && { body: jsonBody } },
|
|
298
|
+
...signed && {
|
|
299
|
+
rfc9421: { headers, method, url, ...req.bodyText && { body: req.bodyText } }
|
|
300
|
+
}
|
|
301
|
+
},
|
|
302
|
+
evidence: {
|
|
303
|
+
path: req.uri,
|
|
304
|
+
...signed && { keyid: signatureInput.match(/keyid="([^"]+)"/)?.[1] },
|
|
305
|
+
...truncated
|
|
306
|
+
}
|
|
307
|
+
};
|
|
308
|
+
}
|
|
292
309
|
if (signature && signatureInput) {
|
|
293
310
|
const signatureAgent = headerValue(req, "signature-agent");
|
|
294
311
|
const registryHint = headerValue(req, "x-agent-registry");
|
|
@@ -323,13 +340,6 @@ function detectCommerce(req, host) {
|
|
|
323
340
|
evidence: { hasTimestamp: Boolean(acpTimestamp), ...truncated }
|
|
324
341
|
};
|
|
325
342
|
}
|
|
326
|
-
if (/\/checkout[-_]sessions(\/|$)/.test(req.uri) && headerValue(req, "ucp-agent")) {
|
|
327
|
-
return {
|
|
328
|
-
protocol: "ucp",
|
|
329
|
-
artifacts: { ucpRequest: { method, url, ...jsonBody && { body: jsonBody } } },
|
|
330
|
-
evidence: { path: req.uri, ...truncated }
|
|
331
|
-
};
|
|
332
|
-
}
|
|
333
343
|
if (jsonBody) {
|
|
334
344
|
const intent = jsonBody.intent_mandate ?? jsonBody.intentMandate;
|
|
335
345
|
const cart = jsonBody.cart_mandate ?? jsonBody.cartMandate;
|
|
@@ -442,7 +452,7 @@ function routePolicyOf(route) {
|
|
|
442
452
|
}
|
|
443
453
|
|
|
444
454
|
// src/version.ts
|
|
445
|
-
var SDK_VERSION = "5.
|
|
455
|
+
var SDK_VERSION = "5.18.1";
|
|
446
456
|
|
|
447
457
|
// src/http.ts
|
|
448
458
|
var SDK_USER_AGENT = `astrasync-sdk/${SDK_VERSION}`;
|
|
@@ -2334,6 +2344,7 @@ function createMiddleware(options) {
|
|
|
2334
2344
|
anonymousBeacon = true,
|
|
2335
2345
|
trustVerifiedHop = false,
|
|
2336
2346
|
verifiedHopMaxAgeMs,
|
|
2347
|
+
defaultRoutePolicy = "pass",
|
|
2337
2348
|
...config
|
|
2338
2349
|
} = options;
|
|
2339
2350
|
if (config.apiBaseUrl) {
|
|
@@ -2399,12 +2410,15 @@ function createMiddleware(options) {
|
|
|
2399
2410
|
});
|
|
2400
2411
|
}
|
|
2401
2412
|
const correlationId = req.headers["x-request-id"] || req.headers["x-correlation-id"];
|
|
2402
|
-
const
|
|
2413
|
+
const matchedRoute = findRouteConfig(cachedRoutes, req.path, req.method, {
|
|
2403
2414
|
caseInsensitive: caseInsensitiveRouteMatch,
|
|
2404
2415
|
logShadowDivergence: true,
|
|
2405
2416
|
correlationId
|
|
2406
2417
|
});
|
|
2407
|
-
|
|
2418
|
+
const credentials = customExtractCredentials ? customExtractCredentials(req) : defaultExtractCredentials(req);
|
|
2419
|
+
const credentialed = Boolean(credentials.astraId || credentials.apiKey || credentials.jwt);
|
|
2420
|
+
const observeUnmatched = !matchedRoute && (config.evaluateAlwaysIfCredentialed === true && Boolean(credentials.astraId) || defaultRoutePolicy === "observe" && credentialed);
|
|
2421
|
+
if (!matchedRoute && !observeUnmatched) {
|
|
2408
2422
|
if (config.setPassThroughHeader) {
|
|
2409
2423
|
res.setHeader("X-Astra-Gateway-Mode", "unenforced");
|
|
2410
2424
|
res.setHeader(
|
|
@@ -2415,10 +2429,14 @@ function createMiddleware(options) {
|
|
|
2415
2429
|
beaconPassThrough?.(req);
|
|
2416
2430
|
return next();
|
|
2417
2431
|
}
|
|
2432
|
+
const routeConfig = matchedRoute ?? {
|
|
2433
|
+
pattern: req.path,
|
|
2434
|
+
method: req.method,
|
|
2435
|
+
observe: true
|
|
2436
|
+
};
|
|
2418
2437
|
const wellKnownUrls = config.apiBaseUrl ? await getWellKnownUrls(config.apiBaseUrl).catch(() => void 0) : void 0;
|
|
2419
|
-
const credentials = customExtractCredentials ? customExtractCredentials(req) : defaultExtractCredentials(req);
|
|
2420
2438
|
const shouldEnforce = !routeConfig.observe;
|
|
2421
|
-
if (routeConfig.observe && (!config.evaluateAlwaysIfCredentialed || !credentials.astraId)) {
|
|
2439
|
+
if (routeConfig.observe && !observeUnmatched && (!config.evaluateAlwaysIfCredentialed || !credentials.astraId)) {
|
|
2422
2440
|
if (config.setPassThroughHeader) {
|
|
2423
2441
|
res.setHeader("X-Astra-Gateway-Mode", "unenforced");
|
|
2424
2442
|
res.setHeader("X-Astra-Gateway-Reason", "route-observe");
|