Back to Eqiora docs Skip to main content

ReplayableFixedTopologyGeometryStateArtifact

Trait ReplayableFixedTopologyGeometryStateArtifact 

pub trait ReplayableFixedTopologyGeometryStateArtifact: Sealed {
    type DriverReplayEvidence<'a>: Copy;

    // Required methods
    fn geometry_state_digest(&self) -> Result<ArtifactDigest, Diagnostic>;
    fn model_artifact(&self) -> ArtifactDigest;
    fn semantic_revision(&self) -> u64;
    fn reference_geometry_artifact(&self) -> ArtifactDigest;
    fn reference_correspondence_artifact(&self) -> ArtifactDigest;
    fn reference_mesh_artifact(&self) -> ArtifactDigest;
    fn realization_artifact(&self) -> ArtifactDigest;
    fn step(&self) -> u64;
    fn time_s(&self) -> f64;
    fn predecessor(&self) -> Option<ArtifactDigest>;
    fn solid_displacement_snapshot(&self) -> ArtifactDigest;
    fn validate_fixed_topology_replay<'a, M, R>(
        &self,
        context: &ValidatedMovingSpatialContextV2<'_, M, R>,
        predecessor: Option<&Self>,
        solid_displacement: &FieldSnapshotEnvelopeV1,
        evidence: Self::DriverReplayEvidence<'a>,
    ) -> Result<(), Diagnostic>
       where M: ReplayableCanonicalModelArtifact,
             R: ReplayableFixedTopologyAleRealizationArtifact;
}
Description

One canonical fixed-topology Geometry State generation replayable by the dimension-neutral Spatial State v2 wire.

The contract is intentionally closed to Geometry State v1 (triangles) and v3 (tetrahedra). Each generation retains its own schema and digest domain; this projection shares only the exact lineage needed by downstream state publication.

Required Associated Types§

type DriverReplayEvidence<'a>: Copy

Complete generation-specific evidence needed to replay the geometry driver rather than trusting the coordinate payload.

V1 retains its legacy lineage replay. V3 requires the exact normalized solid-displacement leaves named by its snapshot.

Required Methods§

fn geometry_state_digest(&self) -> Result<ArtifactDigest, Diagnostic>

Domain-separated identity in the concrete Geometry State generation.

§Errors

Returns EQ0901 if canonical serialization fails.

fn model_artifact(&self) -> ArtifactDigest

Exact reference Model artifact.

fn semantic_revision(&self) -> u64

Reference Model semantic revision.

fn reference_geometry_artifact(&self) -> ArtifactDigest

Exact reference Geometry Identity artifact.

fn reference_correspondence_artifact(&self) -> ArtifactDigest

Exact reference geometry-to-mesh correspondence artifact.

fn reference_mesh_artifact(&self) -> ArtifactDigest

Exact immutable reference mesh artifact.

fn realization_artifact(&self) -> ArtifactDigest

Exact Realization artifact.

fn step(&self) -> u64

Accepted step ordinal.

fn time_s(&self) -> f64

Accepted coherent-SI time in seconds.

fn predecessor(&self) -> Option<ArtifactDigest>

Exact predecessor Geometry State, absent only at state zero.

fn solid_displacement_snapshot(&self) -> ArtifactDigest

Exact solid-displacement snapshot driving this state.

fn validate_fixed_topology_replay<'a, M, R>( &self, context: &ValidatedMovingSpatialContextV2<'_, M, R>, predecessor: Option<&Self>, solid_displacement: &FieldSnapshotEnvelopeV1, evidence: Self::DriverReplayEvidence<'a>, ) -> Result<(), Diagnostic>
where M: ReplayableCanonicalModelArtifact, R: ReplayableFixedTopologyAleRealizationArtifact,

Replay the concrete generation from exact dependencies.

§Errors

Returns EQ0901 for any dependency or derived-evidence drift.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

§

impl ReplayableFixedTopologyGeometryStateArtifact for GeometryStateEnvelopeV1

§

impl ReplayableFixedTopologyGeometryStateArtifact for GeometryStateEnvelopeV3