1//! A System One client independent of any runtime or HTTP stack.2//!3//! The policy lives here, once: retries and their budget, per-attempt4//! timeouts, "never sent" redials, request ids on every error, and error5//! classification. It reaches the world through two ports, [`Transport`]6//! (send one request) and [`Runtime`] (time and randomness), which an7//! adapter implements: `postjevsql-pg` over a Postgres `WaitEventSet`,8//! or a fake in tests, where time is virtual and runs deterministically.9//! An [`Observer`] hears each attempt, retry, redial and answer.10#![forbid(unsafe_code)]1112mod client;
13mod error;
14mod ports;
1516pubuse client::{Answered, Client};
17pubuse error::ClientError;
18pubuse ports::{Event, HttpRequest, Instant, HttpResponse, Observer, Runtime, Transport, TransportError, TransportErrorKind};