pipework 0.72.1 → 0.73.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.73.1
4
+
5
+ - **Fixed: a route's `.output(status, schema)` describes only what its handler returns.** Input-validation errors reach the client whole (`VALIDATION_ERROR` with its `fields`) when the route declares its own 422; before, they came back with `fields` stripped or as a 500 (#498). Fastify's own refusals (wrong content type 415, malformed JSON 400, body over the limit 413) answer in Pipework's error shape instead of a 500 when the route declares that status (#493).
6
+ - **Fixed: the OpenAPI document lists the validation 422** on every route with an input, query or params schema; a route that declares its own 422 lists both bodies as `oneOf`.
7
+ - **Changed: errors raised by Fastify and its plugins answer in Pipework's shape.** A 4xx such as the rate limiter's 429 used to be `{ statusCode, error, message }`; it is now `{ error: { code, message } }` with `TOO_MANY_REQUESTS` (other statuses: `UNAUTHORIZED`, `FORBIDDEN`, `NOT_FOUND`, `CONFLICT`, `PAYLOAD_TOO_LARGE`, `UNSUPPORTED_MEDIA_TYPE`, else `BAD_REQUEST`). Headers such as `Retry-After` are kept.
8
+ - **Changed: upload client errors carry Pipework codes.** A malformed upload body answers `BAD_REQUEST`, `PAYLOAD_TOO_LARGE` or `UNSUPPORTED_MEDIA_TYPE` instead of Fastify's `FST_ERR_*` code.
9
+
10
+ ## 0.73.0
11
+
12
+ - **Changed: `pipework run` runs the script in the same flow a job gets.** The script is traced (a `job` trace, job type `script` unless `--job-type` is given), its `@flow_step` functions are recorded and its `@touches` writes are audited. With `--tenant`, the default database's transaction is bound to the flow with the tenant session variables set, and the script runs in one transaction: it commits when the script returns, and a script that throws has all its writes rolled back. Without `--tenant` nothing changes except the trace. Every command that loads TypeScript in-process from the built package now applies `@flow_step` (#497).
13
+
3
14
  ## 0.72.1
4
15
 
5
16
  - **Fixed: under `pipework serve` and `pipework dev`, `@flow_step` functions are now traced and their `@touches` writes audited.** Config discovery registered its own loader over the one that applies `@flow_step`, so request traces had no steps and no audit records were written (#486).
@@ -0,0 +1,17 @@
1
+ import type { Manifold } from '../../core/pipework.js';
2
+ export interface RunScriptOptions {
3
+ tenant?: string | null;
4
+ auth?: unknown;
5
+ jobType?: string;
6
+ }
7
+ /**
8
+ * Runs an operator script in the flow a job gets: a trace (entry kind `job`) that
9
+ * is closed `closed` or `error`, and, with a tenant, the default database's
10
+ * transaction bound to the flow with the tenant session variables set. The
11
+ * transaction commits when `fn` returns and rolls back when it throws. Without a
12
+ * tenant nothing is bound, as for a tenantless job.
13
+ *
14
+ * The trace close is awaited, so the row is written before the caller closes the pool.
15
+ */
16
+ export declare function runScript<T>(instance: Manifold, fn: () => T | Promise<T>, options?: RunScriptOptions): Promise<T>;
17
+ //# sourceMappingURL=run-script.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script.d.ts","sourceRoot":"","sources":["../../../src/async/jobs/run-script.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAWtD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,QAAQ,EAAE,QAAQ,EAClB,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACxB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,CAAC,CAAC,CA8BZ"}
@@ -0,0 +1,48 @@
1
+ import { runInContext } from '../../request/context/store.js';
2
+ import { createJobContext } from '../../request/context/create.js';
3
+ import { executeInTransaction } from '../../request/context/run-in-transaction.js';
4
+ import { isTracingEnabled } from '../../trace/entry/tracing-enabled.js';
5
+ import { openTrace } from '../../trace/entry/open-trace.js';
6
+ import { parentTraceRef } from '../../trace/entry/parent-trace.js';
7
+ import { closeTrace } from '../../trace/entry/close-trace.js';
8
+ const SCRIPT_TRANSACTION_TIMEOUT_MS = 5000;
9
+ /**
10
+ * Runs an operator script in the flow a job gets: a trace (entry kind `job`) that
11
+ * is closed `closed` or `error`, and, with a tenant, the default database's
12
+ * transaction bound to the flow with the tenant session variables set. The
13
+ * transaction commits when `fn` returns and rolls back when it throws. Without a
14
+ * tenant nothing is bound, as for a tenantless job.
15
+ *
16
+ * The trace close is awaited, so the row is written before the caller closes the pool.
17
+ */
18
+ export async function runScript(instance, fn, options = {}) {
19
+ const tenant = options.tenant ?? null;
20
+ const auth = options.auth ?? null;
21
+ const jobType = options.jobType ?? 'script';
22
+ const databases = tenant === null ? [] : [instance.config.defaultDatabaseName()];
23
+ const trace = isTracingEnabled(instance)
24
+ ? openTrace({
25
+ instance,
26
+ entryKind: 'job',
27
+ parent: parentTraceRef(),
28
+ tenant,
29
+ auth,
30
+ requestId: null,
31
+ sessionId: null,
32
+ })
33
+ : null;
34
+ const ctx = createJobContext({ instance, jobType, auth, tenant, ...(trace !== null ? { trace } : {}) });
35
+ const run = async () => fn();
36
+ try {
37
+ const result = tenant === null
38
+ ? await runInContext(ctx, run)
39
+ : await executeInTransaction(ctx, databases, null, SCRIPT_TRANSACTION_TIMEOUT_MS, run);
40
+ await closeTrace(instance, trace, 'closed');
41
+ return result;
42
+ }
43
+ catch (err) {
44
+ await closeTrace(instance, trace, 'error');
45
+ throw err;
46
+ }
47
+ }
48
+ //# sourceMappingURL=run-script.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-script.js","sourceRoot":"","sources":["../../../src/async/jobs/run-script.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAClF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAE7D,MAAM,6BAA6B,GAAG,IAAI,CAAA;AAQ1C;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,QAAkB,EAClB,EAAwB,EACxB,UAA4B,EAAE;IAE9B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAA;IACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAA;IACjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAA;IAC3C,MAAM,SAAS,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAA;IAChF,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QACtC,CAAC,CAAC,SAAS,CAAC;YACV,QAAQ;YACR,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,cAAc,EAAE;YACxB,MAAM;YACN,IAAI;YACJ,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,IAAI;SAChB,CAAC;QACF,CAAC,CAAC,IAAI,CAAA;IAER,MAAM,GAAG,GAAG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IACvG,MAAM,GAAG,GAAG,KAAK,IAAgB,EAAE,CAAC,EAAE,EAAE,CAAA;IAExC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI;YAC5B,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC;YAC9B,CAAC,CAAC,MAAM,oBAAoB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,6BAA6B,EAAE,GAAG,CAAC,CAAA;QACxF,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;QAC3C,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QAC1C,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,wBAAsB,GAAG,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BnE"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC7B;AAED,wBAAsB,GAAG,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA0BnE"}
@@ -1,6 +1,7 @@
1
1
  import { resolve } from 'node:path';
2
2
  import { existsSync } from 'node:fs';
3
3
  import { pathToFileURL } from 'node:url';
4
+ import { runScript } from '../../async/jobs/run-script.js';
4
5
  import { bold, success } from '../output.js';
5
6
  export async function run(options) {
6
7
  const scriptPath = resolve(options.cwd, options.script);
@@ -12,7 +13,7 @@ export async function run(options) {
12
13
  const { discoverInstance } = await import('../../core/config/discover.js');
13
14
  const instance = await discoverInstance(options.cwd);
14
15
  try {
15
- await instance.seed(async () => {
16
+ await runScript(instance, async () => {
16
17
  await import(pathToFileURL(scriptPath).href);
17
18
  }, {
18
19
  jobType: options.jobType ?? 'script',
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAS5C,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAA0B;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,qBAAqB,OAAO,CAAC,MAAM,MAAM;YACzC,kDAAkD;YAClD,cAAc,IAAI,CAAC,gCAAgC,CAAC,IAAI,CACzD,CAAA;IACH,CAAC;IAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAA;IAE1E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAEpD,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9C,CAAC,EAAE;YACD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ;YACpC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;SAC/B,CAAC,CAAA;QACF,OAAO,CAAC,qBAAqB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAChD,CAAC;YAAS,CAAC;QACT,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAS5C,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAA0B;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAEvD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,qBAAqB,OAAO,CAAC,MAAM,MAAM;YACzC,kDAAkD;YAClD,cAAc,IAAI,CAAC,gCAAgC,CAAC,IAAI,CACzD,CAAA;IACH,CAAC;IAED,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAA;IAE1E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAEpD,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YACnC,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9C,CAAC,EAAE;YACD,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,QAAQ;YACpC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;SAC/B,CAAC,CAAA;QACF,OAAO,CAAC,qBAAqB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAChD,CAAC;YAAS,CAAC;QACT,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;IAChC,CAAC;AACH,CAAC"}
package/dist/cli/index.js CHANGED
@@ -14,7 +14,7 @@ ${bold('Commands:')}
14
14
  remove <pkg> Remove dependency from config, sync, and install
15
15
  generate Generate SQL migrations from Drizzle schema changes
16
16
  migrate Run pending migrations for all databases
17
- run <script> Execute a script with database context
17
+ run <script> Execute a script as a traced, audited flow (with --tenant: one transaction, rolled back if it throws)
18
18
  test Run tests with automatic database setup
19
19
  check Type-check, lint, and boundary enforcement
20
20
  codemod Fill missing @downstream cardinality across the corpus
@@ -27,7 +27,7 @@ ${bold('Options:')}
27
27
  --version, -v Show version
28
28
  --name Migration name (used with generate)
29
29
  --confirm Required for production migrations
30
- --tenant Tenant ID for tenant-scoped scripts
30
+ --tenant Tenant ID; the script runs in one transaction on the default database
31
31
  --job-type Override job type (default: "script")
32
32
 
33
33
  ${bold('Scoping (check, test):')}
@@ -1 +1 @@
1
- {"version":3,"file":"ts-inline-hooks.d.ts","sourceRoot":"","sources":["../../../src/core/config/ts-inline-hooks.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,eAAiC,CAAA;AAEtD,wBAAgB,sBAAsB,IAAI,IAAI,CA4D7C"}
1
+ {"version":3,"file":"ts-inline-hooks.d.ts","sourceRoot":"","sources":["../../../src/core/config/ts-inline-hooks.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,eAAiC,CAAA;AAEtD,wBAAgB,sBAAsB,IAAI,IAAI,CAqE7C"}
@@ -1,13 +1,23 @@
1
1
  import { register } from 'node:module';
2
+ import { existsSync } from 'node:fs';
2
3
  export const TS_HOOKS = Symbol.for('pipework.tsHooks');
3
4
  export function registerTsResolveHooks() {
4
5
  if (Reflect.get(globalThis, TS_HOOKS) !== undefined)
5
6
  return;
7
+ // Built package: the compiled transforming hook sits beside this file, so every
8
+ // in-process CLI path (run, seed, ...) applies @flow_step like serve and dev do.
9
+ if (existsSync(new URL('./ts-resolve-hooks.js', import.meta.url))) {
10
+ register('./ts-resolve-hooks.js', import.meta.url);
11
+ Reflect.set(globalThis, TS_HOOKS, 'transforming');
12
+ return;
13
+ }
6
14
  {
7
- // Marker contract: ts-register.js sets globalThis[Symbol.for('pipework.tsHooks')]
8
- // to 'transforming' when it installs the @flow_step-applying loader; this
9
- // function then installs nothing, since a hook registered later would run first
10
- // and shadow it. Otherwise it installs one hook and marks 'inline'.
15
+ // Marker contract: globalThis[Symbol.for('pipework.tsHooks')] is 'transforming'
16
+ // once the @flow_step-applying loader is installed (by ts-register.js, or by this
17
+ // function when the built ts-resolve-hooks.js sits beside it); a hook registered
18
+ // later would run first and shadow it, so then nothing more is installed.
19
+ // Source-mode runs, where the compiled hook does not exist, install one inline
20
+ // hook and mark 'inline'.
11
21
  // Self-contained mirror of ts-resolve-hooks.ts, registered as a `data:` URL so
12
22
  // it works during pipework's own source-mode runs where the compiled
13
23
  // ts-resolve-hooks.js does not exist yet. `resolve` maps a relative specifier
@@ -1 +1 @@
1
- {"version":3,"file":"ts-inline-hooks.js","sourceRoot":"","sources":["../../../src/core/config/ts-inline-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAEtD,MAAM,UAAU,sBAAsB;IACpC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,SAAS;QAAE,OAAM;IAC3D,CAAC;QACC,kFAAkF;QAClF,0EAA0E;QAC1E,gFAAgF;QAChF,oEAAoE;QACpE,+EAA+E;QAC/E,qEAAqE;QACrE,8EAA8E;QAC9E,+EAA+E;QAC/E,+DAA+D;QAC/D,gFAAgF;QAChF,sHAAsH;QACtH,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0CZ,CAAA;QACD,QAAQ,CAAC,wBAAwB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC5D,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ts-inline-hooks.js","sourceRoot":"","sources":["../../../src/core/config/ts-inline-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEpC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAEtD,MAAM,UAAU,sBAAsB;IACpC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,SAAS;QAAE,OAAM;IAC3D,gFAAgF;IAChF,iFAAiF;IACjF,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAClE,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAClD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAA;QACjD,OAAM;IACR,CAAC;IACD,CAAC;QACC,gFAAgF;QAChF,kFAAkF;QAClF,iFAAiF;QACjF,0EAA0E;QAC1E,+EAA+E;QAC/E,0BAA0B;QAC1B,+EAA+E;QAC/E,qEAAqE;QACrE,8EAA8E;QAC9E,+EAA+E;QAC/E,+DAA+D;QAC/D,gFAAgF;QAChF,sHAAsH;QACtH,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA0CZ,CAAA;QACD,QAAQ,CAAC,wBAAwB,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAC5D,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7C,CAAC;AACH,CAAC"}
@@ -1,5 +1,13 @@
1
1
  import { PipeworkError } from '../../core/errors/index.js';
2
+ import type { FastifyReply } from 'fastify';
2
3
  import type { ErrorResponse } from './types.js';
3
4
  export declare function buildErrorResponse(error: PipeworkError): ErrorResponse;
4
5
  export declare function buildInternalErrorResponse(error?: unknown, exposeDetails?: boolean): ErrorResponse;
6
+ /**
7
+ * Sends an error reply whole. The per-reply serializer bypasses the route's
8
+ * declared response schema, which describes only what the handler returns.
9
+ */
10
+ export declare function sendError(reply: FastifyReply, status: number, body: unknown): FastifyReply;
11
+ /** Maps a client error (4xx) raised by Fastify itself to Pipework's error shape. */
12
+ export declare function buildClientErrorResponse(status: number, error: unknown): ErrorResponse;
5
13
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/request/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAmB,MAAM,4BAA4B,CAAA;AAC3E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CAatE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,aAAa,CAgBlG"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/request/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAmB,MAAM,4BAA4B,CAAA;AAC3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAE/C,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa,CAatE;AAED,wBAAgB,0BAA0B,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,aAAa,CAgBlG;AAaD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,YAAY,CAI1F;AAaD,oFAAoF;AACpF,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,aAAa,CAItF"}
@@ -37,4 +37,29 @@ function unwrapCause(error) {
37
37
  }
38
38
  return { name: current.name, message: current.message };
39
39
  }
40
+ /**
41
+ * Sends an error reply whole. The per-reply serializer bypasses the route's
42
+ * declared response schema, which describes only what the handler returns.
43
+ */
44
+ export function sendError(reply, status, body) {
45
+ void reply.serializer(JSON.stringify);
46
+ void reply.header('content-type', 'application/json; charset=utf-8');
47
+ return reply.status(status).send(body);
48
+ }
49
+ // The codes of the error classes in core/errors/http.ts, by status.
50
+ const CLIENT_ERROR_CODES = {
51
+ 401: 'UNAUTHORIZED',
52
+ 403: 'FORBIDDEN',
53
+ 404: 'NOT_FOUND',
54
+ 409: 'CONFLICT',
55
+ 413: 'PAYLOAD_TOO_LARGE',
56
+ 415: 'UNSUPPORTED_MEDIA_TYPE',
57
+ 429: 'TOO_MANY_REQUESTS',
58
+ };
59
+ /** Maps a client error (4xx) raised by Fastify itself to Pipework's error shape. */
60
+ export function buildClientErrorResponse(status, error) {
61
+ const code = CLIENT_ERROR_CODES[status] ?? 'BAD_REQUEST';
62
+ const raw = error?.message;
63
+ return { error: { code, message: typeof raw === 'string' && raw !== '' ? raw : 'Bad request' } };
64
+ }
40
65
  //# sourceMappingURL=response.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/request/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAG3E,MAAM,UAAU,kBAAkB,CAAC,KAAoB;IACrD,MAAM,QAAQ,GAAkB;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB;KACF,CAAA;IAED,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;QACrC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAe,EAAE,aAAuB;IACjF,MAAM,QAAQ,GAAkB;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,8BAA8B;SACxC;KACF,CAAA;IAED,IAAI,aAAa,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;QACrE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,OAAO,GAAU,KAAK,CAAA;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAS,CAAA;IAC7B,OAAO,OAAO,CAAC,KAAK,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAA;IACzB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/request/http/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAI3E,MAAM,UAAU,kBAAkB,CAAC,KAAoB;IACrD,MAAM,QAAQ,GAAkB;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;SACvB;KACF,CAAA;IAED,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;QACrC,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,WAAW,CAAA;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAe,EAAE,aAAuB;IACjF,MAAM,QAAQ,GAAkB;QAC9B,KAAK,EAAE;YACL,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,8BAA8B;SACxC;KACF,CAAA;IAED,IAAI,aAAa,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;QACrE,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAC1C,IAAI,OAAO,GAAU,KAAK,CAAA;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAS,CAAA;IAC7B,OAAO,OAAO,CAAC,KAAK,YAAY,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAA;IACzB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAA;AACzD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,KAAmB,EAAE,MAAc,EAAE,IAAa;IAC1E,KAAK,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrC,KAAK,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IACpE,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACxC,CAAC;AAED,oEAAoE;AACpE,MAAM,kBAAkB,GAAqC;IAC3D,GAAG,EAAE,cAAc;IACnB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,WAAW;IAChB,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,mBAAmB;IACxB,GAAG,EAAE,wBAAwB;IAC7B,GAAG,EAAE,mBAAmB;CACzB,CAAA;AAED,oFAAoF;AACpF,MAAM,UAAU,wBAAwB,CAAC,MAAc,EAAE,KAAc;IACrE,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,IAAI,aAAa,CAAA;IACxD,MAAM,GAAG,GAAI,KAAsC,EAAE,OAAO,CAAA;IAC5D,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,EAAE,CAAA;AAClG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/request/http/server.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,KAAK,EAAE,YAAY,EAAsC,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAsBjH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAGnD,qGAAqG;AACrG,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACjG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAA;IAC7E,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IACnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IACzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,wHAAwH;AACxH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAE,YAAiB,GAAG,cAAc,CA+X1F"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/request/http/server.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,KAAK,EAAE,YAAY,EAAsC,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAsBjH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAGnD,qGAAqG;AACrG,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;IACjG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,CAAA;IAC7E,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;IACnD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IACpD,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IACzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,wHAAwH;AACxH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAE,YAAiB,GAAG,cAAc,CAyY1F"}
@@ -11,7 +11,7 @@ import { executeInTransaction } from '../context/run-in-transaction.js';
11
11
  import { resolveAndExecute, resolveHandlerDatabases, buildCheckpoint } from '../di/resolve.js';
12
12
  import { buildContext } from './middleware.js';
13
13
  import { closeTrace } from '../../trace/entry/close-trace.js';
14
- import { buildErrorResponse, buildInternalErrorResponse } from './response.js';
14
+ import { buildErrorResponse, buildInternalErrorResponse, buildClientErrorResponse, sendError } from './response.js';
15
15
  import { isPipeworkError } from '../../core/errors/index.js';
16
16
  import { checkUploadHeaders, uploadBodyLimit, binaryUpload, multipartUpload, settleUpload, MULTIPART_FIELD_LIMIT } from './upload.js';
17
17
  import { isFileResponse, fileResponseProblem, contentDisposition, primeStream } from './file.js';
@@ -43,6 +43,16 @@ export function createServer(instance, config = {}) {
43
43
  fastifyOpts['loggerInstance'] = config.logger ?? getBaseLogger();
44
44
  }
45
45
  const app = Fastify(fastifyOpts);
46
+ // Fastify's own refusals (content type, bad JSON, body too large) answer in
47
+ // Pipework's error shape, never through a route's declared response schema.
48
+ app.setErrorHandler((error, req, reply) => {
49
+ const status = error.statusCode;
50
+ if (typeof status === 'number' && status >= 400 && status < 500) {
51
+ return sendError(reply, status, buildClientErrorResponse(status, error));
52
+ }
53
+ req.log.error(error, 'Unhandled error');
54
+ return sendError(reply, 500, buildInternalErrorResponse(error, config.exposeErrorDetails));
55
+ });
46
56
  // Validation is handled by Pipework's DI layer (parse + ValidationError).
47
57
  // Pass-through compiler lets us attach JSON Schema for OpenAPI without AJV double-validating.
48
58
  app.setValidatorCompiler(() => (data) => ({ value: data }));
@@ -162,7 +172,7 @@ export function createServer(instance, config = {}) {
162
172
  }
163
173
  catch (error) {
164
174
  req.log.error(error, 'Route screen threw');
165
- return reply.status(500).send({
175
+ return sendError(reply, 500, {
166
176
  error: 'ScreenFailed',
167
177
  message: `[pipework] The pre-parse screen for ${method} ${path} threw: ${error instanceof Error ? error.message : String(error)}\n\n` +
168
178
  ' A screen must inspect headers and either return a refusal\n' +
@@ -171,7 +181,7 @@ export function createServer(instance, config = {}) {
171
181
  });
172
182
  }
173
183
  if (refusal !== undefined && refusal !== null) {
174
- return reply.status(refusal.status).send({ ...refusal.body, reason: refusal.reason });
184
+ return sendError(reply, refusal.status, { ...refusal.body, reason: refusal.reason });
175
185
  }
176
186
  return undefined;
177
187
  };
@@ -184,7 +194,7 @@ export function createServer(instance, config = {}) {
184
194
  if (refusal === null)
185
195
  return undefined;
186
196
  void reply.header('connection', 'close');
187
- return reply.status(refusal.httpStatus).send(buildErrorResponse(refusal));
197
+ return sendError(reply, refusal.httpStatus, buildErrorResponse(refusal));
188
198
  };
189
199
  const existing = opts['onRequest'];
190
200
  opts['onRequest'] = existing === undefined ? [headerCheck] : [existing, headerCheck];
@@ -264,22 +274,21 @@ export function createServer(instance, config = {}) {
264
274
  void closeTrace(instance, ctx.trace, 'error');
265
275
  if (error instanceof FileResponseError) {
266
276
  req.log.error({ route: `${method} ${path}`, requestId: String(req.id), err: error }, 'File response refused');
267
- return reply.status(500).send({ error: { code: 'FILE_RESPONSE_INVALID', message: error.message } });
277
+ return sendError(reply, 500, { error: { code: 'FILE_RESPONSE_INVALID', message: error.message } });
268
278
  }
269
279
  if (isPipeworkError(error)) {
270
280
  const retryAfter = error.retryAfterSeconds;
271
281
  if (typeof retryAfter === 'number')
272
282
  void reply.header('Retry-After', String(Math.max(0, Math.ceil(retryAfter))));
273
- return reply.status(error.httpStatus).send(buildErrorResponse(error));
283
+ return sendError(reply, error.httpStatus, buildErrorResponse(error));
274
284
  }
275
285
  // A malformed multipart body surfaces as a Fastify client error (4xx).
276
286
  const clientStatus = upload !== null ? error?.statusCode : undefined;
277
287
  if (typeof clientStatus === 'number' && clientStatus >= 400 && clientStatus < 500) {
278
- const e = error;
279
- return reply.status(clientStatus).send({ error: { code: String(e.code ?? 'BAD_REQUEST'), message: String(e.message ?? 'Bad request') } });
288
+ return sendError(reply, clientStatus, buildClientErrorResponse(clientStatus, error));
280
289
  }
281
290
  req.log.error(error, 'Unhandled error in route handler');
282
- return reply.status(500).send(buildInternalErrorResponse(error, config.exposeErrorDetails));
291
+ return sendError(reply, 500, buildInternalErrorResponse(error, config.exposeErrorDetails));
283
292
  }
284
293
  };
285
294
  if (upload === null) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/request/http/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/request/http/server.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,33 @@ export interface OpenAPIDocument {
9
9
  info: OpenAPIInfo;
10
10
  paths: Record<string, Record<string, unknown>>;
11
11
  }
12
+ /** The body of a validation 422: `{ error: { code, message, fields? } }`. */
13
+ export declare const VALIDATION_ERROR_SCHEMA: {
14
+ readonly type: "object";
15
+ readonly properties: {
16
+ readonly error: {
17
+ readonly type: "object";
18
+ readonly properties: {
19
+ readonly code: {
20
+ readonly type: "string";
21
+ };
22
+ readonly message: {
23
+ readonly type: "string";
24
+ };
25
+ readonly fields: {
26
+ readonly type: "object";
27
+ readonly additionalProperties: {
28
+ readonly type: "array";
29
+ readonly items: {
30
+ readonly type: "string";
31
+ };
32
+ };
33
+ };
34
+ };
35
+ readonly required: readonly ["code", "message"];
36
+ };
37
+ };
38
+ readonly required: readonly ["error"];
39
+ };
12
40
  export declare function generateOpenAPI(info: OpenAPIInfo, routes: readonly RouteRegistration[]): OpenAPIDocument;
13
41
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/request/openapi/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGzD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAC/C;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,SAAS,iBAAiB,EAAE,GACnC,eAAe,CA2HjB"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/request/openapi/generate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGzD,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAC/C;AAED,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;CAc1B,CAAA;AAEV,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,SAAS,iBAAiB,EAAE,GACnC,eAAe,CAyIjB"}
@@ -1,4 +1,20 @@
1
1
  import { toJsonSchema } from '../../data/schema/json-schema.js';
2
+ /** The body of a validation 422: `{ error: { code, message, fields? } }`. */
3
+ export const VALIDATION_ERROR_SCHEMA = {
4
+ type: 'object',
5
+ properties: {
6
+ error: {
7
+ type: 'object',
8
+ properties: {
9
+ code: { type: 'string' },
10
+ message: { type: 'string' },
11
+ fields: { type: 'object', additionalProperties: { type: 'array', items: { type: 'string' } } },
12
+ },
13
+ required: ['code', 'message'],
14
+ },
15
+ },
16
+ required: ['error'],
17
+ };
2
18
  export function generateOpenAPI(info, routes) {
3
19
  const paths = {};
4
20
  for (const route of routes) {
@@ -99,6 +115,19 @@ export function generateOpenAPI(info, routes) {
99
115
  if (Object.keys(responses).length === 0) {
100
116
  responses['200'] = { description: 'Successful response' };
101
117
  }
118
+ if (meta.inputSchema || meta.querySchema || meta.paramsSchema) {
119
+ const declared = meta.outputSchemas.get(422);
120
+ responses['422'] = {
121
+ description: declared === undefined ? 'Validation failed' : '422 response',
122
+ content: {
123
+ 'application/json': {
124
+ schema: declared === undefined
125
+ ? VALIDATION_ERROR_SCHEMA
126
+ : { oneOf: [toJsonSchema(declared), VALIDATION_ERROR_SCHEMA] },
127
+ },
128
+ },
129
+ };
130
+ }
102
131
  if (meta.requiresAuth) {
103
132
  responses['401'] = { description: 'Unauthorized' };
104
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/request/openapi/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/request/openapi/generate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pipework",
3
- "version": "0.72.1",
3
+ "version": "0.73.1",
4
4
  "description": "TypeScript framework for multi-tenant SaaS applications. PostgreSQL-only.",
5
5
  "type": "module",
6
6
  "license": "MIT",