> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt. ## 5.134.1 **`(fix):`** The OpenAPI `error-responses` setting now replaces a pre-existing `components.schemas` entry of the same `name` when nothing references it anymore once the 4xx/5xx responses have been rewritten (the common case: a legacy error body under `apply-to: all`), so specs that ship their own `TwilioServiceErrorResponse`-style schema no longer need a per-spec overlay to remove it first. If the legacy schema is still referenced (a 2xx body, another schema, `apply-to: untyped`), the error now lists the offending JSON Pointers. ## 5.134.0 **`(fix):`** Fix OpenAPI `allOf` required-ness when a branch lists a property in `required` that is defined only by another (parent) branch. The property is now required on the composed type, so a `nullable: true` property becomes required-nullable and round-trips `null` in generated SDKs. Multi-level `allOf` chains are handled; properties required in no branch stay optional. **`(fix):`** When an OpenAPI `allOf` parent is inlined into a type or request body because of a property conflict, the inlined properties now keep their metadata (`readOnly` filtering on write request bodies, `x-fern-property-name`, `x-fern-audiences`, `deprecated`, access, and XML encoding) instead of being copied as bare type references. **`(fix):`** Fix `fern check` reporting duplicate properties when an OpenAPI schema with a `nullable: true` `allOf` parent lists parent-defined properties in its own top-level `required`. The nullable parent is now inlined (instead of being kept in `extends` alongside the redeclared property). **`(feat):`** The OpenAPI importer used for SDK generation now honors `4XX` and `5XX` wildcard error responses instead of silently dropping them. Wildcards are imported as `ClientRequestError` (covers 400-499) and `ServerError` (covers 500-599), and a concrete status code declared alongside a wildcard always takes precedence. Fern Definition `errors` now accept `status-code: 4XX` / `status-code: 5XX` as well. ## 5.133.0 **`(internal):`** The CLI now sends an `X-Fern-Agent` header on every FDR, Venus and Fiddle request (and tags its own telemetry events with `agent`) when run from a coding agent (Claude Code, Cursor, Codex, Devin, Gemini CLI), so agent-driven usage such as docs publishes can be measured separately from human usage. **`(fix):`** `fern init --docs` now produces a project that builds with no further edits. When no API definition exists in the fern folder, it scaffolds `pages/welcome.mdx` and points the navigation at it instead of emitting an `api:` item with nothing to render. `fern check` also reports a new `api-section-has-definition` error when an `api:` navigation item does not resolve to any API definition, instead of passing and then failing at build time. ## 5.132.0 **`(feat):`** Add an `error-responses` OpenAPI setting that applies a single error body schema (e.g. RFC 9457 Problem Details) to the 4xx/5xx responses of every operation in a spec, so per-spec overlays are no longer needed to type error responses. ```yaml api: specs: - openapi: openapi.yml settings: error-responses: schema: errors/problem_details.yml # file path or inline schema name: ProblemDetails # generated type name (defaults to the schema title) apply-to: all # `all` (default) or `untyped` ensure: - status-code: 422 methods: [post, put, patch] ``` `apply-to: all` replaces the body of every error response; `untyped` only fills in responses that declare no body schema. `ensure` adds the listed status codes to operations that do not declare them.