SIGN IN SIGN UP

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