pub struct OrchestrationConfig {
pub enabled: bool,
pub max_tasks: u32,
pub max_parallel: u32,
pub default_failure_strategy: String,
pub default_max_retries: u32,
pub task_timeout_secs: u64,
pub planner_model: Option<String>,
pub planner_max_tokens: u32,
pub dependency_context_budget: usize,
pub confirm_before_execute: bool,
pub aggregator_max_tokens: u32,
pub deferral_backoff_ms: u64,
}Expand description
Configuration for the task orchestration subsystem ([orchestration] TOML section).
Fields§
§enabled: boolEnable the orchestration subsystem.
max_tasks: u32Maximum number of tasks in a single graph.
max_parallel: u32Maximum number of tasks that can run in parallel.
default_failure_strategy: StringDefault failure strategy for all tasks unless overridden per-task.
default_max_retries: u32Default number of retries for the retry failure strategy.
task_timeout_secs: u64Timeout in seconds for a single task. 0 means no timeout.
planner_model: Option<String>Model override for planning LLM calls. When None, uses the agent’s primary model.
Reserved for future caller-side provider selection (post-MVP). LlmPlanner itself
does not use this field — the caller is responsible for constructing the appropriate
provider based on this value before passing it to LlmPlanner::new.
planner_max_tokens: u32Maximum tokens budget hint for planner responses. Reserved for future use when
per-call token limits are added to the LlmProvider::chat API.
dependency_context_budget: usizeTotal character budget for cross-task dependency context injection.
confirm_before_execute: boolWhether to show a confirmation prompt before executing a plan.
aggregator_max_tokens: u32Maximum tokens budget for aggregation LLM calls. Default: 4096.
deferral_backoff_ms: u64Base backoff for ConcurrencyLimit retries; grows exponentially (×2 each attempt) up to 5 s.
Implementations§
Source§impl OrchestrationConfig
impl OrchestrationConfig
Sourcepub fn failure_strategy(&self) -> Result<FailureStrategy, OrchestrationError>
pub fn failure_strategy(&self) -> Result<FailureStrategy, OrchestrationError>
Parse and validate default_failure_strategy as a typed FailureStrategy.
Called at orchestration startup to validate the config value.
§Errors
Returns OrchestrationError::InvalidGraph if the string is not one of
abort, retry, skip, ask.
Trait Implementations§
Source§impl Clone for OrchestrationConfig
impl Clone for OrchestrationConfig
Source§fn clone(&self) -> OrchestrationConfig
fn clone(&self) -> OrchestrationConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OrchestrationConfig
impl Debug for OrchestrationConfig
Source§impl Default for OrchestrationConfig
impl Default for OrchestrationConfig
Source§impl<'de> Deserialize<'de> for OrchestrationConfigwhere
OrchestrationConfig: Default,
impl<'de> Deserialize<'de> for OrchestrationConfigwhere
OrchestrationConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for OrchestrationConfig
impl RefUnwindSafe for OrchestrationConfig
impl Send for OrchestrationConfig
impl Sync for OrchestrationConfig
impl Unpin for OrchestrationConfig
impl UnsafeUnpin for OrchestrationConfig
impl UnwindSafe for OrchestrationConfig
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> 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