## Task 4: Enhance error handling and retry logic - Introduce a custom exception hierarchy (e.g. `OuraAPIError`) that wraps HTTP errors and surfaces status codes/messages. - Add optional retry/backoff support for transient failures (e.g. via `tenacity` or built‑in logic).
Task 4: Enhance error handling and retry logic
OuraAPIError) that wraps HTTP errors and surfaces status codes/messages.tenacityor built‑in logic).