1#[derive(Debug, thiserror::Error)]
3pub enum BridgeError {
4 #[error("ring buffer full (capacity: {capacity}, pending: {pending})")]
7 Full { capacity: usize, pending: usize },
8
9 #[error("ring buffer empty")]
11 Empty,
12
13 #[error("channel disconnected: {side} side dropped")]
15 Disconnected { side: &'static str },
16
17 #[error("backpressure: queue utilization at {percent}% (threshold: {threshold}%)")]
19 Backpressure { percent: u8, threshold: u8 },
20
21 #[error("deadline exceeded for request {request_id}")]
23 DeadlineExceeded { request_id: u64 },
24}
25
26pub type Result<T> = std::result::Result<T, BridgeError>;