Skip to main content

ReplayVerification

Struct ReplayVerification 

Source
pub struct ReplayVerification {
    pub run_count: u32,
    pub casefile_json_sha256_run1: String,
    pub casefile_json_sha256_run2: String,
    pub episodes_jsonl_sha256_run1: String,
    pub episodes_jsonl_sha256_run2: String,
    pub final_case_file_hash_run1_hex: String,
    pub final_case_file_hash_run2_hex: String,
    pub episode_count_run1: u32,
    pub episode_count_run2: u32,
    pub toolchain: BTreeMap<String, String>,
}
Expand description

Replay-verification metadata.

WHY: The audit’s load-bearing replay claim is “two consecutive dispatches on the same input bytes produce byte-identical CaseFile + episodes + report”. This struct carries the per-run SHA-256 of each load-bearing artifact so the audit_report.html can publish a side-by- side comparison.

Fields§

§run_count: u32§casefile_json_sha256_run1: String

Lowercase hex SHA-256 of the canonical casefile.json bytes from run 1 and run 2 (or "unmeasured" if only one run was performed).

§casefile_json_sha256_run2: String§episodes_jsonl_sha256_run1: String

Lowercase hex SHA-256 of the episodes.jsonl bytes.

§episodes_jsonl_sha256_run2: String§final_case_file_hash_run1_hex: String

Hex of the CaseFile::final_case_file_hash field from each run.

§final_case_file_hash_run2_hex: String§episode_count_run1: u32

Episode count from each run (must agree for the audit to admit).

§episode_count_run2: u32§toolchain: BTreeMap<String, String>

Toolchain identity (compiler version, CUDA driver, hardware). Sorted BTreeMap so the rendered output is deterministic.

Implementations§

Source§

impl ReplayVerification

Source

pub fn admits(&self) -> bool

True when run1 and run2 produced byte-identical CaseFile JSON, episodes JSONL, final case-file hash, and episode count.

Trait Implementations§

Source§

impl Clone for ReplayVerification

Source§

fn clone(&self) -> ReplayVerification

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ReplayVerification

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ReplayVerification

Source§

fn eq(&self, other: &ReplayVerification) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for ReplayVerification

Source§

impl StructuralPartialEq for ReplayVerification

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.