pub struct ProofGraph {
pub schema_version: String,
pub contract_id: Uuid,
pub evidence: BTreeMap<Uuid, Evidence>,
pub links: Vec<EvidenceLink>,
pub final_workspace_generation: Option<u64>,
pub final_state_binding: Option<String>,
pub termination: Option<ProofTermination>,
}Expand description
Evidence nodes and their links to contract criteria.
Fields§
§schema_version: StringGraph schema version.
contract_id: UuidContract this graph evaluates.
evidence: BTreeMap<Uuid, Evidence>Evidence keyed for deterministic serialization.
links: Vec<EvidenceLink>Directed evidence-to-criterion edges.
final_workspace_generation: Option<u64>Final workspace generation against which fresh evidence is evaluated.
final_state_binding: Option<String>Canonical digest or other binding for the final workspace state.
termination: Option<ProofTermination>Runtime terminal state that prevents normal completion evaluation.
Implementations§
Source§impl ProofGraph
impl ProofGraph
Sourcepub fn bind_final_workspace(
&mut self,
generation: u64,
state_binding: Option<String>,
)
pub fn bind_final_workspace( &mut self, generation: u64, state_binding: Option<String>, )
Sets the final workspace state used by freshness requirements.
Sourcepub fn block(&mut self, reason: impl Into<String>)
pub fn block(&mut self, reason: impl Into<String>)
Records a policy, authorization, or external dependency blocker.
Sourcepub fn link(
&mut self,
contract: &TaskContract,
evidence_id: Uuid,
criterion_id: impl Into<String>,
rationale: Option<String>,
) -> Result<(), ProofError>
pub fn link( &mut self, contract: &TaskContract, evidence_id: Uuid, criterion_id: impl Into<String>, rationale: Option<String>, ) -> Result<(), ProofError>
Links existing evidence to an existing criterion.
Sourcepub fn evaluate_detailed(
&self,
contract: &mut TaskContract,
) -> Result<ProofEvaluation, ProofError>
pub fn evaluate_detailed( &self, contract: &mut TaskContract, ) -> Result<ProofEvaluation, ProofError>
Recomputes every non-waived criterion and returns detailed derivation data.
Sourcepub fn evaluate(
&self,
contract: &mut TaskContract,
) -> Result<RunOutcome, ProofError>
pub fn evaluate( &self, contract: &mut TaskContract, ) -> Result<RunOutcome, ProofError>
Recomputes every non-waived criterion and returns the overall outcome.
Trait Implementations§
Source§impl Clone for ProofGraph
impl Clone for ProofGraph
Source§fn clone(&self) -> ProofGraph
fn clone(&self) -> ProofGraph
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 ProofGraph
impl Debug for ProofGraph
Source§impl<'de> Deserialize<'de> for ProofGraph
impl<'de> Deserialize<'de> for ProofGraph
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 ProofGraph
impl PartialEq for ProofGraph
Source§impl Serialize for ProofGraph
impl Serialize for ProofGraph
impl StructuralPartialEq for ProofGraph
Auto Trait Implementations§
impl Freeze for ProofGraph
impl RefUnwindSafe for ProofGraph
impl Send for ProofGraph
impl Sync for ProofGraph
impl Unpin for ProofGraph
impl UnsafeUnpin for ProofGraph
impl UnwindSafe for ProofGraph
Blanket Implementations§
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