pub struct CertificationManifest {Show 17 fields
pub forge_schema_version: u32,
pub crate_version: String,
pub wgpu_api_version: String,
pub naga_api_version: String,
pub kernel_id: String,
pub semantic_hash: String,
pub source_hash: String,
pub schedule: Schedule,
pub validation_level: ValidationLevel,
pub validation: ValidationReport,
pub adapter: Option<AdapterIdentity>,
pub oracle: Option<ComparisonReport>,
pub timing: Option<TimingSummary>,
pub cache_key: Option<String>,
pub vector_seed: Option<u64>,
pub vector_hash: Option<String>,
pub certified_at_unix: Option<u64>,
}Fields§
§forge_schema_version: u32§crate_version: String§wgpu_api_version: String§naga_api_version: String§kernel_id: String§semantic_hash: String§source_hash: String§schedule: Schedule§validation_level: ValidationLevel§validation: ValidationReport§adapter: Option<AdapterIdentity>§oracle: Option<ComparisonReport>§timing: Option<TimingSummary>§cache_key: Option<String>§vector_seed: Option<u64>Deterministic test-vector seed actually used for this kernel’s oracle run
(plan §8 evidence). None for kernels whose vectors are not seed-derived
(e.g. the ray-probe fixed scene) or for non-certified manifests.
vector_hash: Option<String>blake3 hex of the expected CPU-reference output bytes the GPU result was checked against — pins exactly which vector certified this manifest.
certified_at_unix: Option<u64>Wall-clock certification time (Unix seconds). Provenance only; not folded into the cache key. Source-commit provenance would also belong here, but capturing the git commit needs build-time plumbing we don’t have, so it is out of scope for now.
Implementations§
Source§impl CertificationManifest
impl CertificationManifest
pub fn naga_only( generated: &GeneratedShader, validation: ValidationReport, ) -> Self
pub fn to_pretty_json(&self) -> Result<String, ForgeError>
Trait Implementations§
Source§impl Clone for CertificationManifest
impl Clone for CertificationManifest
Source§fn clone(&self) -> CertificationManifest
fn clone(&self) -> CertificationManifest
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CertificationManifest
impl Debug for CertificationManifest
Source§impl<'de> Deserialize<'de> for CertificationManifest
impl<'de> Deserialize<'de> for CertificationManifest
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for CertificationManifest
impl PartialEq for CertificationManifest
Source§fn eq(&self, other: &CertificationManifest) -> bool
fn eq(&self, other: &CertificationManifest) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for CertificationManifest
impl Serialize for CertificationManifest
impl StructuralPartialEq for CertificationManifest
Auto Trait Implementations§
impl Freeze for CertificationManifest
impl RefUnwindSafe for CertificationManifest
impl Send for CertificationManifest
impl Sync for CertificationManifest
impl Unpin for CertificationManifest
impl UnsafeUnpin for CertificationManifest
impl UnwindSafe for CertificationManifest
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more