pub struct FallbackContext<'a> {
pub error: &'a LlmError,
pub attempt: usize,
pub iterations: usize,
pub conversation: Arc<[Message]>,
}Expand description
Fallback 上下文 — 提供给策略做决策的依据。
设计原则:
- Runtime 只报告事实(第几次失败、什么错误),策略自己决定是否继续
error为借用 — Context 是观察窗口,不成为错误的临时仓库- 错误所有权始终留在 Retry Loop 手中,Abort 时直接
err.clone()返回
Fields§
§error: &'a LlmErrorProvider 调用失败的具体错误(借用,Context 只观察)
attempt: usize当前失败次数(从 1 开始,首次失败为 1)
iterations: usizeAgent Loop 已完成的迭代轮次
conversation: Arc<[Message]>当前对话历史(不可变快照)
Auto Trait Implementations§
impl<'a> Freeze for FallbackContext<'a>
impl<'a> RefUnwindSafe for FallbackContext<'a>
impl<'a> Send for FallbackContext<'a>
impl<'a> Sync for FallbackContext<'a>
impl<'a> Unpin for FallbackContext<'a>
impl<'a> UnsafeUnpin for FallbackContext<'a>
impl<'a> UnwindSafe for FallbackContext<'a>
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