Skip to main content

ExecEvent

Enum ExecEvent 

Source
pub enum ExecEvent {
    Fact {
        at: DateTime<Utc>,
        fact: StepFact,
    },
    Signal(UiSignal),
    AwaitPrompt {
        step: Option<StepId>,
        prompt_id: PromptId,
        prompt: Prompt,
        previous_attempt_rejected_because: Option<String>,
    },
    Finalized {
        fingerprint: String,
    },
}
Expand description

Event emitted by the runtime to the frontend.

Variants§

§

Fact

A transcript-worthy fact. Already persisted by the transcript sink by the time it reaches the frontend.

Fields

§at: DateTime<Utc>

Event time, stamped from the executor’s clock when the fact was emitted, the same at recorded on the transcript envelope. Frontends display this rather than their own receipt time, so live timestamps match the audit record.

§fact: StepFact

The fact itself.

§

Signal(UiSignal)

A UI-only signal.

§

AwaitPrompt

The runtime is waiting for a user response. The frontend must reply with UiCommand::PromptResponse carrying the matching prompt_id.

Fields

§step: Option<StepId>

Step that issued the prompt, if any. None for ceremony-level prompts (e.g. the ceremony-start confirmation emitted before the first step).

§prompt_id: PromptId

Identifier echoed back in the matching response.

§prompt: Prompt

The prompt itself.

§previous_attempt_rejected_because: Option<String>

If a previous attempt was rejected by the runtime’s validator, the rejection reason for the frontend to surface to the user.

§

Finalized

Sent once after the terminal fact has been recorded and the chain head is final. Out-of-band so the fact itself doesn’t carry the hash of the chain it belongs to. Frontends use this to display the fingerprint on the completion screen.

Fields

§fingerprint: String

sha256:<hex> of the last line in the transcript.

Trait Implementations§

Source§

impl Debug for ExecEvent

Source§

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

Formats the value using the given formatter. Read more

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<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> Same for T

Source§

type Output = T

Should always be Self
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, <T as TryFrom<U>>::Error>

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.