Add configurable backend timeouts#35
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughAdds configurable request and streaming idle timeouts (MAPLE_REQUEST_TIMEOUT_SECS, MAPLE_STREAM_IDLE_TIMEOUT_SECS), wires them into Config and client creation, applies tokio timeouts to backend calls and SSE idle waits, and updates Docker, compose, justfile, README, docs, and tests. ChangesConfigurable Request and Streaming Timeouts
Sequence Diagram(s)sequenceDiagram
participant ClientRequest as Client Request
participant Proxy as Maple Proxy
participant ClientCache as Client Cache
participant Creator as create_client_with_auth
participant Backend as OpenSecret backend
ClientRequest->>Proxy: incoming request (api_key)
Proxy->>ClientCache: lookup_or_create_client(api_key, request_timeout)
ClientCache->>Creator: create_client_with_auth(request_timeout)
Creator->>Backend: attestation handshake (timed)
Backend-->>Creator: attestation success or error
Creator-->>ClientCache: client or timeout_response
ClientCache-->>Proxy: client or timeout_response
Proxy->>Backend: backend call (timed)
Backend-->>Proxy: response or timeout
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Devin Review found 1 new potential issue.
⚠️ 1 issue in files not directly in the diff
⚠️ CLAUDE.md Configuration section not updated with new environment variables (CLAUDE.md:76-82)
The PR adds two new environment variables (MAPLE_REQUEST_TIMEOUT_SECS and MAPLE_STREAM_IDLE_TIMEOUT_SECS) in src/config.rs, .env.example, README.md, Dockerfile, docker-compose.yml, and justfile, but does not update the Configuration section of CLAUDE.md (lines 76-82) which serves as the canonical guidance file for this repository. The CLAUDE.md explicitly lists all available environment variables, and this list is now incomplete.
View 4 additional findings in Devin Review.
Closes #33.
Summary:
Note:
Tests:
Summary by CodeRabbit
New Features
Documentation
Chores
Tests