From 786d404938331197c7edc4c719b661d9dae6a26f Mon Sep 17 00:00:00 2001 From: "Rodrigo Rodriguez (Pragmatismo)" Date: Tue, 10 Mar 2026 15:26:10 -0300 Subject: [PATCH] feat: handle 429 rate limit in OpenAI non-stream generate --- src/llm/mod.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/llm/mod.rs b/src/llm/mod.rs index 60cbb26c..6b449acb 100644 --- a/src/llm/mod.rs +++ b/src/llm/mod.rs @@ -303,6 +303,12 @@ impl LLMProvider for OpenAIClient { let status = response.status(); if status != reqwest::StatusCode::OK { let error_text = response.text().await.unwrap_or_default(); + + // Handle 429 rate limit with user-friendly message + if status == reqwest::StatusCode::TOO_MANY_REQUESTS { + return Ok("Server is busy, please try again in a few seconds...".to_string()); + } + error!("LLM generate error: {}", error_text); return Err(format!("LLM request failed with status: {}", status).into()); }