somatize_runtime/executors/mod.rs
1//! Executors — high-level execution loops that USE a Runner.
2//!
3//! Each Executor defines WHAT to do (study loop, PBT evolution, streaming).
4//! The Runner decides WHERE to execute (local or remote).
5//!
6//! - [`StudyRunner`] — hyperparameter optimization loop
7//! - [`PbtRunner`] — population-based training (evolutionary)
8//! - [`stream`] — the stream driver: [`StreamRun`] runs every chunk
9//! through `run_node`'s primitives; the plan executor drives it
10//! locally and the worker holds one alive between RPC messages
11
12pub mod pbt;
13pub mod stream;
14pub mod study;
15
16pub use pbt::{FnPbtExecutor, PbtConfig, PbtExecutor, PbtRunner, PopulationMember};
17pub use stream::{StreamOutput, StreamRun, materialize_buffer};
18pub use study::{FnTrialExecutor, StudyRunner, TrialContext, TrialExecutor, TrialOutcome};