Skip to main content

Module wal

Module wal 

Source
Expand description

WAL header + records + BLAKE3-keyed chain.

Each record’s this_chain_hash is computed as blake3::keyed(chain_key, prev_chain_hash || canonical(body)) where chain_key = blake3::derive_key(WAL domain context, world_id). Tampering any record’s body or reordering records breaks the chain at verify_chain time.

Structs§

TypeRegistryPin
Pinned (TypeCode, schema_hash) registered for this world. v0.13 ships the slot empty; the snapshot integration will populate it from ActionRegistry (cross-restart pin set).
Wal
Sealed WAL — the durable read-side counterpart to WalWriter. Produced by Wal::from_writer or Wal::deserialize; consumed by Wal::verify_chain / replay_into.
WalHeader
WAL header — pinned at construction, frozen for the lifetime of the WAL. Replay against an incompatible header is a structural error (A14).
WalRecord
Single committed step recorded in the WAL.
WalWriter
Append-only WAL writer. Each successful Kernel::step writes one WalRecord via the kernel’s internal append path.

Enums§

AuthDecisionAnnotation
One-byte annotation summarizing whether every Op in the record’s stage authorized cleanly. Belt-and-suspenders companion to the chain hash (belt-and-suspenders companion).
WalError
WAL operation failures. #[non_exhaustive] — adding variants is not a breaking change for external matchers.