pub struct AgentSessionCompactor { /* private fields */ }Implementations§
Source§impl AgentSessionCompactor
impl AgentSessionCompactor
Sourcepub async fn compact_active_run_for_context(
&self,
engine: &AgentSessionContextEngine,
request: SessionContextRequest,
policy: ContextTokenPolicy,
) -> Result<Option<AgentSessionRecord>, SessionContextError>
pub async fn compact_active_run_for_context( &self, engine: &AgentSessionContextEngine, request: SessionContextRequest, policy: ContextTokenPolicy, ) -> Result<Option<AgentSessionRecord>, SessionContextError>
Compact against the same full-input meter and policy used by context projection. Candidate summaries are measured before they become durable facts; a failed candidate cannot enlarge the next model request.
Source§impl AgentSessionCompactor
impl AgentSessionCompactor
pub fn new( journal: Arc<dyn AgentSessionJournalStore>, summarizer: Arc<dyn AgentSessionSummarizer>, policy: SessionCompactionPolicy, ) -> Result<Self, SessionContextError>
pub fn policy(&self) -> &SessionCompactionPolicy
pub fn summarizer_descriptor(&self) -> &SessionSummarizerDescriptor
pub async fn compact_if_needed( &self, session_id: &AgentSessionId, current_run_id: &RunId, ) -> Result<Option<AgentSessionRecord>, SessionContextError>
Sourcepub async fn compact_active_run_for_pressure(
&self,
session_id: &AgentSessionId,
current_run_id: &RunId,
) -> Result<Option<AgentSessionRecord>, SessionContextError>
pub async fn compact_active_run_for_pressure( &self, session_id: &AgentSessionId, current_run_id: &RunId, ) -> Result<Option<AgentSessionRecord>, SessionContextError>
Compacts only already-committed, complete Tool exchanges from the current Run. Callers use this after a local Context preflight reports pressure and before starting the next model attempt.
Auto Trait Implementations§
impl !RefUnwindSafe for AgentSessionCompactor
impl !UnwindSafe for AgentSessionCompactor
impl Freeze for AgentSessionCompactor
impl Send for AgentSessionCompactor
impl Sync for AgentSessionCompactor
impl Unpin for AgentSessionCompactor
impl UnsafeUnpin for AgentSessionCompactor
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.