pub struct LoopInput {
pub instruction: String,
pub output_contract: Option<String>,
pub seed: Vec<(String, String)>,
pub model: String,
pub max_steps: u32,
pub max_tokens: u64,
pub deadline: Instant,
pub cancel: Option<Arc<AtomicBool>>,
}Expand description
The explicit inputs the loop needs, independent of where they came from
(CLI Config for once-mode, or a SpawnPayload for a subagent). This is
the seam that lets the same loop body run in-process or in a child.
Fields§
§instruction: String§output_contract: Option<String>§seed: Vec<(String, String)>Narrowed context seed as (role, content) pairs (role ∈ system|user|assistant|tool).
model: String§max_steps: u32§max_tokens: u64§deadline: Instant§cancel: Option<Arc<AtomicBool>>A cooperative cancel flag checked at each turn boundary (set by a
subagent’s control thread on ControlMsg::Cancel). None for a run with
no external canceller.
Auto Trait Implementations§
impl Freeze for LoopInput
impl RefUnwindSafe for LoopInput
impl Send for LoopInput
impl Sync for LoopInput
impl Unpin for LoopInput
impl UnsafeUnpin for LoopInput
impl UnwindSafe for LoopInput
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
Mutably borrows from an owned value. Read more