pub struct CompactionTraceContext { /* private fields */ }Expand description
Shared recorder context for a compaction checkpoint. Turn-local remote compaction tracing context.
A compaction can retry its upstream request before installing one checkpoint. The context owns the stable checkpoint ID; each request attempt gets a separate request ID.
Implementations§
Source§impl CompactionTraceContext
impl CompactionTraceContext
Sourcepub fn enabled(
writer: Arc<TraceWriter>,
thread_id: AgentThreadId,
codex_turn_id: CodexTurnId,
compaction_id: CompactionId,
model: String,
provider_name: String,
) -> Self
pub fn enabled( writer: Arc<TraceWriter>, thread_id: AgentThreadId, codex_turn_id: CodexTurnId, compaction_id: CompactionId, model: String, provider_name: String, ) -> Self
Builds an enabled context for upstream attempts that compute one checkpoint.
Sourcepub fn is_enabled(&self) -> bool
pub fn is_enabled(&self) -> bool
Returns whether this context records compaction traces.
Sourcepub fn start_attempt(&self, request: &impl Serialize) -> CompactionTraceAttempt
pub fn start_attempt(&self, request: &impl Serialize) -> CompactionTraceAttempt
Starts a new upstream attempt and records the exact compact endpoint request.
Sourcepub fn record_installed(
&self,
checkpoint: &CompactionCheckpointTracePayload<'_>,
)
pub fn record_installed( &self, checkpoint: &CompactionCheckpointTracePayload<'_>, )
Records the point where compacted history becomes the live thread history.
The checkpoint belongs to the same semantic compaction lifecycle as the compact endpoint attempts, so the context reuses its stable compaction ID.
Trait Implementations§
Source§impl Clone for CompactionTraceContext
impl Clone for CompactionTraceContext
Source§fn clone(&self) -> CompactionTraceContext
fn clone(&self) -> CompactionTraceContext
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 CompactionTraceContext
impl RefUnwindSafe for CompactionTraceContext
impl Send for CompactionTraceContext
impl Sync for CompactionTraceContext
impl Unpin for CompactionTraceContext
impl UnsafeUnpin for CompactionTraceContext
impl UnwindSafe for CompactionTraceContext
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
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