What changed
Producer-side tools call this non-breaking. For a consumer it is a null dereference on an unknown future date.
Affects proxy_url on UnfurledMediaResponse reachable from 20 operations. Nothing fails at the call; it fails wherever the value is finally used, which is usually somewhere else entirely.
no longer guaranteed present
Who is affected
Code that reads Discord's UnfurledMediaResponse objects, used by 20 Discord operations.
Before and after
| Where | Before | After |
|---|---|---|
| UnfurledMediaResponse.proxy_url | always present | may be missing |
Code that breaks
// response.proxy_url may now be absent or null const proxy_url = response.proxy_url ?? fallback;
Based on Discord’s published API specification. How severity is decided.