Optional ReadonlyreasonAn optional machine-readable reason, rendered into the response body alongside the message. DECLARED HERE rather than sniffed structurally at the mapper so the channel is part of the contract a subclass opts into, and so the mapper needs no import of any subclass to render it (see the header for why that import must not exist).
ReadonlystatusThe response status. 4xx/5xx only — see doErrorResponse.
The base for a DO's OWN refusal — the taxonomy's extension point, for the statuses the runtime errors do not cover. A shell declares one (ThreadIdentityError's 403) and so does a host route:
A CLASS, so opting in is
instanceof— deliberate and nominal, the posture AuditLogger takes. The structural alternative (any thrown value with a numericstatus) cannot tell a refusal this DO authored from the arbitrary values its routes throw: an upstream client's{status: 429}would become this API's 429, and{status: 0}— routine on HTTP-client error objects — would makenew Responseraise inside the very catch whose job is to never throw. Everything unrecognized stays a 500.