pub struct ContinuousNodeDriver {
pub graph_id: String,
pub index: NodeFeatureIndex,
pub subscriptions: SubscriptionRegistry,
pub active_invocations: BTreeMap<String, String>,
pub scope_barrier_active: bool,
pub durable_cursor: u64,
/* private fields */
}Expand description
Continuous driver orchestrating node facades, feature indexing, queues, and result re-entry.
Fields§
§graph_id: String§index: NodeFeatureIndex§subscriptions: SubscriptionRegistry§active_invocations: BTreeMap<String, String>§scope_barrier_active: bool§durable_cursor: u64Implementations§
Source§impl ContinuousNodeDriver
impl ContinuousNodeDriver
pub fn new( graph_id: impl Into<String>, queue: FairDispatchQueue, subscriptions: SubscriptionRegistry, ) -> ContinuousNodeDriver
Sourcepub fn register_node(&mut self, facade: NodeFacade)
pub fn register_node(&mut self, facade: NodeFacade)
Register a new node facade into the driver and feature index.
Sourcepub fn drive_step(&mut self) -> Result<DriverStepOutcome, DriverError>
pub fn drive_step(&mut self) -> Result<DriverStepOutcome, DriverError>
Perform a single drive step:
- Pull next queue item.
- Validate live recipient states and generations.
- Dispatch to node facades.
- Poll and re-enter settled invocations.
Sourcepub fn reenter_result(
&mut self,
reentry: ResultReentry,
) -> Result<NodeExecutionReceipt, DriverError>
pub fn reenter_result( &mut self, reentry: ResultReentry, ) -> Result<NodeExecutionReceipt, DriverError>
Re-enter an execution result carrying full source identity. Stale generations are rejected and cannot satisfy new dependencies.
Sourcepub fn pause_graph(&mut self) -> Result<GraphPauseReport, DriverError>
pub fn pause_graph(&mut self) -> Result<GraphPauseReport, DriverError>
Graceful graph pause: establishes scope admission barrier and requests pause on all active nodes. Collects per-node outcomes without fabricating success for unavailable backends.
Sourcepub fn stop_graph(
&mut self,
reason: &str,
) -> Result<GraphStopReport, DriverError>
pub fn stop_graph( &mut self, reason: &str, ) -> Result<GraphStopReport, DriverError>
Graceful graph stop: establishes scope admission barrier and cooperatively cancels all active nodes. Collects per-node outcomes and preserves requested, acknowledged, and effect-unknown facts.
Auto Trait Implementations§
impl !RefUnwindSafe for ContinuousNodeDriver
impl !UnwindSafe for ContinuousNodeDriver
impl Forget for ContinuousNodeDriver
impl Freeze for ContinuousNodeDriver
impl Move for ContinuousNodeDriver
impl Send for ContinuousNodeDriver
impl Sync for ContinuousNodeDriver
impl Unpin for ContinuousNodeDriver
impl UnsafeUnpin for ContinuousNodeDriver
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