Immutable, redacted and non-canonical operational evidence.
Evidence is tied to an exact Definition and activation generation. It may inform reflection and future proposals, but it never authorizes execution, replaces Instance state, or becomes a Journal record.
Summary
Functions
Decodes and revalidates canonical evidence bytes.
Returns the stable full-content evidence digest.
Encodes evidence with the production canonical codec.
Returns whether evidence is expired at the supplied millisecond timestamp.
Restores and verifies evidence from portable data.
Builds and verifies already-redacted Experience evidence.
Builds evidence or raises with the stable validation reason.
Returns the content-addressed evidence Ref.
Returns the Experience evidence schema version.
Returns canonical portable evidence data.
Revalidates evidence and its canonical transport representation.
Types
@type retention() :: :ephemeral | :bounded | :retained
@type t() :: %Spectre.Experience.Evidence{ activation_generation: non_neg_integer(), definition_ref: Spectre.Definition.Ref.t(), expires_at: non_neg_integer() | nil, facts: map(), kind: String.t(), observed_at: non_neg_integer(), provenance: map(), redactions: [[String.t() | non_neg_integer()]], retention: retention(), schema_version: pos_integer(), source_ref: String.t() }
Functions
Decodes and revalidates canonical evidence bytes.
Returns the stable full-content evidence digest.
Encodes evidence with the production canonical codec.
@spec expired?(t(), non_neg_integer()) :: boolean()
Returns whether evidence is expired at the supplied millisecond timestamp.
Restores and verifies evidence from portable data.
Builds and verifies already-redacted Experience evidence.
Builds evidence or raises with the stable validation reason.
@spec ref(t()) :: Spectre.Experience.Evidence.Ref.t()
Returns the content-addressed evidence Ref.
@spec schema_version() :: pos_integer()
Returns the Experience evidence schema version.
Returns canonical portable evidence data.
Revalidates evidence and its canonical transport representation.