fix: gemini route, usage capture, search timeout, and trace finalization
- Add missing /v1/gemini POST route and handler - Capture MitmEvent::Usage in gemini sync/streaming handlers - Add retry counter (max 3) to search handler to prevent hang - Add trace finalization at all gemini_sync channel exit points - Fix UpstreamError trace outcome label - Add timeout trace with error recording - Dispatch Usage before ResponseComplete in SSE flush
This commit is contained in:
@@ -33,6 +33,10 @@ pub struct AppState {
|
||||
pub sessions: SessionManager,
|
||||
pub mitm_store: crate::mitm::store::MitmStore,
|
||||
pub quota_store: crate::quota::QuotaStore,
|
||||
/// Whether the MITM proxy is active (false when --no-mitm).
|
||||
pub mitm_enabled: bool,
|
||||
/// Per-call debug trace collector.
|
||||
pub trace: crate::trace::TraceCollector,
|
||||
}
|
||||
|
||||
// ─── Router ──────────────────────────────────────────────────────────────────
|
||||
@@ -44,6 +48,7 @@ pub fn router(state: Arc<AppState>) -> Router {
|
||||
"/v1/chat/completions",
|
||||
post(completions::handle_completions),
|
||||
)
|
||||
.route("/v1/gemini", post(gemini::handle_gemini))
|
||||
.route(
|
||||
"/v1beta/{*path}",
|
||||
post(gemini::handle_gemini_v1beta),
|
||||
|
||||
Reference in New Issue
Block a user