A fence refusal that CROSSED a Durable Object boundary and was rebuilt on the
far side.
The run object throws ExecutionFencedError, doErrorResponse renders it, and
doSummary reconstructs it as a RunRouteError carrying the same status,
message and structured reason — but not the same class. This structural arm
is what lets a Worker-side caller treat that reconstruction as the refusal it
is, with the same three fields every render site already reads.
A fence refusal that CROSSED a Durable Object boundary and was rebuilt on the far side.
The run object throws ExecutionFencedError,
doErrorResponserenders it, anddoSummaryreconstructs it as aRunRouteErrorcarrying the same status, message and structured reason — but not the same class. This structural arm is what lets a Worker-side caller treat that reconstruction as the refusal it is, with the same three fields every render site already reads.