struct BlockState {
next_offset: i64,
tasks: Vec<(String, TodoItem)>,
list: Option<Vec<TodoItem>>,
open: Vec<(String, String)>,
partial: bool,
recent_files: Vec<RecentFile>,
new_edits: Vec<RecentFile>,
new_prs: Vec<NewPrCommand>,
seen: bool,
}Expand description
Everything we accumulate for one block across ticks.
Fields§
§next_offset: i64Byte offset of the next unread line in the block’s output.
tasks: Vec<(String, TodoItem)>Item-at-a-time accumulation (TaskCreate/TaskUpdate), keyed so an
update revises its own row. Insertion order is the agent’s own creation
order, the only ordering it ever expressed.
list: Option<Vec<TodoItem>>Last whole-list call. Supersedes tasks outright when present, because
that is the tool’s own replace-everything semantics.
open: Vec<(String, String)>In-flight tool_use calls, oldest first.
partial: bool§recent_files: Vec<RecentFile>Files named by edit tools, newest first (see note_recent_file).
new_edits: Vec<RecentFile>Edits read live since the sweep last took them, oldest first: what
the overlap notes check (work_facts::overlap_notes).
new_prs: Vec<NewPrCommand>PRs it started opening, read live since the sweep last took them: what
the PR overlap note checks (work_facts::overlap_notes::on_new_prs).
seen: boolThis block’s output has been looked at before.
Implementations§
Source§impl BlockState
impl BlockState
fn progress(&self) -> AgentProgress
Trait Implementations§
Source§impl Debug for BlockState
impl Debug for BlockState
Source§impl Default for BlockState
impl Default for BlockState
Source§fn default() -> BlockState
fn default() -> BlockState
Auto Trait Implementations§
impl Freeze for BlockState
impl RefUnwindSafe for BlockState
impl Send for BlockState
impl Sync for BlockState
impl Unpin for BlockState
impl UnsafeUnpin for BlockState
impl UnwindSafe for BlockState
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§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>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§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.§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.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more