//! Layered network error reporting.
//!
//! When a URL-targeted MCP server fails to respond, the runner needs to tell
//! the developer *which layer* broke (DNS, TCP, TLS, HTTP, auth, MCP init,
//! readiness) so the next step is obvious. This module ships the canonical
//! [`Layer`] enum and a small diagnostic struct that every probe and request
//! pipeline uses to report a failure.
//!
//! The discovery fetcher is the first consumer; the HTTP runner
//! is the next.

mod auth_challenge;
mod error_layer;
pub mod proxy;

pub use auth_challenge::AuthChallenge;
pub use error_layer::{classify_reqwest_error, Layer, NetworkDiagnostic};
pub use proxy::{parse_bypass_list, ProxyConfig, ProxyError};
