Skip to main content

Crate prikk_replay

Crate prikk_replay 

Source
Expand description

Workspace-internal replay and lifecycle semantics for Prikk.

During replay-boundary stabilization this crate is not a public API commitment. It owns semantic replay/lifecycle substrate types while repository layout, refs, WAL, object storage, verification, doctor, and store-backed resolver construction remain in prikk-store.

Structs§

LiveNode
A node currently live in the reconstructed clean tree.
NodeLifecycleState
Replay-derived node lifecycle index. Not a root of trust (FDD-02 §12).
RepoPath
A validated repository-relative path.
Tombstone
The latest deletion preimage retained per node for restoration-equivalence.

Enums§

NodeContent
Content-payload identity of a node (FDD-03 §10.2 node_payload).

Functions§

ensure_node_id_nonzero
Reject the reserved all-zero node_id at every seeding boundary (erratum P1-3), matching the object decoder’s NodeId::try_from_bytes rule.
validate_kind_content_shape
Structural kind/content discriminator (erratum P1/P2): no node or tombstone may hold a payload whose kind disagrees with its content. Shared by create_node, seed_live_node, and seed_tombstone so the discriminator cannot diverge. Blob- kind matching (TextFile -> Text, BinaryFile -> Binary) stays at the blob- resolution boundary, since this substrate stores only blob_id.
validate_no_path_collisions
Reject duplicate paths and case-insensitive collisions.
validate_repo_path
Validate that a path is safe as a repository-relative path.