Relationships
#4436 Cloudflare codegen: a oneOf/anyOf inside a multi-member allOf is dropped
Opened by zack · 11/5/2026
codegen/cloudflare/pipeline.ts mergeAllOf keeps only properties, required, type and description from each allOf member, so a member that is a oneOf/anyOf loses every branch. swamp-club#4426 fixed the single-member case (allOf around one disjunction, e.g. containers durable_objects). The multi-member case remains: allOf[{oneOf:[...]}, {properties:...}] is a conjunction of a union and an object, and needs the union distributed over the conjunction (each branch merged with the other members). Measured on the 2026-11-05 Cloudflare spec: 14 occurrences, including request bodies of createApplication (containers), shared.query.post and queries.post/patch (workers observability), vectorize create-index, and pipelines streams/sinks; plus response schemas such as dlp profiles and get-scan. Symptom: affected properties generate as a string or a loose object instead of the union of shapes, so valid payloads fail validation or unknown keys pass. Found while implementing swamp-club#4426.
Open
No activity in this phase yet.
Sign in to post a ripple.