codex-client/src/error.rs
30 lines
use http::HeaderMap;use http::StatusCode;use thiserror::Error;#[derive(Debug, Error)]pub enum TransportError { #[error("http {status}: {body:?}")] Http { status: StatusCode, url: Option<String>, headers: Option<HeaderMap>, body: Option<String>, }, #[error("retry limit reached")] RetryLimit, #[error("timeout")] Timeout, #[error("network error: {0}")] Network(String), #[error("request build error: {0}")] Build(String),}#[derive(Debug, Error)]pub enum StreamError { #[error("stream failed: {0}")] Stream(String), #[error("timeout")] Timeout,}