pub struct PreparedCompaction {
pub summary_input: Vec<Message>,
pub preserved_tail: Vec<Message>,
pub preserved_tail_start: usize,
pub groups: Vec<AssistantActionGroup>,
pub shrunk_tool_results: usize,
}Expand description
Output of the deterministic pre-summary compaction-prep pipeline.
Fields§
§summary_input: Vec<Message>Older history reduced into a summarizer-safe form.
preserved_tail: Vec<Message>Recent working context preserved verbatim (after invariant sanitization).
preserved_tail_start: usizeIndex in the original message list where the preserved tail begins.
groups: Vec<AssistantActionGroup>Assistant-action groups discovered in the original message list.
shrunk_tool_results: usizeNumber of tool result messages whose bodies were replaced with compact
placeholders inside summary_input.
Implementations§
Source§impl PreparedCompaction
impl PreparedCompaction
pub fn should_compact(&self) -> bool
Trait Implementations§
Source§impl Clone for PreparedCompaction
impl Clone for PreparedCompaction
Source§fn clone(&self) -> PreparedCompaction
fn clone(&self) -> PreparedCompaction
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PreparedCompaction
impl RefUnwindSafe for PreparedCompaction
impl Send for PreparedCompaction
impl Sync for PreparedCompaction
impl Unpin for PreparedCompaction
impl UnsafeUnpin for PreparedCompaction
impl UnwindSafe for PreparedCompaction
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
Converts
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>
Converts
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