proxima-primitives 0.1.0

The pipe algebra itself: the Pipe trait — an async In -> Result<Out, Err> that becomes a transform, source, sink or observe by choice of types — plus its three tier siblings (SendPipe, UnpinPipe, UnpinSendPipe), Handler, SourcePipe, the payload types Carry, ResponseStream and RequestStream (buffered bodies are plain Bytes), HeaderList, the sans-IO byte-stream traits, runtime-agnostic concurrency primitives, and the Replay/GenericStream transport seam. Everything else in proxima composes what is defined here.
Documentation
//! Resilience policy layer — pure sans-IO state machines for backoff, deadlines,
//! circuit breaking, and retry control, plus the `Retry` executor that drives
//! them over an injected [`Clock`](crate::pipe::capabilities::Clock). Core tier
//! (no_std, no-alloc) throughout — `Retry` holds its futures inline, nothing
//! boxed; the alloc-only `Fallback` Pipe combinator is gated behind `alloc`.

pub mod backoff;
pub mod circuit_breaker;
pub mod deadline;
pub mod retry;
pub mod retry_exec;

#[cfg(feature = "alloc")]
pub mod fallback;

pub use backoff::{Backoff, Jitter};
pub use circuit_breaker::{AtomicCircuitBreaker, CircuitBreaker, CircuitState};
pub use deadline::Deadline;
pub use retry::{RetryAction, RetryController};
pub use retry_exec::Retry;

#[cfg(feature = "alloc")]
pub use fallback::Fallback;