pub struct StageSetup {
pub inference_config: InferenceConfig,
pub routing: Option<ToolResultRouting>,
pub accepts_messages: bool,
pub context_layout: Option<ContextLayout>,
pub system_prompt: Option<String>,
pub output: Option<OutputSpec>,
}Expand description
Pre-resolved per-stage setup, applied by enter_stage when an agent enters
a stage: inference parameters, tool-result routing, whether the stage accepts
live user input, an optional stage-specific context layout, and an optional
system prompt. Built once per stage when the agent is spawned (mirrors
StageInferences) so stage entry stays synchronous and query-friendly.
(Ported from the imperative loop’s per-stage setup in the CLI executor.)
Fields§
§inference_config: InferenceConfigPer-stage inference config (temperature / max output tokens).
routing: Option<ToolResultRouting>Optional per-stage tool-result routing.
accepts_messages: boolWhether the stage delivers live user messages to the agent.
context_layout: Option<ContextLayout>Optional stage-specific context layout to swap to on entry.
system_prompt: Option<String>Optional stage instructions injected as pinned context on entry.
output: Option<OutputSpec>The output shape resolved for this stage (agent, stage, and the
launching caller’s request combined), and whether the stage must produce
one. None means no level asked for a shape.
Held here as well as on StageInference because the two use it for
different things: this copy is folded into the stage’s system prompt, and
that copy is what validates a submission at dispatch.
Trait Implementations§
Source§impl Clone for StageSetup
impl Clone for StageSetup
Source§fn clone(&self) -> StageSetup
fn clone(&self) -> StageSetup
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for StageSetup
impl RefUnwindSafe for StageSetup
impl Send for StageSetup
impl Sync for StageSetup
impl Unpin for StageSetup
impl UnsafeUnpin for StageSetup
impl UnwindSafe for StageSetup
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ConditionalSend for Twhere
T: Send,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.