checker: a required request property with a default is breaking (error), not warning (#1110)
v1.25.0 moved new-required-request-property-with-default and request-property-became-required-with-default from info to warning. That still under-reported. Breaking-ness is a property of the contract, not of a lenient runtime: a request that omits a required property is invalid under the new contract whether or not the property has a default. The default is a server-side fallback, it does not make the omitted property valid. Whether a particular server applies it and accepts the request anyway is runtime tolerance, not contract validity (and generated SDKs and strict gateways reject it regardless). Both checks are now ERR, same as their no-default siblings, with a comment explaining why the default does not make them safe. The ids stay distinct so a team can downgrade exactly these via --severity-levels if the change is safe for their ecosystem. Adds a 'How oasdiff decides what is breaking' section to BREAKING-CHANGES.md documenting the contract-not-runtime principle. Comment message updated in all four locales. Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
R
Reuven Harrison committed
0a97c0065abb74716a2a3b22aa24dc66b8d1c654
Parent: a313791
Committed by GitHub <noreply@github.com>
on 7/22/2026, 3:47:48 PM