pub struct ReplaySanitizingAgentLlmClient { /* private fields */ }Expand description
Agent-layer companion to ReplaySanitizingLlmClient.
Meerkat session services can also receive already-adapted
AgentLlmClients through live replacement and hot-swap APIs. Sanitize at
that boundary too so provider-emitted server tool telemetry is never
replayed into the next stateless model request just because the client
entered below the raw LlmClient adapter seam.
Implementations§
Source§impl ReplaySanitizingAgentLlmClient
impl ReplaySanitizingAgentLlmClient
pub fn new(inner: Arc<dyn AgentLlmClient>) -> Self
pub fn wrap(inner: Arc<dyn AgentLlmClient>) -> Arc<dyn AgentLlmClient> ⓘ
Trait Implementations§
Source§impl AgentLlmClient for ReplaySanitizingAgentLlmClient
impl AgentLlmClient for ReplaySanitizingAgentLlmClient
Source§fn stream_response<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
messages: &'life1 [Message],
tools: &'life2 [Arc<ToolDef>],
max_tokens: u32,
temperature: Option<f32>,
provider_params: Option<&'life3 ProviderParamsOverride>,
) -> Pin<Box<dyn Future<Output = Result<LlmStreamResult, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn stream_response<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
messages: &'life1 [Message],
tools: &'life2 [Arc<ToolDef>],
max_tokens: u32,
temperature: Option<f32>,
provider_params: Option<&'life3 ProviderParamsOverride>,
) -> Pin<Box<dyn Future<Output = Result<LlmStreamResult, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Stream a response from the LLM
Source§fn provider(&self) -> Provider
fn provider(&self) -> Provider
Get the typed catalog provider identity for this client. Read more
Source§fn compile_schema(
&self,
output_schema: &OutputSchema,
) -> Result<CompiledSchema, SchemaError>
fn compile_schema( &self, output_schema: &OutputSchema, ) -> Result<CompiledSchema, SchemaError>
Compile an output schema for this provider. Read more
Source§fn prepare_model_fallback(
&self,
_failure: &AgentError,
) -> Option<AgentLlmFallbackSwitch>
fn prepare_model_fallback( &self, _failure: &AgentError, ) -> Option<AgentLlmFallbackSwitch>
Prepare the next prebuilt fallback model after the generated turn
authority has classified the LLM failure as recoverable. Read more
Source§fn commit_model_fallback(&self, _identity: &SessionLlmIdentity)
fn commit_model_fallback(&self, _identity: &SessionLlmIdentity)
Commit a prepared fallback after the agent loop has applied the paired
request policy, identity, and tool-visibility state.
Source§fn active_capability_base_filter(&self) -> ToolFilter
fn active_capability_base_filter(&self) -> ToolFilter
Capability base filter for the current active model. Read more
Source§fn active_max_output_tokens(&self) -> Option<u32>
fn active_max_output_tokens(&self) -> Option<u32>
Output-token ceiling for the current active model, if the catalog knows
one. Used on every provider call so a sticky fallback keeps respecting
the backup model’s smaller output limit after the failover turn.
Source§fn begin_stream_output_observation(&self)
fn begin_stream_output_observation(&self)
Reset per-call observation of user-visible streaming output. Read more
Source§fn stream_output_observed(&self) -> bool
fn stream_output_observed(&self) -> bool
Whether the current LLM call has emitted user-visible streaming output. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for ReplaySanitizingAgentLlmClient
impl !UnwindSafe for ReplaySanitizingAgentLlmClient
impl Freeze for ReplaySanitizingAgentLlmClient
impl Send for ReplaySanitizingAgentLlmClient
impl Sync for ReplaySanitizingAgentLlmClient
impl Unpin for ReplaySanitizingAgentLlmClient
impl UnsafeUnpin for ReplaySanitizingAgentLlmClient
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
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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