The author of Guzzle has answered my question via a Gist comment. https://gist.github.com/timwhitlock/8511971#comment-990206
By default, response models are allowed to pick up additional (undeclared) properties in the response, but you can set additionalProperties
to false
to prevent it.
The original schema used to generate a response model is not present by default as most use-cases don't require it and it makes debugging messier when present.