A refusal AS RECEIVED — the code exactly as the wire spelled it.
Deliberately NOT core's Refusal, whose code is the desk's closed import('./resource.js').RefusalCode vocabulary. A client cannot PROVE a string off a socket
is a member of that set, and narrowing it anyway would let an unrecognised code masquerade as
a known one — a surface would then branch on a refusal that never happened. So the wire type
is the honest one: a string plus args, which is all a client needs to localize and dispatch.
A refusal AS RECEIVED — the code exactly as the wire spelled it.
Deliberately NOT core's
Refusal, whosecodeis the desk's closed import('./resource.js').RefusalCode vocabulary. A client cannot PROVE a string off a socket is a member of that set, and narrowing it anyway would let an unrecognised code masquerade as a known one — a surface would then branch on a refusal that never happened. So the wire type is the honest one: a string plus args, which is all a client needs to localize and dispatch.