Skip to main content

RunControl

Struct RunControl 

Source
pub struct RunControl { /* private fields */ }
Expand description

Out-of-band pause/resume/cancel control for a run, shared (Arc) between FlowApp (which the host’s pause/resume/stop commands signal) and the Executor (which polls it at node boundaries). One instance is created per run and registered under that run’s execution id, so several flows (e.g. multiple canvas tabs) can run and be steered independently.

Implementations§

Source§

impl RunControl

Source

pub fn phase(&self) -> RunPhase

Source

pub fn reset(&self)

Reset to Running at the start of a run so a stale cancel/pause from a prior run can’t leak into the next one.

Source

pub fn pause(&self)

Request a pause. No-op if already cancelling.

Source

pub fn resume(&self)

Release a pause. No-op if cancelling.

Source

pub fn cancel(&self)

Request cancellation; takes precedence over pause and wakes any waiter.

Source

pub fn is_cancelling(&self) -> bool

Source

pub fn resolve_review(&self, approved: bool)

Record a human verdict for the AI review gate and release the pause. The executor picks the decision up via RunControl::take_review.

Source

pub fn take_review(&self) -> Option<ReviewDecision>

Take the pending review decision, if any, clearing the slot.

Source

pub async fn wait_while_paused(&self)

Block while the phase is Paused, returning once resumed or cancelling.

Trait Implementations§

Source§

impl Default for RunControl

Source§

fn default() -> Self

Returns the “default value” for a type. 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.

§

impl<T> Instrument for T

§

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

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

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.

§

impl<T> PolicyExt for T
where T: ?Sized,

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,