Release v1.58.1 — Thuban: OpenAPI response-schema fidelity
Theme: OpenAPI response-schema fidelity. Three additive generator fixes so reflected
ResponseDataDTOs document response bodies accurately: the success envelope markssuccess/message/datarequired, and#[ArrayOf]resolves arrayitemsin response mode (previously request-mode only).#[ArrayOf]is relaxed to target any class so response DTO item types need not implementRequestData; the request-DTO element constraint moves into the hydrator (fails loud, behavior unchanged). Patch release; no migrations, no config/env changes.
Fixed
- OpenAPI: success envelope marks
success/message/dataasrequired. The single-object success envelope now matches the flat-pagination envelope, which already marked them. Additive; those keys are always present at runtime. - OpenAPI:
#[ArrayOf]is honored in response mode.ClassSchemaReflectornow resolves arrayitemsfrom#[ArrayOf]forResponseDataDTOs too (previously request-mode only), falling back to the@var Foo[]docblock.#[ArrayOf]is now the consistent array element-type source for both request and response DTOs.ArrayOfitself is relaxed to accept any existing class (not justRequestDataimplementations), so response DTO item types can be decorated without implementingRequestData. - Hydrator:
#[ArrayOf]on a request DTO still requires aRequestDataelement class — now enforced in the hydrator (the constraint moved off#[ArrayOf]so response DTOs can use it). Fails loud (LogicException), consistent with the other v2 hydrator structural-misuse guards (dual-source, nested-source-attribute).