stitchkit 0.70.2 → 0.70.3

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.
@@ -968,6 +968,31 @@ function contractStreamResponse(request, context, source, descriptor, operationA
968
968
  return Promise.resolve(route.handler(request, context));
969
969
  }
970
970
 
971
+ // src/server/error-dispatch.ts
972
+ async function dispatchErrorHooks(config) {
973
+ for (const [scope, hooks] of [
974
+ ["group", config.group],
975
+ ["global", config.global]
976
+ ]) {
977
+ if (!hooks?.onError)
978
+ continue;
979
+ try {
980
+ const response = await hooks.onError(config.context, config.error, config.endpoint);
981
+ if (response instanceof Response)
982
+ return config.respond(response);
983
+ } catch (error) {
984
+ const message = `[stitchkit] ${scope} onError failed`;
985
+ try {
986
+ if (config.logger) {
987
+ config.logger.error(message, { error, traceId: config.context.traceId });
988
+ } else
989
+ console.error(message, error);
990
+ } catch {}
991
+ }
992
+ }
993
+ return;
994
+ }
995
+
971
996
  // src/server/logger.ts
972
997
  var c = {
973
998
  reset: "\x1B[0m",
@@ -1569,7 +1594,7 @@ function createHandler(config) {
1569
1594
  } catch {}
1570
1595
  }
1571
1596
  };
1572
- const respondError = async (err, errCtx, endpoint) => {
1597
+ const respondError = async (err, errCtx, endpoint, group) => {
1573
1598
  if (isClientClosedRequest(req, err)) {
1574
1599
  const response = applyCors(new Response(null, { status: 499, statusText: "Client Closed Request" }), cors, req);
1575
1600
  complete(response.status, undefined, "cancelled");
@@ -1586,17 +1611,22 @@ function createHandler(config) {
1586
1611
  details: known?.details
1587
1612
  });
1588
1613
  };
1589
- if (hooks?.onError) {
1590
- try {
1591
- const response = await hooks.onError(errCtx ?? buildErrorContext(req, url, traceId, clientIp), err, endpoint);
1592
- if (response instanceof Response) {
1593
- recordFailure();
1594
- const withCors = applyCors(response, cors, req);
1595
- complete(withCors.status, errorCode(err));
1596
- return withCors;
1597
- }
1598
- } catch {}
1599
- }
1614
+ const customResponse = await dispatchErrorHooks({
1615
+ context: errCtx ?? buildErrorContext(req, url, traceId, clientIp),
1616
+ error: err,
1617
+ endpoint,
1618
+ group,
1619
+ global: hooks,
1620
+ logger: customLogger,
1621
+ respond: (response) => {
1622
+ recordFailure();
1623
+ const withCors = applyCors(response, cors, req);
1624
+ complete(withCors.status, errorCode(err));
1625
+ return withCors;
1626
+ }
1627
+ });
1628
+ if (customResponse)
1629
+ return customResponse;
1600
1630
  const appErr = normalizeError(err);
1601
1631
  recordFailure(appErr);
1602
1632
  complete(appErr.status, appErr.code);
@@ -1739,7 +1769,7 @@ function createHandler(config) {
1739
1769
  return body;
1740
1770
  } catch (err) {
1741
1771
  await multipartLifecycle?.rollback();
1742
- return respondError(err, ctx, method);
1772
+ return respondError(err, ctx, method, groupHooks);
1743
1773
  }
1744
1774
  }
1745
1775
  return async (req, server) => {
package/dist/node.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  createHandler,
6
6
  createSocketIOServer,
7
7
  createUnixClientTransport
8
- } from "./index-a01jky8m.js";
8
+ } from "./index-1zxf9x2z.js";
9
9
  import {
10
10
  createImplement,
11
11
  createImplementRegistry,
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/server/create.ts"],"names":[],"mappings":"AAsDA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAA2B,MAAM,SAAS,CAAC;AAkCpF,wBAAgB,aAAa,CAAC,OAAO,GAAG,OAAO,EAC7C,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,GAC7B,YAAY,CAAC,OAAO,CAAC,CAijBvB"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/server/create.ts"],"names":[],"mappings":"AAuDA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EAId,MAAM,SAAS,CAAC;AAkCjB,wBAAgB,aAAa,CAAC,OAAO,GAAG,OAAO,EAC7C,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,GAC7B,YAAY,CAAC,OAAO,CAAC,CA4iBvB"}
@@ -0,0 +1,13 @@
1
+ import type { RuntimeContext } from '../contract/index.js';
2
+ import type { LifecycleHooks, MethodDef, StitchLogger } from './types.js';
3
+ /** Route-local policy gets the first response; fallback always sees the original error. */
4
+ export declare function dispatchErrorHooks(config: {
5
+ context: RuntimeContext;
6
+ error: unknown;
7
+ endpoint?: MethodDef;
8
+ group?: LifecycleHooks;
9
+ global?: LifecycleHooks;
10
+ logger: StitchLogger | null;
11
+ respond: (response: Response) => Response;
12
+ }): Promise<Response | undefined>;
13
+ //# sourceMappingURL=error-dispatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-dispatch.d.ts","sourceRoot":"","sources":["../../src/server/error-dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvE,2FAA2F;AAC3F,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,QAAQ,CAAC;CAC3C,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CAqBhC"}
@@ -13,7 +13,7 @@ import {
13
13
  sseRoute,
14
14
  streamingRoute,
15
15
  webSocketLane
16
- } from "../index-a01jky8m.js";
16
+ } from "../index-1zxf9x2z.js";
17
17
  import {
18
18
  composeAuthHooks,
19
19
  createAuthHook,
@@ -223,6 +223,12 @@ export interface LifecycleHooks {
223
223
  authorize?: (ctx: AuthorizationContext, endpoint: MethodDef) => void | Promise<void>;
224
224
  beforeHandle?: (ctx: RuntimeContext, endpoint: MethodDef) => void | Promise<void>;
225
225
  afterHandle?: (ctx: RuntimeContext, result: unknown, endpoint: MethodDef) => unknown | Promise<unknown>;
226
+ /**
227
+ * Matched contract errors try group then global, stopping at the first Response.
228
+ * Undefined or a throw falls through with the original error; hook failures are
229
+ * internally diagnosed. Raw/unmatched/pre-route errors use only the global hook.
230
+ * Confirmed client cancellation bypasses error hooks.
231
+ */
226
232
  onError?: (ctx: RuntimeContext, error: unknown, endpoint?: MethodDef) => Response | undefined | Promise<Response | undefined>;
227
233
  }
228
234
  export interface RouteGroup {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}
package/llms-full.txt CHANGED
@@ -1218,10 +1218,18 @@ createServer({
1218
1218
  preconditions here, not authentication.
1219
1219
  - **`afterHandle`** — receives the handler result; return a replacement to
1220
1220
  transform it.
1221
- - **`onError`** — receives any thrown error; return a `Response` to customise
1222
- the error body. Without it, errors render through the standard envelope. A
1223
- confirmed client disconnect is a transport cancellation rather than an
1224
- application error and deliberately bypasses this hook.
1221
+ - **`onError`** — for a matched contract route, the group's hook runs first,
1222
+ then the global hook, then the standard error envelope. The first returned
1223
+ `Response` wins (including its status and headers); an absent hook, `undefined`
1224
+ return or thrown/rejected hook continues to the next level with the **original
1225
+ error** and the same context and endpoint. A failing hook is diagnosed through
1226
+ `logging.logger.error` (or the internal console fallback), never substituted
1227
+ into the client response. This covers path/body validation, authorization,
1228
+ before/after hooks and handler errors, including raw-response contract handlers.
1229
+ Global `onRequest` failures, `rawRoutes` and unmatched 404/405 have no matched
1230
+ contract group and use only the global hook. A confirmed client disconnect
1231
+ deliberately bypasses both hooks; errors after streaming headers have been
1232
+ sent keep their existing stream-error path.
1225
1233
 
1226
1234
  Hooks see `RuntimeContext` (loose types); handlers see `HandlerContext` (typed).
1227
1235
  That split is deliberate — see [ADR 0003](../decisions/0003-two-context-types.md).
@@ -11932,7 +11940,7 @@ Also re-exports the error helpers from `stitchkit/contract`.
11932
11940
  | `LifecycleHooks` | _type_ | `onRequest` / pre-body `authorize` / `beforeHandle` / `afterHandle` / `onError` |
11933
11941
  | `composeLifecycleHooks` | function | compose HTTP lifecycle phases in declaration order with short-circuit/fallthrough semantics |
11934
11942
  | `AuthorizationContext` | _type_ | HTTP pre-body context with validated params, `input: undefined` and no files |
11935
- | `RouteGroup` | _type_ | a prefixed group of services with its own hooks |
11943
+ | `RouteGroup` | _type_ | a prefixed group of services with its own hooks; matched errors try group `onError` → global `onError` → standard envelope, keeping the original error on fallback — [precedence](../guide/server.md#lifecycle-hooks) |
11936
11944
  | `RawRoute` | _type_ | a non-contract `Request → Response` route with a concrete `BunServer` context |
11937
11945
  | `RawRouteContext` | _type_ | the Bun-bound routing context a raw handler receives |
11938
11946
  | `BunServer` | _type_ | the `Bun.serve` instance type |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stitchkit",
3
- "version": "0.70.2",
3
+ "version": "0.70.3",
4
4
  "description": "Contract-first backend framework — one defineContract() into an HTTP API, MCP tools, AI-agent tools and a typed client. Bun and Node.",
5
5
  "keywords": [
6
6
  "bun",