pub struct RlmProgressEvent {
pub trace_id: Uuid,
pub iteration: usize,
pub max_iterations: usize,
pub status: String,
}Expand description
One progress tick emitted by an in-flight RLM analysis loop.
Emitted at iteration boundaries so the TUI can render a spinner with
iteration / max_iterations and a short status string. This type is
constructed inside the session crate from the private ProcessProgress
— do not add fields that should not appear on the bus or in
persistent traces.
§Examples
use codetether_agent::session::RlmProgressEvent;
use uuid::Uuid;
let p = RlmProgressEvent {
trace_id: Uuid::nil(),
iteration: 3,
max_iterations: 15,
status: "grepping".into(),
};
assert!(p.fraction() > 0.0);
assert!(p.fraction() < 1.0);Fields§
§trace_id: UuidCorrelates every event from a single RLM invocation, including the
terminal RlmCompletion.
iteration: usize1-based iteration number currently executing.
max_iterations: usizeMaximum iterations permitted by config.
status: StringShort human-readable status (“grepping”, “summarising”, etc.).
Implementations§
Source§impl RlmProgressEvent
impl RlmProgressEvent
Sourcepub fn fraction(&self) -> f64
pub fn fraction(&self) -> f64
Fraction of the iteration budget consumed (0.0 – 1.0).
Returns 0.0 when max_iterations == 0.
§Examples
use codetether_agent::session::RlmProgressEvent;
use uuid::Uuid;
let p = RlmProgressEvent {
trace_id: Uuid::nil(),
iteration: 5,
max_iterations: 10,
status: "x".into(),
};
assert!((p.fraction() - 0.5).abs() < 1e-9);Trait Implementations§
Source§impl Clone for RlmProgressEvent
impl Clone for RlmProgressEvent
Source§fn clone(&self) -> RlmProgressEvent
fn clone(&self) -> RlmProgressEvent
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RlmProgressEvent
impl Debug for RlmProgressEvent
Source§impl<'de> Deserialize<'de> for RlmProgressEvent
impl<'de> Deserialize<'de> for RlmProgressEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RlmProgressEvent
impl RefUnwindSafe for RlmProgressEvent
impl Send for RlmProgressEvent
impl Sync for RlmProgressEvent
impl Unpin for RlmProgressEvent
impl UnsafeUnpin for RlmProgressEvent
impl UnwindSafe for RlmProgressEvent
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>
fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>
Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more