pub struct AwaitingApproval {
pub pending_calls: Vec<ToolCall>,
pub call_ids: Vec<Option<String>>,
pub reason: String,
}Expand description
Agent is waiting for human approval before executing tool calls.
This state is entered when require_approval() is called on
AwaitingToolCall. It provides compile-time safety by preventing
direct tool execution without explicit approval.
Valid transitions:
approve()→AwaitingToolCall(proceed with execution)deny()→Finished(abort with reason)
Fields§
§pending_calls: Vec<ToolCall>Pending tool calls awaiting approval.
call_ids: Vec<Option<String>>Native tool call IDs.
reason: StringReason for requiring approval (for audit trail).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for AwaitingApproval
impl RefUnwindSafe for AwaitingApproval
impl Send for AwaitingApproval
impl Sync for AwaitingApproval
impl Unpin for AwaitingApproval
impl UnsafeUnpin for AwaitingApproval
impl UnwindSafe for AwaitingApproval
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