pub struct SchedulerConfig {Show 18 fields
pub worker_id: String,
pub claim_batch_size: usize,
pub lease_ttl: Duration,
pub tick_interval: Duration,
pub heartbeat_interval: Duration,
pub reclaim_interval: Duration,
pub reclaim_grace: Duration,
pub concurrency: ConcurrencyConfig,
pub command_timeout: Option<Duration>,
pub working_dir: String,
pub task_gates: Vec<GateType>,
pub run_gates: Vec<GateType>,
pub enforce_policies: bool,
pub audit_decisions: bool,
pub budgets: ResourceBudgetConfig,
pub allow_recursive_run: bool,
pub max_runtime: Option<Duration>,
pub idle_timeout: Option<Duration>,
}Expand description
Scheduler configuration.
Fields§
§worker_id: StringWorker identity for lease claims.
claim_batch_size: usizeHow many tasks to claim per tick.
lease_ttl: DurationLease TTL for claimed tasks.
tick_interval: DurationInterval between scheduler ticks.
heartbeat_interval: DurationInterval between heartbeat sweeps.
reclaim_interval: DurationInterval between stale lease reclamation sweeps.
reclaim_grace: DurationGrace period for stale lease reclamation.
concurrency: ConcurrencyConfigConcurrency configuration.
command_timeout: Option<Duration>Default command timeout.
working_dir: StringDefault working directory for commands.
task_gates: Vec<GateType>Gates to evaluate for task-level verification. If empty, tasks auto-complete after successful execution.
run_gates: Vec<GateType>Gates to evaluate for run-level verification. If empty, runs auto-complete after all tasks finish.
enforce_policies: boolEnforce policy checks before command execution.
audit_decisions: boolEmit policy/audit records when decisions are made.
budgets: ResourceBudgetConfigRuntime resource and token budgets.
allow_recursive_run: boolAllow task commands to recursively invoke yarli run.
max_runtime: Option<Duration>Maximum wall-clock runtime for the entire scheduler loop. When elapsed, the run transitions to TimedOut.
idle_timeout: Option<Duration>Idle timeout — if no task produces output or completes within this duration, the run transitions to StalledNoProgress.
Trait Implementations§
Source§impl Clone for SchedulerConfig
impl Clone for SchedulerConfig
Source§fn clone(&self) -> SchedulerConfig
fn clone(&self) -> SchedulerConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SchedulerConfig
impl Debug for SchedulerConfig
Auto Trait Implementations§
impl Freeze for SchedulerConfig
impl RefUnwindSafe for SchedulerConfig
impl Send for SchedulerConfig
impl Sync for SchedulerConfig
impl Unpin for SchedulerConfig
impl UnsafeUnpin for SchedulerConfig
impl UnwindSafe for SchedulerConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request