pub struct RowVersion {
pub rowid: Option<i64>,
pub values: Vec<Value>,
pub origin: VersionOrigin,
pub commit_seq: Option<u32>,
pub view_state: ViewState,
pub is_deleted: bool,
pub is_guessed: bool,
pub rowid_reused: bool,
pub attribution_uncertain: bool,
pub reinserted_after_gap: bool,
}Expand description
One version of one row: a distinct record value the rowid held at some point, with its evidence-based classification and logical provenance.
Fields§
§rowid: Option<i64>The rowid this version belongs to. None only for a carved residue whose
rowid was destroyed.
values: Vec<Value>The decoded column values of this version, in column order.
origin: VersionOriginLogical provenance of the version.
commit_seq: Option<u32>The LOGICAL commit sequence (per salt epoch, monotonic WITHIN an epoch
only) of the EARLIEST view this value appeared in. None for the live
view and for carved residue (order-unknown).
view_state: ViewStateEvidence-based view state.
is_deleted: boolWhether this version’s rowid is absent from the final live view (a deletion or a completed pre-reuse entity).
is_guessed: boolWhether this version was reconstructed/guessed rather than read directly (carved residue with inferred attribution).
rowid_reused: boolWhether this rowid was REUSED — present, then absent for ≥1 view, then present again with a DIFFERENT record. Set on every version of a reused rowid so a renderer never presents two entities as one continuous update.
attribution_uncertain: boolWhether this version’s attribution is uncertain — its source view was checksum-invalid residue, or its schema could not be reconstructed.
reinserted_after_gap: boolWhether this value went ABSENT from ≥1 intermediate view and then reappeared with the IDENTICAL record. Such a run collapses (it is not rowid reuse — the same record by evidence), but the absence itself is forensic evidence: a delete-then-reinsert of the same value (e.g. a message deleted and re-sent). A LOW-CONFIDENCE signal — a transient absence in the materialized commit views is indistinguishable from a genuine round-trip, so it records what the bytes show, never intent (§4.2).
Trait Implementations§
Source§impl Clone for RowVersion
impl Clone for RowVersion
Source§fn clone(&self) -> RowVersion
fn clone(&self) -> RowVersion
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more