Expand description
algocline-engine::execution — v2 execution module.
Provides the engine-level session lifecycle machinery:
SessionRecord— per-session ownership bundle (state, broadcast tx, cancellation token, join handle, response senders).SessionRegistryV2— registry that spawns, tracks, and controls v2 sessions (coexists with the legacySessionRegistryinsession.rs).- [
driver_loop] — background async fn that drives a session to completion, embedding the four cooperative cancellation checkpoints (Crux R2). BroadcastObserverHandle— concretealgocline_core::execution::ObserverHandleimplementation backed by abroadcast::Receiver<ProgressEvent>(Crux R3).
§Design invariants
- Crux R1: No
rmcp::*,progressToken,_meta,notifications/*, ormcp_-prefixed identifiers in this module tree. - Crux R2: Cancellation uses
CancellationToken::cancel()only;JoinHandle::abort()and process-kill paths are absent. - Crux R3:
observe()is sync and returns a valid handle even with zero pre-registered observers (sink-free fan-out).
Structs§
- Broadcast
Observer Handle - Wraps a
broadcast::Receiver<ProgressEvent>and implements theObserverHandletrait defined inalgocline-core. - Session
Record - Ownership bundle for a single v2 execution session.
- Session
Registry V2 - Registry that manages the lifecycle of v2 execution sessions.