Skip to main content

base_resource_payload

Function base_resource_payload 

Source
pub fn base_resource_payload(request_id: Option<u64>) -> Value
Expand description

Build the resource payload object for a dispatch that did not resolve Ok: {"work_class": "interactive"}, with no cost_unit key.

ADR-103 Decision (a) stamps the closed work_class enum on every event, with no exception for a denied, errored, or unknown-verb dispatch. Only resource.cost_unit is scoped to a successful dispatch by Amendment 1’s “absence has exactly two meanings” rule (a pre-amendment event, or a dispatch that errored): work_class itself is not one of those two omission cases, so it must still be present. Every dispatch through VerbRegistry::dispatch* is work_class: "interactive" regardless of outcome; there is no non-interactive outcome for a verb dispatch.

request_id (khive#948) is stamped the same way on this payload as on resource_payload’s: failure rows must be joinable by the same key as success rows.