pub struct Panel {
pub turn_number: usize,
pub role: Role,
pub timestamp: Timestamp,
pub model: Option<String>,
pub blocks: Vec<Block>,
pub is_sidechain: bool,
pub is_meta: bool,
}Expand description
One speaker’s contribution as displayed. Folding the wire-level turns into panels is where harness scaffolding is filtered and tool results are reunited with the assistant that called them, so the renderer walks an already-clean stream and never re-derives any of it.
Fields§
§turn_number: usizeThe 1-based position of this panel’s leading turn in the raw stream. Gaps between successive panels mark turns that were folded in or dropped, so a panel that spans several turns still has one stable label.
role: Role§timestamp: Timestamp§model: Option<String>§blocks: Vec<Block>§is_sidechain: boolTrue for panels belonging to a subagent running inside this session.
is_meta: boolTrue for panels the harness injected rather than the user typing them.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Panel
impl RefUnwindSafe for Panel
impl Send for Panel
impl Sync for Panel
impl Unpin for Panel
impl UnsafeUnpin for Panel
impl UnwindSafe for Panel
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