pub(crate) fn execute(
unit: &Unit<'_>,
action: Action,
engine: &mut Engine<'_>,
report: &Reporter<'_>,
) -> OutcomeExpand description
Execute one Action at one site.
Emits exactly one ProxyEvent::ActionApplied or exactly one
ProxyEvent::ActionRefused, plus any impairment the decision produced,
and returns the wire operation the caller must perform.
A refused unit is forwarded unchanged, through the same
queue-or-write-now fork an admitted Pass takes — a refusal must not let
a unit overtake one already waiting.
§Order of checks
crate::capability::classifyon the(site, kind)pair. The site’s own verdict comes first because it is the one the published table makes, and the table must win:Delay { then: ResetStream }at the datagram site is the datagram column’sWrongSite, not a composition complaint.- Composition, for
Action::Delay/Action::Hold, which is validated before the unit is queued so a bad composition never reaches the deque and never bumpsegress_items_queued. - The inner action, classified in its own right —
Delay { then: ReplacePayload(b) }with the wrong length isRefusal::LengthChanged, reported against the inner kind, which is the informative one. - The numeric code range, then the session-closing latch.