···326326impl<T: HttpClient> ApiClient for AnthropicClient<T> {
327327 /// Send a request to the Anthropic API, processing tool calls as necessary. Returns a final
328328 /// response after all tool calls are processed and sent back to the API.
329329- async fn send_message<'a>(
329329+ async fn send_message(
330330 &self,
331331- request: &'a ChatRequest<'a>,
331331+ request: &ChatRequest<'_>,
332332 ) -> Result<CompletionApiResponse, LLMError> {
333333 // Use config if available, otherwise fall back to env vars
334334 let (api_key, model, max_tokens) = if let Some(ref config) = self.config {
+2-2
zqa-rag/src/llm/base.rs
···177177#[allow(async_fn_in_trait)]
178178pub trait ApiClient {
179179 /// Send a request to the API and return the response.
180180- async fn send_message<'a>(
180180+ async fn send_message(
181181 &self,
182182- request: &'a ChatRequest<'a>,
182182+ request: &ChatRequest<'_>,
183183 ) -> Result<CompletionApiResponse, LLMError>;
184184}
+2-2
zqa-rag/src/llm/factory.rs
···79798080// Implement ApiClient for LLMClient to delegate to the inner implementations
8181impl ApiClient for LLMClient {
8282- async fn send_message<'a>(
8282+ async fn send_message(
8383 &self,
8484- message: &'a ChatRequest<'a>,
8484+ message: &ChatRequest<'_>,
8585 ) -> Result<crate::llm::base::CompletionApiResponse, LLMError> {
8686 match self {
8787 LLMClient::Anthropic(client) => client.send_message(message).await,
+2-2
zqa-rag/src/llm/gemini.rs
···318318}
319319320320impl<T: HttpClient> ApiClient for GeminiClient<T> {
321321- async fn send_message<'a>(
321321+ async fn send_message(
322322 &self,
323323- request: &'a ChatRequest<'a>,
323323+ request: &ChatRequest<'_>,
324324 ) -> Result<CompletionApiResponse, LLMError> {
325325 let key = get_gemini_api_key()?;
326326 let model = match &self.config {
+2-2
zqa-rag/src/llm/ollama.rs
···5858impl<T: HttpClient> ApiClient for OllamaClient<T> {
5959 /// Send a request to the `ollama` API, processing tool calls as necessary. Returns a final
6060 /// response after all tool calls are processed and sent back to the API.
6161- async fn send_message<'a>(
6161+ async fn send_message(
6262 &self,
6363- request: &'a ChatRequest<'a>,
6363+ request: &ChatRequest<'_>,
6464 ) -> Result<CompletionApiResponse, LLMError> {
6565 // Use config if available, otherwise fall back to env vars
6666 let (model, max_tokens, base_url) = if let Some(ref config) = self.config {
+2-2
zqa-rag/src/llm/openai.rs
···493493 /// Send a request to the OpenAI Responses API, processing tool calls as necessary.
494494 /// Returns a final response after all tool calls are processed and sent back.
495495 #[allow(clippy::too_many_lines)]
496496- async fn send_message<'a>(
496496+ async fn send_message(
497497 &self,
498498- request: &'a ChatRequest<'a>,
498498+ request: &ChatRequest<'_>,
499499 ) -> Result<CompletionApiResponse, super::errors::LLMError> {
500500 // Use config if available, otherwise fall back to env vars
501501 let (api_key, model, _) = if let Some(ref config) = self.config {
+2-2
zqa-rag/src/llm/openrouter.rs
···322322impl<T: HttpClient> ApiClient for OpenRouterClient<T> {
323323 /// Send a request to the OpenRouter API, processing tool calls as necessary. Returns a final
324324 /// response after all tool calls are processed and sent back to the API.
325325- async fn send_message<'a>(
325325+ async fn send_message(
326326 &self,
327327- request: &'a ChatRequest<'a>,
327327+ request: &ChatRequest<'_>,
328328 ) -> Result<CompletionApiResponse, LLMError> {
329329 // Use config if available, otherwise fall back to env vars
330330 let (api_key, model) = if let Some(ref config) = self.config {