@hypequery/serve 0.13.7 → 0.14.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/dist/cache-observability.d.ts +7 -10
- package/dist/cache-observability.d.ts.map +1 -1
- package/dist/cache-observability.js +5 -7
- package/dist/dev.d.ts +4 -7
- package/dist/dev.d.ts.map +1 -1
- package/dist/pipeline.d.ts.map +1 -1
- package/dist/pipeline.js +41 -15
- package/dist/types.d.ts +1 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils.d.ts +9 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +30 -0
- package/package.json +3 -3
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Aggregated cache observability for
|
|
2
|
+
* Aggregated cache observability for development and managed-runtime tooling.
|
|
3
3
|
*
|
|
4
|
-
* Serve owns no cache implementation
|
|
5
|
-
*
|
|
6
|
-
* (`@hypequery/
|
|
7
|
-
*
|
|
8
|
-
* surfaces per layer so the local gateway can serve
|
|
9
|
-
* `GET /__dev/cache` → `{ layers: [...] }` without a serve-layer cache.
|
|
4
|
+
* Serve owns no cache implementation: result caching lives in the semantic
|
|
5
|
+
* query cache (`@hypequery/datasets`) and the query-builder cache
|
|
6
|
+
* (`@hypequery/clickhouse`). This module aggregates their stats/clear surfaces
|
|
7
|
+
* per layer without introducing a serve-layer cache.
|
|
10
8
|
*/
|
|
11
9
|
import type { DatasetClient } from "@hypequery/datasets";
|
|
12
10
|
/** Stats snapshot for one cache layer. Layer ids are additive over time. */
|
|
@@ -23,9 +21,8 @@ export interface CacheObservability {
|
|
|
23
21
|
/**
|
|
24
22
|
* Clears the given layer, or every clearable layer when omitted. Layers
|
|
25
23
|
* whose `clearSupported` is false are never attempted. Returns the ids of
|
|
26
|
-
* layers actually cleared
|
|
27
|
-
*
|
|
28
|
-
* on `getStats()`.
|
|
24
|
+
* layers actually cleared. Callers exposing a clear affordance should first
|
|
25
|
+
* check `clearSupported` on `getStats()`.
|
|
29
26
|
*/
|
|
30
27
|
clear(layer?: CacheLayerStats["layer"]): Promise<{
|
|
31
28
|
cleared: Array<CacheLayerStats["layer"]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-observability.d.ts","sourceRoot":"","sources":["../src/cache-observability.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"cache-observability.d.ts","sourceRoot":"","sources":["../src/cache-observability.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,4EAA4E;AAC5E,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,8CAA8C;IAC9C,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,QAAQ,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACvC;;;;;OAKG;IACH,KAAK,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAA;KAAE,CAAC,CAAC;CAChG;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,WAAW,OAAO,KAAG,gBAAgB,GAAG,SAY1E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS;IAChD,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC,aAAa,EAAE,eAAe,GAAG,YAAY,CAAC,GAAG,SAAS,CAAC;IAC1F,eAAe,CAAC,EAAE,MAAM,gBAAgB,GAAG,SAAS,CAAC;CACtD,KAAG,kBAqDH,CAAC"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Aggregated cache observability for
|
|
2
|
+
* Aggregated cache observability for development and managed-runtime tooling.
|
|
3
3
|
*
|
|
4
|
-
* Serve owns no cache implementation
|
|
5
|
-
*
|
|
6
|
-
* (`@hypequery/
|
|
7
|
-
*
|
|
8
|
-
* surfaces per layer so the local gateway can serve
|
|
9
|
-
* `GET /__dev/cache` → `{ layers: [...] }` without a serve-layer cache.
|
|
4
|
+
* Serve owns no cache implementation: result caching lives in the semantic
|
|
5
|
+
* query cache (`@hypequery/datasets`) and the query-builder cache
|
|
6
|
+
* (`@hypequery/clickhouse`). This module aggregates their stats/clear surfaces
|
|
7
|
+
* per layer without introducing a serve-layer cache.
|
|
10
8
|
*/
|
|
11
9
|
/**
|
|
12
10
|
* Detects a builder cache controller on a query-builder object. Builders
|
package/dist/dev.d.ts
CHANGED
|
@@ -3,10 +3,9 @@ import type { ServeBuilder, StartServerOptions, ToolkitDescription } from "./typ
|
|
|
3
3
|
import { type ServeQueryLogger } from "./query-logger.js";
|
|
4
4
|
export type { CacheObservability, CacheLayerStats } from "./cache-observability.js";
|
|
5
5
|
/**
|
|
6
|
-
* The narrow surface of a serve API that
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* rather than reaching into serve internals.
|
|
6
|
+
* The narrow surface of a serve API that development and managed-runtime
|
|
7
|
+
* tooling may depend on. `ServeBuilder` satisfies this structurally — tools
|
|
8
|
+
* should accept this type rather than reaching into serve internals.
|
|
10
9
|
*/
|
|
11
10
|
export interface DevIntegrationApi {
|
|
12
11
|
/** Subscribe to endpoint execution events. */
|
|
@@ -19,9 +18,7 @@ export interface DevIntegrationApi {
|
|
|
19
18
|
requestId?: string;
|
|
20
19
|
}): Promise<unknown>;
|
|
21
20
|
/**
|
|
22
|
-
* Per-layer cache stats/clear (semantic + query-builder layers).
|
|
23
|
-
* should advertise clear affordances (the `cache:clear` capability) only
|
|
24
|
-
* for layers reporting `clearSupported`.
|
|
21
|
+
* Per-layer cache stats/clear (semantic + query-builder layers).
|
|
25
22
|
*/
|
|
26
23
|
readonly cacheObservability: CacheObservability;
|
|
27
24
|
/** Base path applied to all registered routes. */
|
package/dist/dev.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEpF
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EACV,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAoB,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE5E,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEpF;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,wEAAwE;IACxE,QAAQ,IAAI,kBAAkB,CAAC;IAC/B,qDAAqD;IACrD,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1F;;OAEG;IACH,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAChD,kDAAkD;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACzD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAMD,eAAO,MAAM,QAAQ,GACnB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAErC,KAAK,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAClC,UAAS,eAAoB;;;EAgC9B,CAAC"}
|
package/dist/pipeline.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AAEzC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EAKX,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EAGb,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAOrD,OAAO,EAAE,KAAK,kBAAkB,EAAqB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AAEzC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EAKX,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EAGb,MAAM,YAAY,CAAC;AAMpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAOrD,OAAO,EAAE,KAAK,kBAAkB,EAAqB,MAAM,WAAW,CAAC;AA0OvE,MAAM,WAAW,sBAAsB,CACrC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW;IAEzB,QAAQ,EAAE,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnD,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IACtC,cAAc,CAAC,EAAE,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtD,iBAAiB,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAChE,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,eAAO,MAAM,eAAe,GAC1B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EAEzB,SAAS,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,KAC/C,OAAO,CAAC,aAAa,CA4TvB,CAAC;AAEF,UAAU,cAAc,CACtB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW;IAEzB,MAAM,EAAE,OAAO,aAAa,EAAE,WAAW,CAAC;IAC1C,iBAAiB,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAChE,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IACtC,YAAY,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtD,KAAK,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACxC;AAED,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,KAAK,SAAS,WAAW,EACzB,iIAUC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAG,YAkDpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,MAAM,MAAM,EACZ,cAAc,MAAM,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,EACvD,UAAU,cAAc;;;;;;;;;;;;;;;;;;;;;CA8BzB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,MAAM,EACZ,aAAa,MAAM,EACnB,UAAU,WAAW;;;;;;;;;;;;;;;;;;;;;;;;CAyBmD,CAAC"}
|
package/dist/pipeline.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { warnTenantMisconfiguration } from './tenant.js';
|
|
3
3
|
import { applySemanticTenantRuntime } from './semantic/utils/tenant-runtime.js';
|
|
4
|
-
import { generateRequestId } from './utils.js';
|
|
4
|
+
import { generateRequestId, validateCorrelationId } from './utils.js';
|
|
5
5
|
import { buildOpenApiDocument } from './openapi.js';
|
|
6
6
|
import { buildDocsHtml } from './docs-ui.js';
|
|
7
7
|
import { ServeHttpError } from './errors.js';
|
|
@@ -134,12 +134,37 @@ const resolveContext = async (factory, request, auth) => {
|
|
|
134
134
|
}
|
|
135
135
|
return cloneContext(factory);
|
|
136
136
|
};
|
|
137
|
-
|
|
137
|
+
/**
|
|
138
|
+
* Resolve the authoritative request id and the optional external correlation id.
|
|
139
|
+
*
|
|
140
|
+
* The authoritative id is always server-generated unless a trusted in-process caller passes
|
|
141
|
+
* one explicitly; a network-supplied `x-request-id`/`x-trace-id` is NEVER treated as
|
|
142
|
+
* authoritative. Any caller-supplied value is validated and length-bounded and surfaced only
|
|
143
|
+
* as a separate correlation id, so it cannot inject control characters into logs/headers or
|
|
144
|
+
* spoof cross-request correlation.
|
|
145
|
+
*/
|
|
146
|
+
const resolveRequestContext = (request, provided) => ({
|
|
147
|
+
requestId: validateCorrelationId(provided) ?? generateRequestId(),
|
|
148
|
+
correlationId: validateCorrelationId(request.headers['x-request-id']) ??
|
|
149
|
+
validateCorrelationId(request.headers['x-trace-id']),
|
|
150
|
+
});
|
|
151
|
+
const withManagedTraceHeaders = (headers, requestId, correlationId) => ({
|
|
152
|
+
...Object.fromEntries(Object.entries(headers ?? {}).filter(([key]) => {
|
|
153
|
+
const normalized = key.toLowerCase();
|
|
154
|
+
return normalized !== 'x-request-id' && normalized !== 'x-correlation-id';
|
|
155
|
+
})),
|
|
156
|
+
'x-request-id': requestId,
|
|
157
|
+
...(correlationId ? { 'x-correlation-id': correlationId } : {}),
|
|
158
|
+
});
|
|
138
159
|
export const executeEndpoint = async (options) => {
|
|
139
160
|
const { endpoint, request, requestId: explicitRequestId, authStrategies, contextFactory, globalMiddlewares, tenantConfig, hooks = {}, queryLogger, additionalContext, verboseAuthErrors = false, // Default to secure mode for production safety
|
|
140
161
|
sanitizeErrors = true, // Default to secure mode for HTTP requests
|
|
141
162
|
} = options;
|
|
142
|
-
const requestId =
|
|
163
|
+
const { requestId, correlationId } = resolveRequestContext(request, explicitRequestId);
|
|
164
|
+
// Echoed alongside the authoritative x-request-id; only ever a validated caller value.
|
|
165
|
+
const traceHeaders = correlationId
|
|
166
|
+
? { 'x-correlation-id': correlationId }
|
|
167
|
+
: {};
|
|
143
168
|
const locals = {};
|
|
144
169
|
let cacheTtlMs = endpoint.cacheTtlMs ?? null;
|
|
145
170
|
const setCacheTtl = (ttl) => {
|
|
@@ -206,7 +231,7 @@ export const executeEndpoint = async (options) => {
|
|
|
206
231
|
...(verboseAuthErrors && { strategies_attempted: strategies.length }),
|
|
207
232
|
...(verboseAuthErrors && authErrorInfo?.details ? { auth_error: authErrorInfo.details } : {}),
|
|
208
233
|
endpoint: endpoint.metadata.path,
|
|
209
|
-
}, { 'x-request-id': requestId, 'cache-control': 'no-store' });
|
|
234
|
+
}, { 'x-request-id': requestId, ...traceHeaders, 'cache-control': 'no-store' });
|
|
210
235
|
}
|
|
211
236
|
context.auth = authContext;
|
|
212
237
|
// Check role/scope authorization after successful authentication
|
|
@@ -232,7 +257,7 @@ export const executeEndpoint = async (options) => {
|
|
|
232
257
|
actual: authzResult.actual,
|
|
233
258
|
}),
|
|
234
259
|
endpoint: endpoint.metadata.path,
|
|
235
|
-
}, { 'x-request-id': requestId, 'cache-control': 'no-store' });
|
|
260
|
+
}, { 'x-request-id': requestId, ...traceHeaders, 'cache-control': 'no-store' });
|
|
236
261
|
}
|
|
237
262
|
const resolvedContext = await resolveContext(contextFactory, request, authContext);
|
|
238
263
|
Object.assign(context, resolvedContext, additionalContext);
|
|
@@ -255,7 +280,7 @@ export const executeEndpoint = async (options) => {
|
|
|
255
280
|
return createErrorResponse(403, 'FORBIDDEN', errorMessage, {
|
|
256
281
|
reason: 'missing_tenant_context',
|
|
257
282
|
tenant_required: true,
|
|
258
|
-
}, { 'x-request-id': requestId, 'cache-control': 'no-store' });
|
|
283
|
+
}, { 'x-request-id': requestId, ...traceHeaders, 'cache-control': 'no-store' });
|
|
259
284
|
}
|
|
260
285
|
if (tenantId) {
|
|
261
286
|
context.tenantId = tenantId;
|
|
@@ -291,7 +316,7 @@ export const executeEndpoint = async (options) => {
|
|
|
291
316
|
});
|
|
292
317
|
return createErrorResponse(400, 'VALIDATION_ERROR', 'Request validation failed', {
|
|
293
318
|
issues: validationResult.error.issues,
|
|
294
|
-
}, { 'x-request-id': requestId });
|
|
319
|
+
}, { 'x-request-id': requestId, ...traceHeaders });
|
|
295
320
|
}
|
|
296
321
|
context.input = validationResult.data;
|
|
297
322
|
const pipeline = [
|
|
@@ -299,10 +324,7 @@ export const executeEndpoint = async (options) => {
|
|
|
299
324
|
...endpoint.middlewares,
|
|
300
325
|
];
|
|
301
326
|
const result = await runMiddlewares(pipeline, context, () => endpoint.handler(context));
|
|
302
|
-
const headers =
|
|
303
|
-
...(endpoint.defaultHeaders ?? {}),
|
|
304
|
-
'x-request-id': requestId,
|
|
305
|
-
};
|
|
327
|
+
const headers = withManagedTraceHeaders(endpoint.defaultHeaders, requestId, correlationId);
|
|
306
328
|
// Authenticated and tenant-aware responses must never be shared by an
|
|
307
329
|
// intermediary cache. Endpoint TTLs only opt public, tenant-independent
|
|
308
330
|
// responses into shared caching.
|
|
@@ -377,7 +399,7 @@ export const executeEndpoint = async (options) => {
|
|
|
377
399
|
'status' in error &&
|
|
378
400
|
'payload' in error) {
|
|
379
401
|
const structured = error;
|
|
380
|
-
const response = createErrorResponse(structured.status, structured.payload.type, structured.payload.message, undefined,
|
|
402
|
+
const response = createErrorResponse(structured.status, structured.payload.type, structured.payload.message, undefined, withManagedTraceHeaders(structured.headers, requestId, correlationId));
|
|
381
403
|
return response;
|
|
382
404
|
}
|
|
383
405
|
// When sanitizeErrors is enabled (default for HTTP), hide internal error
|
|
@@ -386,20 +408,24 @@ export const executeEndpoint = async (options) => {
|
|
|
386
408
|
const errorMessage = sanitizeErrors
|
|
387
409
|
? 'An unexpected error occurred'
|
|
388
410
|
: (error instanceof Error ? error.message : String(error));
|
|
389
|
-
return createErrorResponse(500, 'INTERNAL_SERVER_ERROR', errorMessage, undefined, { 'x-request-id': requestId });
|
|
411
|
+
return createErrorResponse(500, 'INTERNAL_SERVER_ERROR', errorMessage, undefined, { 'x-request-id': requestId, ...traceHeaders });
|
|
390
412
|
}
|
|
391
413
|
};
|
|
392
414
|
export const createServeHandler = ({ router, globalMiddlewares, authStrategies, tenantConfig, contextFactory, hooks, queryLogger, verboseAuthErrors = false, corsConfig, }) => {
|
|
393
415
|
return async (request) => {
|
|
416
|
+
const { requestId, correlationId } = resolveRequestContext(request);
|
|
417
|
+
const traceHeaders = correlationId
|
|
418
|
+
? { 'x-correlation-id': correlationId }
|
|
419
|
+
: {};
|
|
394
420
|
// Handle CORS preflight and compute headers for actual requests
|
|
395
421
|
const { preflightResponse, corsHeaders } = handleCorsRequest(corsConfig ?? null, request);
|
|
396
422
|
if (preflightResponse) {
|
|
423
|
+
preflightResponse.headers = withManagedTraceHeaders(preflightResponse.headers, requestId, correlationId);
|
|
397
424
|
return preflightResponse;
|
|
398
425
|
}
|
|
399
|
-
const requestId = resolveRequestId(request);
|
|
400
426
|
const endpoint = router.match(request.method, request.path);
|
|
401
427
|
if (!endpoint) {
|
|
402
|
-
const response = createErrorResponse(404, 'NOT_FOUND', `No endpoint registered for ${request.method} ${request.path}`, undefined, { 'x-request-id': requestId });
|
|
428
|
+
const response = createErrorResponse(404, 'NOT_FOUND', `No endpoint registered for ${request.method} ${request.path}`, undefined, { 'x-request-id': requestId, ...traceHeaders });
|
|
403
429
|
response.headers = { ...response.headers, ...corsHeaders };
|
|
404
430
|
return response;
|
|
405
431
|
}
|
package/dist/types.d.ts
CHANGED
|
@@ -629,9 +629,7 @@ export interface StartServerOptions {
|
|
|
629
629
|
/** Whether to suppress internal logging. */
|
|
630
630
|
quiet?: boolean;
|
|
631
631
|
/**
|
|
632
|
-
* Optional handler tried before the serve router
|
|
633
|
-
* such as `@hypequery/gateway` to mount UI/API routes under `/__dev`.
|
|
634
|
-
* Node adapter only.
|
|
632
|
+
* Optional handler tried before the serve router. Node adapter only.
|
|
635
633
|
*/
|
|
636
634
|
mount?: NodeMountHandler;
|
|
637
635
|
/**
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
export declare const ensureArray: <T>(value: T | T[] | undefined | null) => T[];
|
|
2
2
|
export declare const mergeTags: (existing: string[], next?: string[]) => string[];
|
|
3
3
|
export declare const generateRequestId: () => string;
|
|
4
|
+
/** Upper bound on an accepted external correlation id, in UTF-8 bytes. */
|
|
5
|
+
export declare const MAX_CORRELATION_ID_BYTES = 200;
|
|
6
|
+
/**
|
|
7
|
+
* Validate a caller-supplied external correlation id (e.g. `x-request-id`). This value is
|
|
8
|
+
* never authoritative — the authoritative request id is generated server-side. Returns the
|
|
9
|
+
* trimmed value when it is a safe, bounded string, or `undefined` when absent or rejected
|
|
10
|
+
* (empty, control characters, or over {@link MAX_CORRELATION_ID_BYTES}).
|
|
11
|
+
*/
|
|
12
|
+
export declare const validateCorrelationId: (value?: string) => string | undefined;
|
|
4
13
|
export declare const normalizeHeaderMap: (headers?: Record<string, string | undefined>) => Record<string, string | undefined>;
|
|
5
14
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,IAAI,KAAG,CAAC,EAKnE,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,EAAE,EAAE,OAAO,MAAM,EAAE,aAG5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,MAKpC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,UAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,KAC/C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAInC,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,IAAI,KAAG,CAAC,EAKnE,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,UAAU,MAAM,EAAE,EAAE,OAAO,MAAM,EAAE,aAG5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,MAKpC,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAS5C;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,SAU/D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,UAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,KAC/C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAInC,CAAC"}
|
package/dist/utils.js
CHANGED
|
@@ -14,6 +14,36 @@ export const generateRequestId = () => {
|
|
|
14
14
|
}
|
|
15
15
|
return `req_${Date.now()}_${Math.random().toString(36).substring(2, 11)}`;
|
|
16
16
|
};
|
|
17
|
+
/** Upper bound on an accepted external correlation id, in UTF-8 bytes. */
|
|
18
|
+
export const MAX_CORRELATION_ID_BYTES = 200;
|
|
19
|
+
// C0 controls, DEL, and C1 controls — rejected so a caller-supplied correlation id can
|
|
20
|
+
// never inject newlines/control sequences into logs or response headers.
|
|
21
|
+
// eslint-disable-next-line no-control-regex -- control chars are exactly what we reject
|
|
22
|
+
const CORRELATION_CONTROL_CHARS = /[\u0000-\u001F\u007F-\u009F]/;
|
|
23
|
+
const CORRELATION_ID_PATTERN = /^[A-Za-z0-9][A-Za-z0-9._:/-]*$/;
|
|
24
|
+
const correlationIdEncoder = new TextEncoder();
|
|
25
|
+
/**
|
|
26
|
+
* Validate a caller-supplied external correlation id (e.g. `x-request-id`). This value is
|
|
27
|
+
* never authoritative — the authoritative request id is generated server-side. Returns the
|
|
28
|
+
* trimmed value when it is a safe, bounded string, or `undefined` when absent or rejected
|
|
29
|
+
* (empty, control characters, or over {@link MAX_CORRELATION_ID_BYTES}).
|
|
30
|
+
*/
|
|
31
|
+
export const validateCorrelationId = (value) => {
|
|
32
|
+
if (typeof value !== 'string')
|
|
33
|
+
return undefined;
|
|
34
|
+
const trimmed = value.trim();
|
|
35
|
+
if (trimmed.length === 0)
|
|
36
|
+
return undefined;
|
|
37
|
+
if (CORRELATION_CONTROL_CHARS.test(trimmed))
|
|
38
|
+
return undefined;
|
|
39
|
+
// Keep external identifiers in a narrow ASCII grammar so Unicode
|
|
40
|
+
// confusables and whitespace cannot produce visually ambiguous values.
|
|
41
|
+
if (!CORRELATION_ID_PATTERN.test(trimmed))
|
|
42
|
+
return undefined;
|
|
43
|
+
if (correlationIdEncoder.encode(trimmed).length > MAX_CORRELATION_ID_BYTES)
|
|
44
|
+
return undefined;
|
|
45
|
+
return trimmed;
|
|
46
|
+
};
|
|
17
47
|
export const normalizeHeaderMap = (headers = {}) => {
|
|
18
48
|
return Object.fromEntries(Object.entries(headers).map(([key, value]) => [key.toLowerCase(), value]));
|
|
19
49
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hypequery/serve",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.1",
|
|
4
4
|
"description": "Declarative HTTP server for exposing hypequery analytics endpoints",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -22,12 +22,12 @@
|
|
|
22
22
|
"dist"
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@hypequery/protocol": "^0.
|
|
25
|
+
"@hypequery/protocol": "^0.10.0",
|
|
26
26
|
"jose": "^5.9.6",
|
|
27
27
|
"openapi-typescript": "^7.13.0",
|
|
28
28
|
"zod": "^3.23.8",
|
|
29
29
|
"zod-to-json-schema": "^3.23.5",
|
|
30
|
-
"@hypequery/datasets": "^0.13.
|
|
30
|
+
"@hypequery/datasets": "^0.13.2"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
33
|
"tsx": "^4.0.0"
|