pub enum WalRecordContent {
Submit {
seq: u64,
instance: InstanceId,
principal: Principal,
actor: Option<EntityId>,
caps_at_submit: u64,
at: Tick,
action_type_code: TypeCode,
action_bytes: Vec<u8>,
allocated_id: ScheduledActionId,
},
Step {
seq: u64,
instance: InstanceId,
popped_id: ScheduledActionId,
now: Tick,
session_caps: u64,
verdict: StepVerdict,
post_state_digest: [u8; 32],
},
}Expand description
Kind-discriminated canonical content of a WAL record. The serde variant
tag is the record WalRecordKind and the first hashed body field. The
CIL records only non-reproducible facts: exogenous submissions and
per-step verdicts + post-state digest — every deterministic effect
(child schedules, signal routing, internal ids) is re-derived on replay.
Variants§
Submit
Exogenous admission of an external action — the only non-reproducible
scheduling input (internal Op::ScheduleAction schedules are
re-derived by re-executing the parent, never logged).
Fields
instance: InstanceIdInstance the action was submitted to.
actor: Option<EntityId>Submitting entity, if any (feeds ActionContext::actor, so it is
canonical input and chain-hashed).
caps_at_submit: u64Capability ceiling granted to this submission — bounds the action’s effective caps at execution (replay reconstructs it).
allocated_id: ScheduledActionIdScheduledActionId the kernel minted — replay re-injects with this exact id so the id sequence is reproduced verbatim.
Step
One step_one pop: which entry ran, when, under what operator session
ceiling, with what verdict, and the full-state digest afterward (the
bit-identity witness).
Fields
instance: InstanceIdInstance the step ran against.
popped_id: ScheduledActionIdScheduledActionId popped this step (scheduler-order witness).
session_caps: u64Operator session capability ceiling in force at step time — the
final intersection applied over the action’s resolved caps. It is
a non-reproducible per-step operator input (like caps_at_submit
is per submission), so it is recorded for the verdict to be
re-derivable on replay.
verdict: StepVerdictStep outcome — replay must re-reach this exact verdict.
Trait Implementations§
Source§impl Clone for WalRecordContent
impl Clone for WalRecordContent
Source§fn clone(&self) -> WalRecordContent
fn clone(&self) -> WalRecordContent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more