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§
- Type
Registry Pin - Pinned
(TypeCode, schema_hash)registered for this world. v0.13 ships the slot empty; the snapshot integration will populate it fromActionRegistry(cross-restart pin set). - Wal
- Sealed WAL — the durable read-side counterpart to
WalWriter. Produced byWal::from_writerorWal::deserialize; consumed byWal::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::stepwrites oneWalRecordvia the kernel’s internal append path.
Enums§
- Auth
Decision Annotation - 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.