@nifrajs/core 2.12.1 → 2.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/binary.d.ts +32 -0
- package/dist/binary.d.ts.map +1 -1
- package/dist/binary.js +17 -0
- package/dist/binary.js.map +1 -1
- package/dist/durable-adapters.d.ts.map +1 -1
- package/dist/durable-adapters.js +21 -50
- package/dist/durable-adapters.js.map +1 -1
- package/dist/durable-execution.d.ts.map +1 -1
- package/dist/durable-execution.js +49 -69
- package/dist/durable-execution.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/internal/durable-approval-protocol.d.ts +13 -0
- package/dist/internal/durable-approval-protocol.d.ts.map +1 -0
- package/dist/internal/durable-approval-protocol.js +66 -0
- package/dist/internal/durable-approval-protocol.js.map +1 -0
- package/dist/internal/durable-effect-protocol.d.ts +14 -0
- package/dist/internal/durable-effect-protocol.d.ts.map +1 -0
- package/dist/internal/durable-effect-protocol.js +16 -0
- package/dist/internal/durable-effect-protocol.js.map +1 -0
- package/dist/internal/durable-saga-protocol.d.ts +8 -0
- package/dist/internal/durable-saga-protocol.d.ts.map +1 -0
- package/dist/internal/durable-saga-protocol.js +21 -0
- package/dist/internal/durable-saga-protocol.js.map +1 -0
- package/dist/internal/route-catalog.d.ts +3 -0
- package/dist/internal/route-catalog.d.ts.map +1 -1
- package/dist/internal/route-catalog.js +5 -0
- package/dist/internal/route-catalog.js.map +1 -1
- package/dist/range.d.ts.map +1 -1
- package/dist/range.js +4 -2
- package/dist/range.js.map +1 -1
- package/dist/server/body.d.ts +5 -0
- package/dist/server/body.d.ts.map +1 -1
- package/dist/server/body.js +26 -9
- package/dist/server/body.js.map +1 -1
- package/dist/server/plugin.d.ts +1 -1
- package/dist/server/plugin.d.ts.map +1 -1
- package/dist/server/registry.d.ts +11 -2
- package/dist/server/registry.d.ts.map +1 -1
- package/dist/server/request-context.d.ts +12 -0
- package/dist/server/request-context.d.ts.map +1 -1
- package/dist/server/request-context.js +132 -20
- package/dist/server/request-context.js.map +1 -1
- package/dist/server/respond.d.ts +1 -0
- package/dist/server/respond.d.ts.map +1 -1
- package/dist/server/respond.js +1 -1
- package/dist/server/respond.js.map +1 -1
- package/dist/server/server-types.d.ts +15 -0
- package/dist/server/server-types.d.ts.map +1 -1
- package/dist/server/server.d.ts +43 -9
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +131 -6
- package/dist/server/server.js.map +1 -1
- package/package.json +1 -1
- package/src/binary.ts +35 -0
- package/src/durable-adapters.ts +26 -51
- package/src/durable-execution.ts +46 -88
- package/src/index.ts +1 -1
- package/src/internal/durable-approval-protocol.ts +92 -0
- package/src/internal/durable-effect-protocol.ts +37 -0
- package/src/internal/durable-saga-protocol.ts +55 -0
- package/src/internal/route-catalog.ts +6 -0
- package/src/range.ts +3 -1
- package/src/server/body.ts +25 -8
- package/src/server/plugin.ts +1 -1
- package/src/server/registry.ts +19 -4
- package/src/server/request-context.ts +138 -22
- package/src/server/respond.ts +1 -1
- package/src/server/server-types.ts +15 -0
- package/src/server/server.ts +182 -10
package/dist/server/server.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type { Version } from "../index.js";
|
|
|
4
4
|
import { type AroundCapabilityOptions, type CapabilityInterceptor } from "../internal/capability-runtime.js";
|
|
5
5
|
import { type Method } from "../router/router.js";
|
|
6
6
|
import type { InferOutput, StandardSchemaV1 } from "../schema/standard.js";
|
|
7
|
+
import { type RawBodyReaders } from "./body.js";
|
|
7
8
|
import type { Context, Platform, ResponseControls, RouteSchema } from "./context.js";
|
|
8
9
|
import { type UrlParts } from "./http.js";
|
|
9
10
|
import { type NodeServeOutcome } from "./node-outcome.js";
|
|
@@ -16,7 +17,7 @@ import type { IdempotencyRuntime } from "./idempotency-lane.js";
|
|
|
16
17
|
import { INSTALL_EFFECT_LEDGER, INSTALL_IDEMPOTENCY, INSTALL_MCP, INSTALL_NODE_DIRECT, INSTALL_RESPONSE_CONTRACT, INSTALL_SSE, INSTALL_WS } from "./install.js";
|
|
17
18
|
import type { EffectLedgerRuntime } from "./ledger-lane.js";
|
|
18
19
|
import type { McpRuntime } from "./mcp-hook.js";
|
|
19
|
-
import type { ContextPlugin, IdentityPlugin } from "./plugin.js";
|
|
20
|
+
import type { ContextPlugin, IdentityPlugin, PluginTypeCollapsed, ServerTypeUnpinned } from "./plugin.js";
|
|
20
21
|
import type { AddRoute, EmptyRegistry, OutputOf, Registry, RouteInfoFor, WsRouteInfoFor } from "./registry.js";
|
|
21
22
|
import type { AdmissionController, AdmissionDecision, FetchHandler, McpPromptDescriptor, McpResourceDescriptor, Middleware, MountFetchOptions, PromptArgument, PromptMessage, ResponseFinalization, RouteDescriptor, RunningServer, ServerOptions, StopHook, ToolAnnotations } from "./server-types.js";
|
|
22
23
|
import type { SSEInit, TypedSSEStream } from "./sse.js";
|
|
@@ -47,6 +48,11 @@ export interface RequestSource {
|
|
|
47
48
|
/** Present only when materializing a `Request` is non-trivial (the Node lazy source); for a real
|
|
48
49
|
* `Request` passed as the source it's absent and {@link requestOf} returns the source itself. */
|
|
49
50
|
readonly request?: Request;
|
|
51
|
+
/** Optional pre-`Request` reader surface for the transport cap. A source that reads its own
|
|
52
|
+
* transport bytes (the Node lazy source reads the socket) exposes them here so a capped direct
|
|
53
|
+
* read (`c.req.json()`) buffers off the transport instead of routing through the deferred
|
|
54
|
+
* `Request`. `body` must stay the live stream - the cap still guards a chunked body mid-flight. */
|
|
55
|
+
rawBodyReaders?(): RawBodyReaders;
|
|
50
56
|
}
|
|
51
57
|
/** The empty context extension. `NonNullable<unknown>` is `{}` without tripping noBannedTypes. */
|
|
52
58
|
type EmptyContext = NonNullable<unknown>;
|
|
@@ -243,21 +249,37 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
|
|
|
243
249
|
* Mounted responses are outside Nifra's typed route and response-contract checks.
|
|
244
250
|
*/
|
|
245
251
|
mountFetch(path: string, handler: FetchHandler<EnvOf<Ctx>>, options?: MountFetchOptions): this;
|
|
246
|
-
/**
|
|
252
|
+
/**
|
|
253
|
+
* Add a per-request, computed context extension. Order-scoped: it is snapshotted into every route
|
|
254
|
+
* declared *after* this call, and reaches none declared before. One added after the last route
|
|
255
|
+
* (e.g. on the app returned by a route-registering factory) covers nothing - see
|
|
256
|
+
* {@link ServerOptions.unusedScopedHooks}.
|
|
257
|
+
*/
|
|
247
258
|
derive<D extends object>(fn: (context: Context & Ctx) => MaybePromise<D>): Server<R, Ctx & D>;
|
|
248
|
-
/**
|
|
259
|
+
/**
|
|
260
|
+
* Add a static context value. Order-scoped: captured by every route declared *after* this call, and
|
|
261
|
+
* by none before; one added after the last route reaches nothing
|
|
262
|
+
* (see {@link ServerOptions.unusedScopedHooks}).
|
|
263
|
+
*/
|
|
249
264
|
decorate<const K extends string, V>(key: K, value: V): Server<R, Ctx & Record<K, V>>;
|
|
250
265
|
/**
|
|
251
266
|
* Run before routing on the raw request. Return a `Response` to short-circuit, or a replacement
|
|
252
267
|
* `Request` to continue routing with a rewritten method/URL/headers. Global.
|
|
253
268
|
*/
|
|
254
269
|
onRequest(fn: (req: Request, platform?: Platform<EnvOf<Ctx>>) => MaybePromise<OnRequestResult>): this;
|
|
255
|
-
/**
|
|
270
|
+
/**
|
|
271
|
+
* Run after validation, before the handler; a non-`undefined` return short-circuits. Order-scoped:
|
|
272
|
+
* it is snapshotted into every route declared *after* this call and covers none declared before, so
|
|
273
|
+
* one added after the last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
|
|
274
|
+
*/
|
|
256
275
|
beforeHandle(fn: (context: Context & Ctx) => MaybePromise<unknown>): this;
|
|
257
276
|
/**
|
|
258
277
|
* Wrap the matched route lifecycle for subsequent routes. This is intentionally generic over the
|
|
259
278
|
* route output, so wrappers like async context storage do not force Node's direct JSON path through
|
|
260
279
|
* a Web `Response`. The first registered wrapper is outermost.
|
|
280
|
+
*
|
|
281
|
+
* Order-scoped: captured by every route declared *after* this call, none before; one added after the
|
|
282
|
+
* last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
|
|
261
283
|
*/
|
|
262
284
|
around(fn: <T>(context: Context & Ctx, next: () => MaybePromise<T>) => MaybePromise<T>): this;
|
|
263
285
|
/**
|
|
@@ -268,9 +290,13 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
|
|
|
268
290
|
aroundCapability(interceptor: CapabilityInterceptor, options?: AroundCapabilityOptions): this;
|
|
269
291
|
/** Observe token-only admission/execution lifecycle events for subsequent capability routes. */
|
|
270
292
|
observeCapability(observer: EffectLifecycleObserver): this;
|
|
271
|
-
/** Transform the handler's result before it is serialized. Order-scoped
|
|
293
|
+
/** Transform the handler's result before it is serialized. Order-scoped: captured by routes declared
|
|
294
|
+
* *after* this call, none before; one added after the last route reaches nothing (see
|
|
295
|
+
* {@link ServerOptions.unusedScopedHooks}). */
|
|
272
296
|
afterHandle(fn: (result: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
|
|
273
|
-
/** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
|
|
297
|
+
/** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
|
|
298
|
+
* Order-scoped: captured by routes declared *after* this call, none before; one added after the last
|
|
299
|
+
* route reaches nothing (see {@link ServerOptions.unusedScopedHooks}). */
|
|
274
300
|
onError(fn: (error: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
|
|
275
301
|
/** Transform every outgoing response - success, error, 404, 405, short-circuit. Global. */
|
|
276
302
|
onResponse(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
|
|
@@ -352,13 +378,21 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
|
|
|
352
378
|
* called with `this` and its result is returned, so an inline plugin's `derive`/`decorate` thread
|
|
353
379
|
* the added context to handlers defined after `use` (the overload is generic over the concrete
|
|
354
380
|
* `this`). A named plugin already applied is skipped (idempotent dedupe).
|
|
381
|
+
*
|
|
382
|
+
* If the plugin's return type is unpinned - `Server<any, any>`, as a hand-rolled `(app) => app` or a
|
|
383
|
+
* `NifraPlugin<AnyServer, AnyServer>` infers (e.g. an auth plugin whose own types collapsed) - this
|
|
384
|
+
* returns the non-callable {@link PluginTypeCollapsed} instead of silently widening the whole typed
|
|
385
|
+
* client to `any`. `.get()`/`.post()` then fail right here rather than surfacing as `any` hundreds of
|
|
386
|
+
* lines away. Fix at the plugin: build it with {@link defineIdentityPlugin}/{@link defineContextPlugin},
|
|
387
|
+
* or pin its input server type. This mirrors the guard {@link definePlugin} already applies.
|
|
355
388
|
*/
|
|
356
|
-
use<Out extends AnyServer>(plugin: (app: this) => Out): Out;
|
|
389
|
+
use<Out extends AnyServer>(plugin: (app: this) => Out): [ServerTypeUnpinned<Out>] extends [true] ? PluginTypeCollapsed : Out;
|
|
357
390
|
/**
|
|
358
391
|
* Apply a {@link Middleware} bundle - wire each hook it provides to its lifecycle point. Returns
|
|
359
392
|
* `this` (no context-type merging); call it before the routes its `beforeHandle`/`afterHandle`
|
|
360
|
-
* should cover (those are order-scoped; `onRequest`/`onResponse` are global). A
|
|
361
|
-
*
|
|
393
|
+
* should cover (those are order-scoped; `onRequest`/`onResponse` are global). A bundle applied after
|
|
394
|
+
* the last route reaches nothing - {@link ServerOptions.unusedScopedHooks} logs that at seal. A named
|
|
395
|
+
* bundle already applied is skipped (idempotent).
|
|
362
396
|
*/
|
|
363
397
|
use(mw: Middleware): this;
|
|
364
398
|
get<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
|
package/dist/server/server.js
CHANGED
|
@@ -7,7 +7,7 @@ import { compileRouteExecutionPlan, } from "../internal/route-execution.js";
|
|
|
7
7
|
import { isSameOriginRequest } from "../internal/same-origin.js";
|
|
8
8
|
import { compileRoutePattern, decodeRouteParams } from "../router/pattern.js";
|
|
9
9
|
import { EMPTY_PARAMS, Router } from "../router/router.js";
|
|
10
|
-
import { assertByteLimit, markTransportCap, markTrustedBodyFraming } from "./body.js";
|
|
10
|
+
import { assertByteLimit, markTransportCap, markTrustedBodyFraming, } from "./body.js";
|
|
11
11
|
import { resolveClientIp } from "./client-ip.js";
|
|
12
12
|
import { hasLowercaseHeaderKeysMark, headerKeysAllLowercase, markLowercaseHeaderKeys, } from "./header-case.js";
|
|
13
13
|
import { headerObjectOf } from "./headers.js";
|
|
@@ -223,6 +223,82 @@ function isContextlessNoArgArrow(handler) {
|
|
|
223
223
|
// Stable module-level finalizers so `fetch`/`resolveNode` allocate no per-request closures.
|
|
224
224
|
const IDENTITY_RESPONSE = (response) => response;
|
|
225
225
|
const RESPONSE_TIMEOUT = () => jsonError(503, "request_timeout");
|
|
226
|
+
// The unused-order-scoped-hook audit (recorder, seal check, stack capture, message) is a dev-time
|
|
227
|
+
// diagnostic. Every guard below keeps the INLINE literal `process.env.NODE_ENV !== "production"` at the
|
|
228
|
+
// branch - never a shared const holding the folded boolean - because a bundler's `process.env.NODE_ENV`
|
|
229
|
+
// define only dead-code-eliminates the audit when the literal appears at the `if`; Bun does not
|
|
230
|
+
// propagate a module const's value into the branch. Every real production bundler (vite/esbuild/webpack/
|
|
231
|
+
// next, `bun build --production`) injects that define, turning each guard into `hookAuditRuntime &&
|
|
232
|
+
// false`, which folds away - dropping the whole audit and restoring the bare kernel size.
|
|
233
|
+
//
|
|
234
|
+
// `hookAuditRuntime` is the one shared flag: `typeof globalThis.Deno === "undefined"`. Deno ships a
|
|
235
|
+
// node-compat `process`, so `typeof process` does NOT gate it out there, yet reading `process.env`
|
|
236
|
+
// throws `NotCapable` without `--allow-env`. The flag short-circuits before the env read on Deno (audit
|
|
237
|
+
// off) while a production define still folds `<flag> && false` to `false` on every other runtime.
|
|
238
|
+
const hookAuditRuntime = typeof globalThis.Deno === "undefined";
|
|
239
|
+
// This module's own path, captured once from a sentinel stack. Every internal frame of an
|
|
240
|
+
// order-scoped hook push (the public method, its `use()`-bundle dispatcher, the recorder) lives here,
|
|
241
|
+
// so `captureCallerSite` skips anything starting with it and lands on the user's calling frame.
|
|
242
|
+
const SERVER_MODULE_PATH = /* @__PURE__ */ (() => {
|
|
243
|
+
const frame = new Error().stack?.split("\n")[1];
|
|
244
|
+
return frame?.match(/\(?([^()\s]+):\d+:\d+\)?\s*$/)?.[1];
|
|
245
|
+
})();
|
|
246
|
+
/** One `file:line:col` frame for the caller of an order-scoped hook method, for the unused-hook
|
|
247
|
+
* report. Only ever called behind the `unusedScopedHooks !== "off"` guard, so the `Error` (the sole
|
|
248
|
+
* non-trivial cost) is never constructed when the check is disabled. */
|
|
249
|
+
const captureCallerSite = () => {
|
|
250
|
+
const stack = new Error().stack;
|
|
251
|
+
if (stack === undefined)
|
|
252
|
+
return undefined;
|
|
253
|
+
for (const line of stack.split("\n").slice(1)) {
|
|
254
|
+
const frame = line.match(/\(?([^()\s]+:\d+:\d+)\)?\s*$/)?.[1];
|
|
255
|
+
if (frame === undefined)
|
|
256
|
+
continue;
|
|
257
|
+
if (SERVER_MODULE_PATH !== undefined && frame.startsWith(`${SERVER_MODULE_PATH}:`))
|
|
258
|
+
continue;
|
|
259
|
+
return frame;
|
|
260
|
+
}
|
|
261
|
+
return undefined;
|
|
262
|
+
};
|
|
263
|
+
const hookAudit = /* @__PURE__ */ new WeakMap();
|
|
264
|
+
/** Start tracking one server's order-scoped hook pushes (once, from the constructor). */
|
|
265
|
+
const beginHookAudit = (key, policy, hasCustomLogger) => {
|
|
266
|
+
hookAudit.set(key, { policy, hasCustomLogger, sites: [], checked: false });
|
|
267
|
+
};
|
|
268
|
+
/** Record one order-scoped hook push: the route count at that moment (so `routesAtPush === total` at
|
|
269
|
+
* seal means no route was declared after it) and the caller's frame. */
|
|
270
|
+
const recordScopedHook = (key, routesAtPush, kind) => {
|
|
271
|
+
const state = hookAudit.get(key);
|
|
272
|
+
if (state === undefined || state.policy === "off")
|
|
273
|
+
return;
|
|
274
|
+
state.sites.push({ kind, routesAtPush, site: captureCallerSite() });
|
|
275
|
+
};
|
|
276
|
+
/** Run the deadness check exactly once. A hook whose recorded route count equals the final route count
|
|
277
|
+
* had no route declared after it - unambiguously dead, since the scoping feature (a hook that covers
|
|
278
|
+
* only later routes) always leaves at least one such route. Zero-route apps are exempt (different
|
|
279
|
+
* mistake, and the warning would be noise). */
|
|
280
|
+
const sealHookAudit = (key, total, logger) => {
|
|
281
|
+
const state = hookAudit.get(key);
|
|
282
|
+
if (state === undefined || state.checked)
|
|
283
|
+
return;
|
|
284
|
+
state.checked = true;
|
|
285
|
+
if (state.policy === "off" || total === 0)
|
|
286
|
+
return;
|
|
287
|
+
const dead = state.sites.filter((hook) => hook.routesAtPush === total);
|
|
288
|
+
if (dead.length === 0)
|
|
289
|
+
return;
|
|
290
|
+
const detail = dead.map((hook) => ` ${hook.kind}() at ${hook.site ?? "<unknown>"}`).join("\n");
|
|
291
|
+
const message = `[nifra] ${dead.length} order-scoped hook(s) apply to no route - they were added after the ` +
|
|
292
|
+
`last route was registered, and register() snapshots the chain into each route as it is ` +
|
|
293
|
+
`declared:\n${detail}\nMove them before the routes they should cover. App-global hooks ` +
|
|
294
|
+
`(onRequest/onResponse) are not order-scoped and can be added at any time.`;
|
|
295
|
+
if (state.policy === "error")
|
|
296
|
+
throw new FrameworkError("UNUSED_SCOPED_HOOKS", message);
|
|
297
|
+
if (state.hasCustomLogger)
|
|
298
|
+
logger.warn(message);
|
|
299
|
+
else
|
|
300
|
+
console.warn(message);
|
|
301
|
+
};
|
|
226
302
|
/**
|
|
227
303
|
* The inline server. Routes are chainable and fully type-inferred. `derive`/
|
|
228
304
|
* `decorate` extend the handler context (`Ctx`) for routes defined *after* them,
|
|
@@ -380,6 +456,11 @@ export class Server {
|
|
|
380
456
|
this.defaultOnValidationError = options.onValidationError;
|
|
381
457
|
this.bunServer = undefined;
|
|
382
458
|
this.sealed = false;
|
|
459
|
+
// Guarded so a production define strips the call, leaving `beginHookAudit`/`hookAudit` unreferenced
|
|
460
|
+
// for the bundler to eliminate; a non-bundled production run skips it the same way.
|
|
461
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production") {
|
|
462
|
+
beginHookAudit(this, options.unusedScopedHooks ?? "warn", options.logger !== undefined);
|
|
463
|
+
}
|
|
383
464
|
this.derives = [];
|
|
384
465
|
this.decorations = {};
|
|
385
466
|
this.beforeHandleHooks = [];
|
|
@@ -439,16 +520,29 @@ export class Server {
|
|
|
439
520
|
this.fetchMounts.sort((a, b) => b.path.length - a.path.length);
|
|
440
521
|
return this;
|
|
441
522
|
}
|
|
442
|
-
/**
|
|
523
|
+
/**
|
|
524
|
+
* Add a per-request, computed context extension. Order-scoped: it is snapshotted into every route
|
|
525
|
+
* declared *after* this call, and reaches none declared before. One added after the last route
|
|
526
|
+
* (e.g. on the app returned by a route-registering factory) covers nothing - see
|
|
527
|
+
* {@link ServerOptions.unusedScopedHooks}.
|
|
528
|
+
*/
|
|
443
529
|
derive(fn) {
|
|
444
530
|
this.assertConfigurable("derive()");
|
|
445
531
|
this.derives.push(fn);
|
|
532
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
533
|
+
recordScopedHook(this, this.catalog.size, "derive");
|
|
446
534
|
return this;
|
|
447
535
|
}
|
|
448
|
-
/**
|
|
536
|
+
/**
|
|
537
|
+
* Add a static context value. Order-scoped: captured by every route declared *after* this call, and
|
|
538
|
+
* by none before; one added after the last route reaches nothing
|
|
539
|
+
* (see {@link ServerOptions.unusedScopedHooks}).
|
|
540
|
+
*/
|
|
449
541
|
decorate(key, value) {
|
|
450
542
|
this.assertConfigurable("decorate()");
|
|
451
543
|
this.decorations[key] = value;
|
|
544
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
545
|
+
recordScopedHook(this, this.catalog.size, "decorate");
|
|
452
546
|
return this;
|
|
453
547
|
}
|
|
454
548
|
/**
|
|
@@ -462,20 +556,31 @@ export class Server {
|
|
|
462
556
|
this.nodeRequestHooksComplete = false;
|
|
463
557
|
return this;
|
|
464
558
|
}
|
|
465
|
-
/**
|
|
559
|
+
/**
|
|
560
|
+
* Run after validation, before the handler; a non-`undefined` return short-circuits. Order-scoped:
|
|
561
|
+
* it is snapshotted into every route declared *after* this call and covers none declared before, so
|
|
562
|
+
* one added after the last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
|
|
563
|
+
*/
|
|
466
564
|
beforeHandle(fn) {
|
|
467
565
|
this.assertConfigurable("beforeHandle()");
|
|
468
566
|
this.beforeHandleHooks.push(fn);
|
|
567
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
568
|
+
recordScopedHook(this, this.catalog.size, "beforeHandle");
|
|
469
569
|
return this;
|
|
470
570
|
}
|
|
471
571
|
/**
|
|
472
572
|
* Wrap the matched route lifecycle for subsequent routes. This is intentionally generic over the
|
|
473
573
|
* route output, so wrappers like async context storage do not force Node's direct JSON path through
|
|
474
574
|
* a Web `Response`. The first registered wrapper is outermost.
|
|
575
|
+
*
|
|
576
|
+
* Order-scoped: captured by every route declared *after* this call, none before; one added after the
|
|
577
|
+
* last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
|
|
475
578
|
*/
|
|
476
579
|
around(fn) {
|
|
477
580
|
this.assertConfigurable("around()");
|
|
478
581
|
this.aroundHooks.push(fn);
|
|
582
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
583
|
+
recordScopedHook(this, this.catalog.size, "around");
|
|
479
584
|
return this;
|
|
480
585
|
}
|
|
481
586
|
/**
|
|
@@ -494,6 +599,8 @@ export class Server {
|
|
|
494
599
|
}
|
|
495
600
|
// JS timers wrap larger delays to ~1ms, which would unexpectedly deny every effect.
|
|
496
601
|
this.capabilityInterceptors.push(Object.freeze({ interceptor, timeoutMs: Math.min(timeoutMs, 2_147_483_647) }));
|
|
602
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
603
|
+
recordScopedHook(this, this.catalog.size, "aroundCapability");
|
|
497
604
|
return this;
|
|
498
605
|
}
|
|
499
606
|
/** Observe token-only admission/execution lifecycle events for subsequent capability routes. */
|
|
@@ -505,16 +612,24 @@ export class Server {
|
|
|
505
612
|
this.capabilityObservers.push(observer);
|
|
506
613
|
return this;
|
|
507
614
|
}
|
|
508
|
-
/** Transform the handler's result before it is serialized. Order-scoped
|
|
615
|
+
/** Transform the handler's result before it is serialized. Order-scoped: captured by routes declared
|
|
616
|
+
* *after* this call, none before; one added after the last route reaches nothing (see
|
|
617
|
+
* {@link ServerOptions.unusedScopedHooks}). */
|
|
509
618
|
afterHandle(fn) {
|
|
510
619
|
this.assertConfigurable("afterHandle()");
|
|
511
620
|
this.afterHandleHooks.push(fn);
|
|
621
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
622
|
+
recordScopedHook(this, this.catalog.size, "afterHandle");
|
|
512
623
|
return this;
|
|
513
624
|
}
|
|
514
|
-
/** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
|
|
625
|
+
/** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
|
|
626
|
+
* Order-scoped: captured by routes declared *after* this call, none before; one added after the last
|
|
627
|
+
* route reaches nothing (see {@link ServerOptions.unusedScopedHooks}). */
|
|
515
628
|
onError(fn) {
|
|
516
629
|
this.assertConfigurable("onError()");
|
|
517
630
|
this.onErrorHooks.push(fn);
|
|
631
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
632
|
+
recordScopedHook(this, this.catalog.size, "onError");
|
|
518
633
|
return this;
|
|
519
634
|
}
|
|
520
635
|
/** Transform every outgoing response - success, error, 404, 405, short-circuit. Global. */
|
|
@@ -1305,6 +1420,10 @@ export class Server {
|
|
|
1305
1420
|
return this.fetchSource(req, platform);
|
|
1306
1421
|
}
|
|
1307
1422
|
fetchSource(source, platform) {
|
|
1423
|
+
// Seal once on the first request so test servers (no `listen()`) still get the dead-hook check.
|
|
1424
|
+
// After that it is a single boolean read - the per-request cost the option promises to keep at zero.
|
|
1425
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
1426
|
+
sealHookAudit(this, this.catalog.size, this.logger);
|
|
1308
1427
|
// Off path (default): straight through - one property check, no closure, no promise.
|
|
1309
1428
|
if (this.capacityGate === undefined)
|
|
1310
1429
|
return this.fetchSourceInner(source, platform);
|
|
@@ -1391,6 +1510,9 @@ export class Server {
|
|
|
1391
1510
|
return this.resolveNodeSource(req, platform);
|
|
1392
1511
|
}
|
|
1393
1512
|
resolveNodeSource(source, platform, suppliedRuntime) {
|
|
1513
|
+
// Seal once on the Node-direct lane too - it can bypass `fetchSource` entirely (hookless outcome).
|
|
1514
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
1515
|
+
sealHookAudit(this, this.catalog.size, this.logger);
|
|
1394
1516
|
// A paired header-only native hook can preserve the Node-direct JSON/body outcome for successful
|
|
1395
1517
|
// responses. Arbitrary onResponse transforms need a real Web Response, but a buffered outcome can
|
|
1396
1518
|
// be materialized with a direct-write marker and return to the socket path when the hook mutates
|
|
@@ -3192,6 +3314,9 @@ export class Server {
|
|
|
3192
3314
|
// defined`. Exercised by the @nifrajs/deno suite (which runs on a non-Bun runtime).
|
|
3193
3315
|
throw new FrameworkError("BUN_REQUIRED", "listen() uses Bun.serve and runs only on Bun. Serve on Node with @nifrajs/node or on Deno with @nifrajs/deno, or hand app.fetch to any fetch-compatible runtime (Workers, etc.).");
|
|
3194
3316
|
}
|
|
3317
|
+
// Seal before Bun.serve: in `"error"` mode this throws instead of leaving a bound port behind.
|
|
3318
|
+
if (hookAuditRuntime && process.env.NODE_ENV !== "production")
|
|
3319
|
+
sealHookAudit(this, this.catalog.size, this.logger);
|
|
3195
3320
|
// Bun's `Server` is the concrete handle; we expose the stable `RunningServer`
|
|
3196
3321
|
// subset so the public types don't depend on the ambient `Bun` global. The cast
|
|
3197
3322
|
// bridges them - Bun's `.port` is `number | undefined` (undefined only for unix
|