@ultimat3/http 19.4.0 → 20.1.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 (2) hide show
  1. package/package.json +5 -5
  2. package/src/error-map.ts +8 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ultimat3/http",
3
- "version": "19.4.0",
3
+ "version": "20.1.0",
4
4
  "description": "Owned request lifecycle over Bun.serve: router, ordered pipeline, problem+json errors",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -31,9 +31,9 @@
31
31
  "test": "bun test"
32
32
  },
33
33
  "dependencies": {
34
- "@ultimat3/core": "19.4.0",
35
- "@ultimat3/i18n": "19.4.0",
36
- "@ultimat3/schema": "19.4.0",
37
- "@ultimat3/time": "19.4.0"
34
+ "@ultimat3/core": "20.1.0",
35
+ "@ultimat3/i18n": "20.1.0",
36
+ "@ultimat3/schema": "20.1.0",
37
+ "@ultimat3/time": "20.1.0"
38
38
  }
39
39
  }
package/src/error-map.ts CHANGED
@@ -339,6 +339,14 @@ export const ERROR_STATUS = {
339
339
  // runtime and makes that answer a reviewed one instead of an accident, which is the whole reason
340
340
  // this table is closed.
341
341
  X_UI_FORM_PATH_INVALID: 500,
342
+ // @ultimat3/ui — `defineTheme()` refused a brand palette whose RESOLVED channels put a pairing
343
+ // below WCAG 2.2 AA. Declaration-time in the ordinary case, and it takes a row rather than a
344
+ // backlog entry for the one case that is not: an app that renders a per-tenant brand stylesheet
345
+ // during a request throws this ON that request. The author's fault and never the caller's, so
346
+ // 500 is the honest class, and a DECLARED 500 rather than an unclassified one — `toProblem`
347
+ // blanks the cause of an unclassified failure outside dev, which would hide the one thing that
348
+ // makes this error actionable: the role and the measured ratio.
349
+ X_UI_CONTRAST_INSUFFICIENT: 500,
342
350
  // @ultimat3/render — an island handed props it cannot carry: an undeclared key, a value that is
343
351
  // not JSON, or a bag over `ISLAND_PROPS_MAX_BYTES`. The author's fault and never the caller's,
344
352
  // so 500 is the honest class — and it HAS to be a declared 500. Without a row the code was an