Problem
timeout and max_retries are configured once at client initialization and apply globally to every request. There is no way to override them for individual calls. A developer querying a complex document may need a 60s timeout for that one call without affecting all other requests.
Proposed Behaviour
Each method accepts optional parameters to override the global defaults for that call only.
# Long timeout for one specific call, global default unchanged
response = await client.query("...", timeout=60.0, max_retries=0)
- Overrides apply to that single call only
- Supported parameters:
timeout, max_retries
- Global client config is never mutated
Files to Modify
| File |
Change |
src/brainus_ai/client.py |
Add optional timeout and max_retries kwargs to query(), get_usage(), get_plans() |
Acceptance Criteria