Skip to main content

CeremonyEventRecord

Struct CeremonyEventRecord 

Source
pub struct CeremonyEventRecord {
Show 17 fields pub event_id: String, pub event_type: String, pub schema_version: u32, pub ceremony_id: String, pub definition_name: String, pub definition_version: String, pub sequence: u64, pub occurred_at: String, pub actor: Option<CeremonyEventActor>, pub correlation_id: String, pub causation_id: String, pub trace_id: String, pub event_schema_version: u32, pub event: Option<Struct>, pub previous_record_hash: Vec<u8>, pub record_hash: Vec<u8>, pub authorization: Option<CeremonyAuthorizationEvidence>,
}
Expand description

One sealed record of a ceremony’s stream: the fact, its position, and everything that binds it to the records before it.

The fields are the record’s own rather than a rendering of them, so a caller can rebuild the record and verify the chain itself instead of trusting the engine that sent it.

Fields§

§event_id: String

Occurs once in the stream. Derived from the fact, so one command decided twice cannot land twice.

§event_type: String

Catalogue entry this record is an instance of, in snake_case: “step_completed”, “intervention_requested”, and so on.

§schema_version: u32

Version of the record’s field set: 3 seals authorization evidence, 2 carries the event without authorization, and 1 has no event payload.

§ceremony_id: String§definition_name: String§definition_version: String§sequence: u64

Position in the stream. From one, contiguous, no gaps.

§occurred_at: String

RFC 3339.

§actor: Option<CeremonyEventActor>§correlation_id: String

The opening record’s id: what ties one session’s records together. Empty when the record names none.

§causation_id: String

The record this one was decided against. Empty on the first.

§trace_id: String

Empty until a fact carries a trace.

§event_schema_version: u32

The shape the payload below was sealed in. Zero on a version-1 record, which has no payload to shape.

§event: Option<Struct>

The sealed event, exactly as the digest covers it. Absent on a version-1 record.

A Struct rather than one message per event type: the payload is versioned by event_schema_version and read through the engine’s own upcasters, so freezing its shape in this contract would put the same thing in two places and make every payload change a contract change.

§previous_record_hash: Vec<u8>

The previous record’s digest, 32 bytes. Empty on the first record of a stream.

§record_hash: Vec<u8>

This record’s digest, over its content and the previous digest. 32 bytes.

§authorization: Option<CeremonyAuthorizationEvidence>

Mandatory for schema 3; absent from historical schema 1 and 2. These are the exact authorization fields covered by record_hash.

Trait Implementations§

Source§

impl Clone for CeremonyEventRecord

Source§

fn clone(&self) -> CeremonyEventRecord

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 CeremonyEventRecord

Source§

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

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

impl Default for CeremonyEventRecord

Source§

fn default() -> CeremonyEventRecord

Returns the “default value” for a type. Read more
Source§

impl Message for CeremonyEventRecord

Source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
Source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
Source§

fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message to a buffer. Read more
Source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
Source§

fn encode_length_delimited( &self, buf: &mut impl BufMut, ) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
Source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
Source§

fn decode(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes an instance of the message from a buffer. Read more
Source§

fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes a length-delimited instance of the message from the buffer.
Source§

fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
Source§

fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
Source§

impl PartialEq for CeremonyEventRecord

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for CeremonyEventRecord

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> FromRef<T> for T
where T: Clone,

Source§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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 = !

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

fn try_from(value: U) -> Result<T, !>

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more