@nifrajs/core 2.14.1 → 3.2.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.
Files changed (226) hide show
  1. package/README.md +25 -0
  2. package/dist/assurance.d.ts +16 -8
  3. package/dist/assurance.d.ts.map +1 -1
  4. package/dist/assurance.js +33 -0
  5. package/dist/assurance.js.map +1 -1
  6. package/dist/durable-adapters.d.ts.map +1 -1
  7. package/dist/durable-adapters.js +26 -3
  8. package/dist/durable-adapters.js.map +1 -1
  9. package/dist/durable-approval.d.ts +56 -0
  10. package/dist/durable-approval.d.ts.map +1 -0
  11. package/dist/durable-approval.js +233 -0
  12. package/dist/durable-approval.js.map +1 -0
  13. package/dist/durable-effect.d.ts +42 -0
  14. package/dist/durable-effect.d.ts.map +1 -0
  15. package/dist/durable-effect.js +234 -0
  16. package/dist/durable-effect.js.map +1 -0
  17. package/dist/durable-execution.d.ts +8 -346
  18. package/dist/durable-execution.d.ts.map +1 -1
  19. package/dist/durable-execution.js +7 -1150
  20. package/dist/durable-execution.js.map +1 -1
  21. package/dist/durable-saga.d.ts +94 -0
  22. package/dist/durable-saga.d.ts.map +1 -0
  23. package/dist/durable-saga.js +550 -0
  24. package/dist/durable-saga.js.map +1 -0
  25. package/dist/edge-kit.d.ts +27 -0
  26. package/dist/edge-kit.d.ts.map +1 -0
  27. package/dist/edge-kit.js +24 -0
  28. package/dist/edge-kit.js.map +1 -0
  29. package/dist/errors.d.ts +1 -1
  30. package/dist/errors.d.ts.map +1 -1
  31. package/dist/errors.js.map +1 -1
  32. package/dist/index.d.ts +23 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +18 -2
  35. package/dist/index.js.map +1 -1
  36. package/dist/internal/durable-approval-protocol.d.ts +1 -1
  37. package/dist/internal/durable-approval-protocol.d.ts.map +1 -1
  38. package/dist/internal/durable-effect-protocol.d.ts +1 -1
  39. package/dist/internal/durable-effect-protocol.d.ts.map +1 -1
  40. package/dist/internal/durable-saga-protocol.d.ts +1 -1
  41. package/dist/internal/durable-saga-protocol.d.ts.map +1 -1
  42. package/dist/internal/durable-shared.d.ts +26 -0
  43. package/dist/internal/durable-shared.d.ts.map +1 -0
  44. package/dist/internal/durable-shared.js +131 -0
  45. package/dist/internal/durable-shared.js.map +1 -0
  46. package/dist/internal/durable-types.d.ts +159 -0
  47. package/dist/internal/durable-types.d.ts.map +1 -0
  48. package/dist/internal/durable-types.js +2 -0
  49. package/dist/internal/durable-types.js.map +1 -0
  50. package/dist/internal/route-compiler.d.ts +61 -0
  51. package/dist/internal/route-compiler.d.ts.map +1 -0
  52. package/dist/internal/route-compiler.js +121 -0
  53. package/dist/internal/route-compiler.js.map +1 -0
  54. package/dist/internal/route-execution.d.ts +17 -9
  55. package/dist/internal/route-execution.d.ts.map +1 -1
  56. package/dist/internal/route-execution.js +4 -18
  57. package/dist/internal/route-execution.js.map +1 -1
  58. package/dist/internal/route-lanes.d.ts +35 -0
  59. package/dist/internal/route-lanes.d.ts.map +1 -0
  60. package/dist/internal/route-lanes.js +150 -0
  61. package/dist/internal/route-lanes.js.map +1 -0
  62. package/dist/internal/route-program.d.ts +67 -0
  63. package/dist/internal/route-program.d.ts.map +1 -0
  64. package/dist/internal/route-program.js +199 -0
  65. package/dist/internal/route-program.js.map +1 -0
  66. package/dist/response-observer.d.ts +25 -0
  67. package/dist/response-observer.d.ts.map +1 -0
  68. package/dist/response-observer.js +40 -0
  69. package/dist/response-observer.js.map +1 -0
  70. package/dist/security/baseline.d.ts +68 -0
  71. package/dist/security/baseline.d.ts.map +1 -0
  72. package/dist/security/baseline.js +118 -0
  73. package/dist/security/baseline.js.map +1 -0
  74. package/dist/server/bare-error-lane.d.ts +26 -0
  75. package/dist/server/bare-error-lane.d.ts.map +1 -0
  76. package/dist/server/bare-error-lane.js +60 -0
  77. package/dist/server/bare-error-lane.js.map +1 -0
  78. package/dist/server/body-lane.d.ts +13 -0
  79. package/dist/server/body-lane.d.ts.map +1 -0
  80. package/dist/server/body-lane.js +134 -0
  81. package/dist/server/body-lane.js.map +1 -0
  82. package/dist/server/body.d.ts +7 -0
  83. package/dist/server/body.d.ts.map +1 -1
  84. package/dist/server/body.js +7 -0
  85. package/dist/server/body.js.map +1 -1
  86. package/dist/server/bridge-markers.d.ts +25 -0
  87. package/dist/server/bridge-markers.d.ts.map +1 -0
  88. package/dist/server/bridge-markers.js +25 -0
  89. package/dist/server/bridge-markers.js.map +1 -0
  90. package/dist/server/context.d.ts +6 -1
  91. package/dist/server/context.d.ts.map +1 -1
  92. package/dist/server/contract.d.ts +40 -14
  93. package/dist/server/contract.d.ts.map +1 -1
  94. package/dist/server/contract.js +7 -0
  95. package/dist/server/contract.js.map +1 -1
  96. package/dist/server/cookies.d.ts.map +1 -1
  97. package/dist/server/cookies.js +16 -2
  98. package/dist/server/cookies.js.map +1 -1
  99. package/dist/server/header-case.d.ts.map +1 -1
  100. package/dist/server/header-case.js +2 -1
  101. package/dist/server/header-case.js.map +1 -1
  102. package/dist/server/http.d.ts +36 -3
  103. package/dist/server/http.d.ts.map +1 -1
  104. package/dist/server/http.js +49 -3
  105. package/dist/server/http.js.map +1 -1
  106. package/dist/server/install.d.ts +6 -8
  107. package/dist/server/install.d.ts.map +1 -1
  108. package/dist/server/install.js +7 -0
  109. package/dist/server/install.js.map +1 -1
  110. package/dist/server/node-outcome-hook.d.ts +2 -1
  111. package/dist/server/node-outcome-hook.d.ts.map +1 -1
  112. package/dist/server/node-outcome-hook.js.map +1 -1
  113. package/dist/server/node-outcome.d.ts +17 -2
  114. package/dist/server/node-outcome.d.ts.map +1 -1
  115. package/dist/server/node-outcome.js +37 -3
  116. package/dist/server/node-outcome.js.map +1 -1
  117. package/dist/server/plugin.d.ts +2 -2
  118. package/dist/server/plugin.d.ts.map +1 -1
  119. package/dist/server/plugin.js +6 -1
  120. package/dist/server/plugin.js.map +1 -1
  121. package/dist/server/query.d.ts +7 -1
  122. package/dist/server/query.d.ts.map +1 -1
  123. package/dist/server/query.js +8 -3
  124. package/dist/server/query.js.map +1 -1
  125. package/dist/server/registry.d.ts +40 -12
  126. package/dist/server/registry.d.ts.map +1 -1
  127. package/dist/server/request-context.d.ts +2 -13
  128. package/dist/server/request-context.d.ts.map +1 -1
  129. package/dist/server/request-context.js +18 -159
  130. package/dist/server/request-context.js.map +1 -1
  131. package/dist/server/respond.d.ts.map +1 -1
  132. package/dist/server/respond.js +58 -4
  133. package/dist/server/respond.js.map +1 -1
  134. package/dist/server/response-contract-lane.d.ts.map +1 -1
  135. package/dist/server/response-contract-lane.js +5 -2
  136. package/dist/server/response-contract-lane.js.map +1 -1
  137. package/dist/server/response-observer-runtime.d.ts +20 -0
  138. package/dist/server/response-observer-runtime.d.ts.map +1 -0
  139. package/dist/server/response-observer-runtime.js +95 -0
  140. package/dist/server/response-observer-runtime.js.map +1 -0
  141. package/dist/server/runtime-core.d.ts +76 -0
  142. package/dist/server/runtime-core.d.ts.map +1 -1
  143. package/dist/server/runtime-core.js +42 -1
  144. package/dist/server/runtime-core.js.map +1 -1
  145. package/dist/server/server-types.d.ts +6 -1
  146. package/dist/server/server-types.d.ts.map +1 -1
  147. package/dist/server/server.d.ts +158 -116
  148. package/dist/server/server.d.ts.map +1 -1
  149. package/dist/server/server.js +707 -844
  150. package/dist/server/server.js.map +1 -1
  151. package/dist/server/validation.d.ts +5 -0
  152. package/dist/server/validation.d.ts.map +1 -0
  153. package/dist/server/validation.js +13 -0
  154. package/dist/server/validation.js.map +1 -0
  155. package/dist/server/websocket.d.ts +20 -4
  156. package/dist/server/websocket.d.ts.map +1 -1
  157. package/dist/server/websocket.js +81 -11
  158. package/dist/server/websocket.js.map +1 -1
  159. package/dist/server/ws-bun.d.ts +12 -4
  160. package/dist/server/ws-bun.d.ts.map +1 -1
  161. package/dist/server/ws-bun.js +50 -16
  162. package/dist/server/ws-bun.js.map +1 -1
  163. package/dist/server/ws-hook.d.ts +3 -2
  164. package/dist/server/ws-hook.d.ts.map +1 -1
  165. package/dist/server.d.ts +3 -2
  166. package/dist/server.d.ts.map +1 -1
  167. package/dist/server.js +2 -1
  168. package/dist/server.js.map +1 -1
  169. package/dist/single-copy-register.d.ts +2 -0
  170. package/dist/single-copy-register.d.ts.map +1 -0
  171. package/dist/single-copy-register.js +24 -0
  172. package/dist/single-copy-register.js.map +1 -0
  173. package/dist/single-copy.d.ts +156 -0
  174. package/dist/single-copy.d.ts.map +1 -0
  175. package/dist/single-copy.js +472 -0
  176. package/dist/single-copy.js.map +1 -0
  177. package/package.json +28 -3
  178. package/src/assurance.ts +58 -1
  179. package/src/durable-adapters.ts +20 -0
  180. package/src/durable-approval.ts +281 -0
  181. package/src/durable-effect.ts +300 -0
  182. package/src/durable-execution.ts +8 -1627
  183. package/src/durable-saga.ts +744 -0
  184. package/src/edge-kit.ts +27 -0
  185. package/src/errors.ts +1 -0
  186. package/src/index.ts +129 -2
  187. package/src/internal/durable-approval-protocol.ts +1 -1
  188. package/src/internal/durable-effect-protocol.ts +1 -1
  189. package/src/internal/durable-saga-protocol.ts +1 -1
  190. package/src/internal/durable-shared.ts +157 -0
  191. package/src/internal/durable-types.ts +194 -0
  192. package/src/internal/route-compiler.ts +234 -0
  193. package/src/internal/route-execution.ts +53 -96
  194. package/src/internal/route-lanes.ts +221 -0
  195. package/src/internal/route-program.ts +404 -0
  196. package/src/response-observer.ts +64 -0
  197. package/src/security/baseline.ts +172 -0
  198. package/src/server/bare-error-lane.ts +77 -0
  199. package/src/server/body-lane.ts +203 -0
  200. package/src/server/body.ts +8 -0
  201. package/src/server/bridge-markers.ts +24 -0
  202. package/src/server/context.ts +6 -1
  203. package/src/server/contract.ts +70 -20
  204. package/src/server/cookies.ts +16 -2
  205. package/src/server/header-case.ts +3 -1
  206. package/src/server/http.ts +53 -3
  207. package/src/server/install.ts +14 -0
  208. package/src/server/node-outcome-hook.ts +2 -1
  209. package/src/server/node-outcome.ts +44 -3
  210. package/src/server/plugin.ts +11 -5
  211. package/src/server/query.ts +10 -4
  212. package/src/server/registry.ts +71 -16
  213. package/src/server/request-context.ts +13 -216
  214. package/src/server/respond.ts +71 -3
  215. package/src/server/response-contract-lane.ts +6 -2
  216. package/src/server/response-observer-runtime.ts +135 -0
  217. package/src/server/runtime-core.ts +124 -1
  218. package/src/server/server-types.ts +6 -1
  219. package/src/server/server.ts +1446 -1485
  220. package/src/server/validation.ts +19 -0
  221. package/src/server/websocket.ts +127 -17
  222. package/src/server/ws-bun.ts +67 -15
  223. package/src/server/ws-hook.ts +3 -2
  224. package/src/server.ts +8 -2
  225. package/src/single-copy-register.ts +24 -0
  226. package/src/single-copy.ts +526 -0
@@ -2,19 +2,21 @@ import { type RequestBudget } from "../budget.js";
2
2
  import type { EffectLifecycleObserver } from "../effect-lifecycle.js";
3
3
  import type { Version } from "../index.js";
4
4
  import { type AroundCapabilityOptions, type CapabilityInterceptor } from "../internal/capability-runtime.js";
5
+ import type { ResponseObserverPlugin } from "../response-observer.js";
5
6
  import { type Method } from "../router/router.js";
6
7
  import type { InferOutput, StandardSchemaV1 } from "../schema/standard.js";
7
8
  import { type RawBodyReaders } from "./body.js";
8
9
  import type { Context, Platform, ResponseControls, RouteSchema } from "./context.js";
9
10
  import { type UrlParts } from "./http.js";
10
11
  import { type NodeServeOutcome } from "./node-outcome.js";
11
- import { type NodeOutcomeRuntime, type NodeRequestContext, type NodeRequestHook, type NodeResponseContext, type NodeResponseHook, type ResponseBodyHook, type ResponseBodyReplacement, type ResponseHeadersHook, type ResponseHeadersView } from "./node-outcome-hook.js";
12
+ import type { NodeOutcomeRuntime, NodeRequestContext, NodeRequestHook, NodeResponseContext, NodeResponseHook, ResponseBodyHook, ResponseBodyReplacement, ResponseHeadersHook, ResponseHeadersView } from "./node-outcome-hook.js";
12
13
  import { type QueryValue, queryObjectOf, searchOf } from "./query.js";
13
14
  import type { ResponseContractRuntime } from "./response-contract-lane.js";
14
- import { CONTEXT_SEARCH, CONTEXT_SET, type HandlerResult } from "./runtime-core.js";
15
+ import type { ResponseObserverMethods, ResponseObserverRuntime } from "./response-observer-runtime.js";
16
+ import { CONTEXT_SEARCH, CONTEXT_SET, type HandlerResult, type ResponseResult, type StatusResponse } from "./runtime-core.js";
15
17
  export type { NodeRequestContext, NodeRequestHook, NodeResponseContext, NodeResponseHook, NodeServeOutcome, ResponseBodyHook, ResponseBodyReplacement, ResponseHeadersHook, ResponseHeadersView, };
16
18
  import type { IdempotencyRuntime } from "./idempotency-lane.js";
17
- import { INSTALL_EFFECT_LEDGER, INSTALL_IDEMPOTENCY, INSTALL_MCP, INSTALL_NODE_DIRECT, INSTALL_RESPONSE_CONTRACT, INSTALL_SSE, INSTALL_WS } from "./install.js";
19
+ import { INSTALL_EFFECT_LEDGER, INSTALL_IDEMPOTENCY, INSTALL_MCP, INSTALL_NODE_DIRECT, INSTALL_RESPONSE_CONTRACT, INSTALL_RESPONSE_OBSERVER, INSTALL_SSE, INSTALL_WS, RESOLVE_NODE_MOUNT } from "./install.js";
18
20
  import type { EffectLedgerRuntime } from "./ledger-lane.js";
19
21
  import type { McpRuntime } from "./mcp-hook.js";
20
22
  import type { ContextPlugin, IdentityPlugin, PluginTypeCollapsed, ServerTypeUnpinned } from "./plugin.js";
@@ -87,22 +89,47 @@ export interface RawContext {
87
89
  readonly boundedJson: <T = unknown>(maxBytes?: number) => Promise<T>;
88
90
  }
89
91
  export type OnRequestResult = Response | Request | undefined;
92
+ /** Structural native mount contract. The serving adapter owns the concrete Node request/response
93
+ * types; the kernel only selects a handler after proving that taking this lane cannot skip its
94
+ * global lifecycle. `false` means the capability was unavailable at runtime, so the adapter must
95
+ * retry the ordinary Web mount with the same untouched source. */
96
+ type NativeMountHandler = (request: unknown, response: unknown, platform?: Platform) => MaybePromise<undefined | false>;
97
+ interface NativeMountSelection {
98
+ readonly handler: NativeMountHandler;
99
+ readonly path: string;
100
+ readonly stripPrefix: boolean;
101
+ }
90
102
  /** The handler's permitted return type. When the route declares a `response` schema, the return is
91
- * constrained to the contract's type (or a raw `Response`) - so the implementation can't drift from the
92
- * declared contract. Without a `response` schema it's unconstrained (`HandlerResult`), exactly as before. */
103
+ * constrained to the contract's type (a raw `Response`, or a `status(...)` early exit - both are
104
+ * control flow, not the declared payload) - so the implementation can't drift from the declared
105
+ * contract. Without a `response` schema it's unconstrained (`HandlerResult`), exactly as before. */
93
106
  type ResponseOf<S extends RouteSchema> = S extends {
94
107
  response: infer R extends StandardSchemaV1;
95
- } ? InferOutput<R> | Response : HandlerResult;
108
+ } ? InferOutput<R> | Response | ResponseResult : HandlerResult;
109
+ /** A typed status result is control flow, not a context extension. */
110
+ type StatusResponseOf<T> = T extends StatusResponse<number, unknown> ? T : never;
111
+ type ContextExtensionPart<T> = T extends object ? T : EmptyContext;
112
+ type ContextExtensionOf<T> = [Exclude<Awaited<T>, Response | ResponseResult>] extends [never] ? EmptyContext : ContextExtensionPart<Exclude<Awaited<T>, Response | ResponseResult>>;
113
+ /** Keep concrete lifecycle return values for route inference, but don't let an untyped hook widen every route to unknown. */
114
+ type HookOutputOf<T> = unknown extends Awaited<T> ? never : Exclude<Awaited<T>, void>;
115
+ type ReturnOfHookField<M, K extends PropertyKey> = M extends {
116
+ readonly [P in K]?: infer F;
117
+ } ? F extends (...args: never[]) => infer R ? HookOutputOf<R> : never : never;
118
+ type MiddlewareOutputOf<M> = ReturnOfHookField<M, "beforeHandle"> | ReturnOfHookField<M, "afterHandle"> | ReturnOfHookField<M, "onError"> | ReturnOfHookField<M, "around">;
96
119
  /**
97
120
  * Public handler shape: context typed from the path, the (optional) schema, and
98
121
  * any accumulated middleware context `Ctx` (from `derive`/`decorate`).
99
122
  */
100
123
  export type Handler<Path extends string, S extends RouteSchema = RouteSchema, Ctx = EmptyContext> = (ctx: Context<Path, S> & Ctx) => MaybePromise<ResponseOf<S>>;
101
124
  export type { AdmissionController, AdmissionDecision, FetchHandler, McpPromptDescriptor, McpResourceDescriptor, Middleware, MountFetchOptions, PromptArgument, PromptMessage, ResponseFinalization, RouteDescriptor, RunningServer, ServerOptions, StopHook, ToolAnnotations, };
102
- export type AnyServer = Server<any, any>;
125
+ export type AnyServer = Server<any, any, any>;
103
126
  export { type ContextPlugin, type DefinePluginResult, defineContextPlugin, defineIdentityPlugin, definePlugin, defineRouterPlugin, type NifraPlugin, type PluginTypeCollapsed, } from "./plugin.js";
104
127
  export type { IdentityPlugin };
105
128
  export { pathnameOf, urlPartsOf } from "./http.js";
129
+ /** The 422 as plain data - the shape every lane's response wrapper takes, so a rejected body costs
130
+ * what an accepted one costs: on Node it is written straight to the socket with a `content-length`
131
+ * instead of being built as a `Response` and drained back out. */
132
+ export { plainValidationError } from "./validation.js";
106
133
  export { type QueryValue, queryObjectOf, searchOf };
107
134
  /** `ctx.set` carrying the lazy backings (`_headers`, `_cookies`) so `toResponse` can skip allocating
108
135
  * anything when no handler touched `c.set.*`. Server-internal. */
@@ -126,7 +153,7 @@ export type NifraFeatureVersion = FeatureVersionOf<Version>;
126
153
  * app.decorate("db", db).derive((c) => ({ user: auth(c) }))
127
154
  * .get("/me", (c) => c.user) // c.user + c.db are typed
128
155
  */
129
- export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyContext> {
156
+ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyContext, HookOutput = never> {
130
157
  /**
131
158
  * Which copy of `@nifrajs/core` declared this type. Two copies in one build (a linked sibling repo,
132
159
  * a hoisting split) produce two unrelated `Server` types whose assignment error is a wall of
@@ -145,6 +172,13 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
145
172
  * Created by the first `app.ws()` via the `@nifrajs/core/ws` runtime - `undefined` until then, so a
146
173
  * no-WebSocket app never constructs (or bundles) it. */
147
174
  private topics;
175
+ /** True once any `app.ws()` route sets `validateSend: true` - the one case where a broadcast frame
176
+ * is validated (and possibly dropped) per socket, so `app.publish` must stay on the JS registry loop
177
+ * rather than delegate to Bun's native `server.publish`. */
178
+ private wsHasValidatedSend;
179
+ /** Bun's native topic broadcast, bound by `listen()` in native-pubsub mode; `app.publish` uses it
180
+ * instead of the JS registry. `undefined` off Bun, before `listen()`, or with a validated-send route. */
181
+ private nativePublish;
148
182
  private readonly maxBodyBytes;
149
183
  private readonly protoPoisoning;
150
184
  /** `trustBodyFraming`: mark every `app.fetch` request as runtime-framed (see ServerOptions). */
@@ -254,14 +288,19 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
254
288
  * declared *after* this call, and reaches none declared before. One added after the last route
255
289
  * (e.g. on the app returned by a route-registering factory) covers nothing - see
256
290
  * {@link ServerOptions.unusedScopedHooks}.
291
+ *
292
+ * Returning a `status(...)` (or a `Response`) instead of an extension ends the request there - the
293
+ * guard shape, and the cheap one: it renders as plain data on the same lane a handler's return
294
+ * takes, where `throw new Response(...)` pays ~40% of the rejection lane to build the object. That
295
+ * branch is control flow, so it does not widen the derived context type.
257
296
  */
258
- derive<D extends object>(fn: (context: Context & Ctx) => MaybePromise<D>): Server<R, Ctx & D>;
297
+ derive<H extends (context: Context & Ctx) => MaybePromise<unknown>>(fn: H): Server<R, Ctx & ContextExtensionOf<ReturnType<H>>, HookOutput | StatusResponseOf<Awaited<ReturnType<H>>>>;
259
298
  /**
260
299
  * Add a static context value. Order-scoped: captured by every route declared *after* this call, and
261
300
  * by none before; one added after the last route reaches nothing
262
301
  * (see {@link ServerOptions.unusedScopedHooks}).
263
302
  */
264
- decorate<const K extends string, V>(key: K, value: V): Server<R, Ctx & Record<K, V>>;
303
+ decorate<const K extends string, V>(key: K, value: V): Server<R, Ctx & Record<K, V>, HookOutput>;
265
304
  /**
266
305
  * Run before routing on the raw request. Return a `Response` to short-circuit, or a replacement
267
306
  * `Request` to continue routing with a rewritten method/URL/headers. Global.
@@ -272,7 +311,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
272
311
  * it is snapshotted into every route declared *after* this call and covers none declared before, so
273
312
  * one added after the last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
274
313
  */
275
- beforeHandle(fn: (context: Context & Ctx) => MaybePromise<unknown>): this;
314
+ beforeHandle<H extends (context: Context & Ctx) => MaybePromise<unknown>>(fn: H): Server<R, Ctx, HookOutput | HookOutputOf<ReturnType<H>>>;
276
315
  /**
277
316
  * Wrap the matched route lifecycle for subsequent routes. This is intentionally generic over the
278
317
  * route output, so wrappers like async context storage do not force Node's direct JSON path through
@@ -281,7 +320,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
281
320
  * Order-scoped: captured by every route declared *after* this call, none before; one added after the
282
321
  * last route reaches nothing (see {@link ServerOptions.unusedScopedHooks}).
283
322
  */
284
- around(fn: <T>(context: Context & Ctx, next: () => MaybePromise<T>) => MaybePromise<T>): this;
323
+ around<H extends (context: Context & Ctx, next: () => MaybePromise<unknown>) => MaybePromise<unknown>>(fn: H): Server<R, Ctx, HookOutput | HookOutputOf<ReturnType<H>>>;
285
324
  /**
286
325
  * Asynchronously admit each subsequent `executeCapability()` call before its owned effect runs.
287
326
  * Interceptors receive token-only metadata plus an abort signal and must call `next()` exactly once
@@ -293,11 +332,11 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
293
332
  /** Transform the handler's result before it is serialized. Order-scoped: captured by routes declared
294
333
  * *after* this call, none before; one added after the last route reaches nothing (see
295
334
  * {@link ServerOptions.unusedScopedHooks}). */
296
- afterHandle(fn: (result: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
335
+ afterHandle<H extends (result: unknown, context: Context & Ctx) => MaybePromise<unknown>>(fn: H): Server<R, Ctx, HookOutput | HookOutputOf<ReturnType<H>>>;
297
336
  /** Handle a thrown error; a non-`undefined` return becomes the response (else the default 500).
298
337
  * Order-scoped: captured by routes declared *after* this call, none before; one added after the last
299
338
  * route reaches nothing (see {@link ServerOptions.unusedScopedHooks}). */
300
- onError(fn: (error: unknown, context: Context & Ctx) => MaybePromise<unknown>): this;
339
+ onError<H extends (error: unknown, context: Context & Ctx) => MaybePromise<unknown>>(fn: H): Server<R, Ctx, HookOutput | HookOutputOf<ReturnType<H>>>;
301
340
  /** Transform every outgoing response - success, error, 404, 405, short-circuit. Global. */
302
341
  onResponse(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
303
342
  /**
@@ -328,43 +367,11 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
328
367
  * hook owns part of the header state - into a hook that runs in the right order. */
329
368
  private addStaticResponseHeaders;
330
369
  private enableResponseBodyTagging;
331
- /**
332
- * Register a response transform for raw/streamed Responses. Framework-serialized payloads stay on
333
- * the body tier; this hook is only entered for untagged Responses (streams, proxied fetches, and
334
- * framework-generated error responses). A no-op native twin keeps buffered JSON on the direct lane.
335
- */
336
- onResponseRaw(fn: (response: Response, req: Request) => MaybePromise<Response>): this;
337
- /**
338
- * Register a PORTABLE header-only response hook - one implementation, fast on every runtime.
339
- *
340
- * The hook receives a mutable case-insensitive header view, a minimal request view, and the
341
- * status. On the Web serving paths it runs inside the normal `onResponse` walk against the
342
- * response's own `Headers` (mutating in place - no clone). On Node it self-pairs as a native
343
- * response hook against the outcome's plain header record, so registering one NEVER forces the
344
- * Node adapter off its direct socket writer the way a full `onResponse(res: Response)` hook does.
345
- * Prefer this over `onResponse` whenever the middleware only reads/writes headers.
346
- */
347
- onResponseHeaders(fn: ResponseHeadersHook): this;
348
- /**
349
- * Register a PORTABLE post-serialization body hook - the payload tier. The hook receives the
350
- * FINAL framework-serialized bytes (plus the mutable header view and status) and may return
351
- * replacement bytes; `undefined` keeps the body. On the Node direct writer the bytes come
352
- * straight off the outcome record; on the Web serving paths they ride the framework-built
353
- * Response as a tag, so no body stream is ever drained on any runtime. A handler-returned raw
354
- * `Response` (proxied fetch, SSE, streamed SSR) is skipped by contract - transforming those is
355
- * what the full `onResponse` hook is for.
356
- */
357
- onResponseBody(fn: ResponseBodyHook): this;
370
+ private responseObserverMethods;
358
371
  /** Observe the terminal response after all transformations. Observers are ordered and fail-open. */
359
372
  onResponseFinalized(fn: (outcome: ResponseFinalization, req: Request) => MaybePromise<void>): this;
360
- /**
361
- * Apply a type-**identity** plugin ({@link IdentityPlugin}, from {@link defineIdentityPlugin}) - it
362
- * registers routes/hooks but doesn't change the types, so this returns `this` with the route registry
363
- * and context fully intact. This overload exists specifically so a *named* identity plugin (e.g.
364
- * `@nifrajs/better-auth`) threads the registry: its `& { pluginName }` intersection would otherwise
365
- * defeat the generic inference of the transforming overload below and collapse the result to `any`.
366
- */
367
- use(plugin: IdentityPlugin): this;
373
+ /** Enable the opt-in portable response observer methods. */
374
+ use(plugin: ResponseObserverPlugin): this & ResponseObserverMethods;
368
375
  /**
369
376
  * Apply a **context** plugin ({@link ContextPlugin}, from {@link defineContextPlugin}) - it adds `D`
370
377
  * to the handler context and changes nothing else, so the route registry `R` and the existing context
@@ -372,7 +379,15 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
372
379
  * `(app: this) => Out` overload below cannot infer through a *generic* plugin signature: it erases the
373
380
  * plugin's own type parameters to their constraints, which silently widens `R` to `Registry`.
374
381
  */
375
- use<D extends object>(plugin: ContextPlugin<D>): Server<R, Ctx & D>;
382
+ use<D extends object>(plugin: ContextPlugin<D>): Server<R, Ctx & D, HookOutput>;
383
+ /**
384
+ * Apply a type-**identity** plugin ({@link IdentityPlugin}, from {@link defineIdentityPlugin}) - it
385
+ * registers routes/hooks but doesn't change the types, so this returns `this` with the route registry
386
+ * and context fully intact. This overload exists specifically so a named identity plugin (e.g.
387
+ * `@nifrajs/better-auth`) threads the registry: its `& { pluginName }` intersection would otherwise
388
+ * defeat the generic inference of the transforming overload below and collapse the result to `any`.
389
+ */
390
+ use<AddedHookOutput = never>(plugin: IdentityPlugin<AddedHookOutput>): Server<R, Ctx, HookOutput | AddedHookOutput>;
376
391
  /**
377
392
  * Apply a **plugin function** - `(app) => app`, typically built with {@link definePlugin}. It's
378
393
  * called with `this` and its result is returned, so an inline plugin's `derive`/`decorate` thread
@@ -394,9 +409,10 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
394
409
  * the last route reaches nothing - {@link ServerOptions.unusedScopedHooks} logs that at seal. A named
395
410
  * bundle already applied is skipped (idempotent).
396
411
  */
412
+ use<M extends Middleware>(mw: M): Server<R, Ctx, HookOutput | MiddlewareOutputOf<M>>;
397
413
  use(mw: Middleware): this;
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>;
399
- get<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
414
+ 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>, HookOutput>>, Ctx, HookOutput>;
415
+ get<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
400
416
  /**
401
417
  * Register a **typed SSE route** - a GET endpoint streaming `text/event-stream` whose event
402
418
  * payloads are contracted by `schema.sse`. The handler receives the validated context plus a
@@ -420,15 +436,15 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
420
436
  */
421
437
  sse<Path extends string, S extends RouteSchema & {
422
438
  sse: StandardSchemaV1;
423
- }>(path: Path, schema: S, run: (context: Context<Path, S> & Ctx, stream: TypedSSEStream<InferOutput<S["sse"]>>) => void | Promise<void>, init?: SSEInit): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, Response>>, Ctx>;
424
- post<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
425
- post<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
426
- put<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "PUT", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
427
- put<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "PUT", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
428
- patch<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "PATCH", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
429
- patch<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "PATCH", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
430
- delete<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "DELETE", Path, RouteInfoFor<Path, S, OutputOf<H>>>, Ctx>;
431
- delete<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "DELETE", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>>>, Ctx>;
439
+ }>(path: Path, schema: S, run: (context: Context<Path, S> & Ctx, stream: TypedSSEStream<InferOutput<S["sse"]>>) => void | Promise<void>, init?: SSEInit): Server<AddRoute<R, "GET", Path, RouteInfoFor<Path, S, Response, HookOutput>>, Ctx, HookOutput>;
440
+ post<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, S, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
441
+ post<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "POST", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
442
+ put<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "PUT", Path, RouteInfoFor<Path, S, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
443
+ put<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "PUT", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
444
+ patch<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "PATCH", Path, RouteInfoFor<Path, S, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
445
+ patch<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "PATCH", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
446
+ delete<Path extends string, S extends RouteSchema, H extends Handler<Path, S, Ctx>>(path: Path, schema: S, handler: H): Server<AddRoute<R, "DELETE", Path, RouteInfoFor<Path, S, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
447
+ delete<Path extends string, H extends Handler<Path, RouteSchema, Ctx>>(path: Path, handler: H): Server<AddRoute<R, "DELETE", Path, RouteInfoFor<Path, Record<never, never>, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
432
448
  /**
433
449
  * Declare an **MCP tool** an agent can call (via `nifra mcp`, or a mounted MCP endpoint): a typed
434
450
  * `POST /_nifra/tool/<name>` route whose `input`/`output` schemas contract the call and surface in
@@ -452,7 +468,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
452
468
  response: S["output"];
453
469
  } : {
454
470
  body: S["input"];
455
- }, OutputOf<H>>>, Ctx>;
471
+ }, OutputOf<H>, HookOutput>>, Ctx, HookOutput>;
456
472
  /**
457
473
  * Declare an MCP **resource** - read-only data an agent can fetch through `nifra mcp` (app config, a
458
474
  * generated document, …). `read` runs in the app process, so capture whatever app state it needs in the
@@ -463,7 +479,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
463
479
  readonly name: string;
464
480
  readonly description?: string;
465
481
  readonly mimeType?: string;
466
- }, read: McpResourceDescriptor["read"]): Server<R, Ctx>;
482
+ }, read: McpResourceDescriptor["read"]): Server<R, Ctx, HookOutput>;
467
483
  /**
468
484
  * Declare an MCP **prompt** - a reusable prompt template an agent can fetch through `nifra mcp`.
469
485
  * `handler` receives the caller's arguments and returns the rendered messages.
@@ -471,7 +487,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
471
487
  prompt(name: string, config: {
472
488
  readonly description: string;
473
489
  readonly arguments?: readonly PromptArgument[];
474
- }, handler: McpPromptDescriptor["handler"]): Server<R, Ctx>;
490
+ }, handler: McpPromptDescriptor["handler"]): Server<R, Ctx, HookOutput>;
475
491
  /** The MCP resources declared via {@link resource} - enumerated by `nifra mcp`. */
476
492
  mcpResources(): readonly McpResourceDescriptor[];
477
493
  /** The MCP prompts declared via {@link prompt} - enumerated by `nifra mcp`. */
@@ -491,7 +507,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
491
507
  *
492
508
  * app.ws("/chat", { open: (ws) => ws.send("hi"), message: (ws, data) => ws.send(data) })
493
509
  */
494
- ws<Data = unknown, Schema extends StandardSchemaV1 | undefined = undefined, Send extends StandardSchemaV1 | undefined = undefined, Path extends string = string>(path: Path, handler: WebSocketHandler<Data, EnvOf<Ctx>, Schema, Send>): string extends Path ? Server<R, Ctx> : Server<AddRoute<R, "WS", Path, WsRouteInfoFor<Path, Schema, Send>>, Ctx>;
510
+ ws<Data = unknown, Schema extends StandardSchemaV1 | undefined = undefined, Send extends StandardSchemaV1 | undefined = undefined, Path extends string = string>(path: Path, handler: WebSocketHandler<Data, EnvOf<Ctx>, Schema, Send>): string extends Path ? Server<R, Ctx, HookOutput> : Server<AddRoute<R, "WS", Path, WsRouteInfoFor<Path, Schema, Send>>, Ctx, HookOutput>;
495
511
  /**
496
512
  * Broadcast `data` to every WebSocket connection subscribed to `topic` (via `ws.subscribe(topic)`).
497
513
  * In-process and **single-instance** (see {@link TopicRegistry}) - a multi-instance deploy must bridge
@@ -519,6 +535,8 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
519
535
  private idempotencyRunLanes;
520
536
  /** @internal Symbol-keyed install seam for the `responseContract()` plugin. Off the public typed surface. */
521
537
  [INSTALL_RESPONSE_CONTRACT](runtime: ResponseContractRuntime): void;
538
+ /** @internal Symbol-keyed install seam for the response observer plugin. */
539
+ [INSTALL_RESPONSE_OBSERVER](runtime: ResponseObserverRuntime): ResponseObserverMethods;
522
540
  /** @internal Symbol-keyed install seam for the `idempotency()` plugin. Off the public typed surface. */
523
541
  [INSTALL_IDEMPOTENCY](runtime: IdempotencyRuntime): void;
524
542
  /** @internal Symbol-keyed install seam for the `mcp()` plugin. Off the public typed surface. */
@@ -553,7 +571,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
553
571
  * `RouteConfigError` at merge time, and a group with WebSocket routes is refused (register
554
572
  * those on the parent).
555
573
  */
556
- merge<R2 extends Registry, Ctx2>(other: Server<R2, Ctx2>): Server<R & R2, Ctx>;
574
+ merge<R2 extends Registry, Ctx2, HookOutput2>(other: Server<R2, Ctx2, HookOutput2>): Server<R & R2, Ctx, HookOutput>;
557
575
  /** A fused renderer closes over runtime services to keep its seven-argument JSC fast path. Merging
558
576
  * rebinds that closure once to the executing server; generic plans already receive the runtime. */
559
577
  private bindFusedRuntime;
@@ -583,6 +601,14 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
583
601
  */
584
602
  private admitGated;
585
603
  private runAdmitted;
604
+ /**
605
+ * Select a mounted handler's native Node lane without materializing a Web Request. This is an
606
+ * adapter seam, not a second lifecycle: any app-wide behavior that the ordinary mount path would
607
+ * run makes the capability ineligible and the caller falls back to `resolveNodeSource`. Typed
608
+ * routes keep precedence exactly as `routeAndRun` does, including the existing mount behavior for
609
+ * a path whose registered route rejects this method.
610
+ */
611
+ [RESOLVE_NODE_MOUNT](source: RequestSource): NativeMountSelection | undefined;
586
612
  /**
587
613
  * Like {@link fetch}, but renders a plain-data result **without** building a Web `Response` - the
588
614
  * `@nifrajs/node` adapter serializes the returned primitives straight to the socket, skipping the undici
@@ -657,7 +683,7 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
657
683
  /**
658
684
  * Route → build context → run. Synchronous through to the handler for a **bare** route
659
685
  * (selected by its compiled plan), so a sync handler produces its result with zero promise allocations;
660
- * routes with validation/hooks keep the full async {@link runLifecycle}, unchanged.
686
+ * routes with validation/hooks keep the full compiled route program, unchanged.
661
687
  */
662
688
  private routeAndRun;
663
689
  private fetchMount;
@@ -674,13 +700,13 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
674
700
  /**
675
701
  * The synchronous fast path selected by a route's execution plan: apply static decorations, call the
676
702
  * handler, render the result - **no `await`** unless the handler itself returns a promise. It mirrors
677
- * the bare slice of {@link runLifecycle} (which a bare route would otherwise no-op through) and shares
703
+ * the same error boundary as the compiled route program (which a bare route would otherwise no-op through) and shares
678
704
  * {@link logRequestError}; a bare route has no `onError` hooks, so error handling is fully synchronous
679
705
  * (a thrown `Response` is control flow; anything else is a logged flat 500). This is where nifra skips
680
706
  * the per-request async-frame tax - the same win codegen routers get, but without `eval`.
681
707
  */
682
708
  private runBare;
683
- /** Bare-route error rendering - identical to {@link runLifecycle}'s catch minus the (absent) onError
709
+ /** Bare-route error rendering - identical to the compiled route program's catch minus the (absent) onError
684
710
  * loop: a thrown `Response` is returned as deliberate control flow; anything else is logged + 500. */
685
711
  /**
686
712
  * Build a route's fused Web renderer. Composition happens once at
@@ -705,13 +731,64 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
705
731
  * `Response` passes through, anything else logs and returns a flat 500, and an async validator
706
732
  * falls to a then-chain with the same steps. */
707
733
  private buildFusedQueryWeb;
734
+ /**
735
+ * Compile a route's `derive + before` lifecycle to a single closure: the per-request walk through
736
+ * `runSync` → `runHooksSync` is a stack of 3 frames and 2 `Object.assign`s for what is by far the
737
+ * most common middleware shape (auth/trace/id derivation, an auth/policy `beforeHandle`). Folding
738
+ * the same steps into one closure hits the same monomorphic inline-cache site as `buildFusedWeb`,
739
+ * and `Object.assign(ctx, deriveResult)` becomes one extra property write on the context's already
740
+ * hot hidden class. Behavior is byte-identical to the compiled route program: the same thrown-value
741
+ * contract (`Response` is control flow, anything else logs + 500), the same `c.set` semantics, the
742
+ * same `fusedRespond` for the rendered body. The `LifecycleExecutionLane` guarantee
743
+ * (`schema.params === undefined && schema.headers === undefined && derives === 1 &&
744
+ * beforeHandle === 1 && afterHandle === 0 && onError === 0 && !hasResponseContract &&
745
+ * !hasDecorations`) is enforced by `selectRouteLanes`; this lane is selected ONLY when all of those
746
+ * hold. A `query` schema (the route declares `{ query }` alongside the hooks) is validated FIRST,
747
+ * mirroring the compiled route program's stage order; the fused builder runs validate → derive →
748
+ * before → handler in one frame.
749
+ */
750
+ private buildFusedDeriveBefore;
751
+ /**
752
+ * Same shape as `buildFusedDeriveBefore`, plus one `afterHandle` step. The closure runs (validate) →
753
+ * derive → before → handler → after in one frame, the shape the realistic middleware route lands on
754
+ * when it also wants a response transform (e.g. attaching a request id to a successful payload's
755
+ * headers). `LifecycleExecutionLane` and `selectRouteLanes` guarantee `afterHandle === 1`, the
756
+ * throw contract is the same as the generic program, and the `after` step is the final transform +
757
+ * respond the generic program already does.
758
+ */
759
+ private buildFusedDeriveBeforeAfter;
760
+ /**
761
+ * Body + lifecycle hooks fused: parse → validate → derive → before → handler → (after) in one
762
+ * closure, the same win `buildFusedBodyRunner` gives for the no-hooks body shape. The shape is
763
+ * `lifecycleHookLane` PLUS a body schema with no other validation conflicts; the lane is selected
764
+ * ONLY when `schema.body !== undefined && schema.query/params/headers === undefined &&
765
+ * schema.onValidationError === undefined && !defaultOnValidationError && !hasIdempotency &&
766
+ * !hasLedger && derives === 1 && beforeHandle === 1 && afterHandle <= 1 && onError === 0 &&
767
+ * !hasResponseContract && !hasDecorations && around === 0`. The same single `querySchema === undefined`
768
+ * trick used in the no-body lane lets the build path stay simple: a query + body route falls back
769
+ * to the generic program (this is rare in practice - validated query + validated body is usually a
770
+ * "search results" route with a middleware chain on top, and the generic lane is fine there).
771
+ */
772
+ private buildFusedBodyDeriveBeforeAfter;
708
773
  private bareError;
774
+ /**
775
+ * Keep the ordinary thrown-error response independent from the caught value. Deliberate Response
776
+ * control flow is handled by `renderBareError`; every other throw gets this fixed public envelope.
777
+ */
778
+ private internalErrorResponse;
709
779
  private runWithAround;
780
+ /** Execute the registration-compiled general stage program. */
781
+ private runProgram;
782
+ /** Bind a compiled validation stage to its stable schema and the existing recovery contract. */
783
+ private validateProgramStage;
784
+ /** Preserve the existing bounded body reader and its fail-closed framing/prototype checks. */
785
+ private readProgramBody;
786
+ /** Keep thrown Response/status and redacted 500 semantics in one existing error boundary. */
787
+ private handleProgramError;
788
+ /** Finish a successful program result through response-contract enforcement and finalization. */
789
+ private finishProgramResult;
710
790
  private runAround;
711
791
  private runBodyOnly;
712
- /** Shared bounded body framing/parser. Both body lanes use the same trust-boundary checks; only
713
- * the validation + handler continuation differs. */
714
- private readBodyInput;
715
792
  /** Validate + run the handler for the bodyOnly path - shared by the inline fast path and the
716
793
  * streaming fallback. A method (not per-request closures) so the hot path allocates nothing
717
794
  * beyond the one `.then` continuation. */
@@ -744,45 +821,18 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
744
821
  * result is discarded - JS can't forcibly cancel a promise.
745
822
  */
746
823
  private withTimeout;
747
- /**
748
- * The post-match lifecycle: validate → derive → beforeHandle → handler → afterHandle, with onError.
749
- * Generic over the render: a success value goes through `finalize(result, set)` (a Web `Response`, or
750
- * node-direct primitives); an early/error `Response` (validation, thrown, 500) through `wrapResponse`.
751
- */
752
- /** Synchronous until a validator, lifecycle hook, handler, or contract check actually returns a Promise. */
753
- private runLifecycle;
754
- private runLifecycleAfterHeadersResult;
755
- private runLifecycleAfterHeaders;
756
- /** Registration-specialized query lifecycle: query validation (including recovery) → hooks. */
757
- private runLifecycleQuery;
758
- /** Registration-specialized body lifecycle: bounded body validation (including recovery) → hooks. */
759
- private runLifecycleBody;
760
- /** Registration-specialized body + query lifecycle: bounded body validation → query validation → hooks. */
761
- private runLifecycleBodyQuery;
762
- /** Registration-specialized no-body lifecycle: query validation (if present) → derives/hooks. */
763
- private runQueryAndLifecycle;
764
- private runQueryAndLifecycleResult;
765
- private runLifecycleAfterParamsResult;
766
- private runLifecycleAfterParams;
767
- private runLifecycleAfterParamsSettled;
768
- private runLifecycleAfterBody;
769
- private runLifecycleAfterQueryResult;
770
- private runLifecycleAfterQuery;
771
- private runLifecycleHooks;
772
- /** Registration-specialized derive → before → handler lifecycle. */
773
- private runLifecycleDeriveBefore;
774
- /** Finalize the specialized lane without rechecking its registration-proven invariants. */
775
- private finishSimpleLifecycleResult;
776
- private continueLifecycleAfterDerive;
777
- private runLifecycleHooksAsync;
778
- private continueLifecycleAfterBefore;
779
- private runLifecycleHandlerAsync;
780
- private finishLifecycleResult;
781
- private continueLifecycleAfterHandle;
782
824
  private finishLifecycleContract;
783
825
  private finishContractOutcome;
826
+ /** Synchronous by design, and `MaybePromise` rather than `Promise` for the same reason: control flow
827
+ * out of a lifecycle stage must not cost a promise. An `async` method allocates one and defers the
828
+ * result a microtask even when every branch it takes returns immediately, which is the common case
829
+ * here - a thrown `status(...)`/`Response`, or a route with no `onError` hook at all. Only the hook
830
+ * loop, which may await, drops into {@link runErrorHooks}. */
784
831
  private handleLifecycleError;
785
- /** Log an unhandled request error to the (redacting) logger - shared by {@link runLifecycle} and the
832
+ /** The `onError` chain, split off {@link handleLifecycleError} so its `await` costs only the routes
833
+ * that registered a hook. A hook may return a custom response; otherwise the default 500 stands. */
834
+ private runErrorHooks;
835
+ /** Log an unhandled request error to the (redacting) logger - shared by the compiled route program and the
786
836
  * bare fast path ({@link bareError}) so both record the same fields. Never throws; never leaks. */
787
837
  private logRequestError;
788
838
  private readAndValidateBody;
@@ -790,14 +840,6 @@ export declare class Server<R extends Registry = EmptyRegistry, Ctx = EmptyConte
790
840
  * before derives/beforeHandle run, matching the body-only and query-only execution lanes. */
791
841
  private applyLifecycleValidation;
792
842
  private finishLifecycleValidationRecovery;
793
- /**
794
- * Read + parse the JSON body, capped at `maxBodyBytes` and screened by the server's
795
- * `protoPoisoning` policy. Rejects a `Content-Length` over the cap *before* buffering,
796
- * re-checks what was actually delivered after the read, and aborts a chunked or
797
- * length-less body mid-stream once the running byte count exceeds the cap - so a lying
798
- * or absent length can't force us to buffer an oversized payload.
799
- */
800
- private readBoundedJson;
801
843
  /** Adapt one route's compiled execution plan to Bun's already-matched request shape. Route
802
844
  * semantics remain in the plan; this closure only supplies native params and deadline fallback. */
803
845
  private compileBunNativeHandler;
@@ -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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"}