pub struct RetryConfig {
pub max_retries: u32,
pub base_ms: u64,
pub max_delay_ms: u64,
pub enabled: bool,
}Expand description
Named retry policy (one dependency class: SSH connect / agent re-invoke).
Clone is cheap (Copy). Default has Self::enabled = false so product
paths never retry as a side effect (opt-in / least privilege).
Fields§
§max_retries: u32Retries after the first attempt (0 = single try).
base_ms: u64Exponential base delay in milliseconds.
max_delay_ms: u64Maximum single sleep in milliseconds.
enabled: boolKill switch: when false, never retries.
Implementations§
Source§impl RetryConfig
impl RetryConfig
Sourcepub const fn agent_default() -> Self
pub const fn agent_default() -> Self
Agent-facing defaults (enabled) for process re-invocation only.
Justification: matches docs/AGENTS.md — at most two retries on exit 74
with backoff; not used inside product exec paths.
Sourcepub fn max_attempts(self) -> u32
pub fn max_attempts(self) -> u32
Total attempts including the first try.
Sourcepub fn may_retry(self, attempt: u32) -> bool
pub fn may_retry(self, attempt: u32) -> bool
Whether another attempt is allowed after attempt completed tries (1-based).
Sourcepub fn delay_for_attempt(self, attempt: u32) -> Duration
pub fn delay_for_attempt(self, attempt: u32) -> Duration
Full-jitter delay for this attempt number (1-based completed count).
Trait Implementations§
Source§impl Clone for RetryConfig
impl Clone for RetryConfig
Source§fn clone(&self) -> RetryConfig
fn clone(&self) -> RetryConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RetryConfig
Source§impl Debug for RetryConfig
impl Debug for RetryConfig
Source§impl Default for RetryConfig
impl Default for RetryConfig
impl Eq for RetryConfig
Source§impl PartialEq for RetryConfig
impl PartialEq for RetryConfig
impl StructuralPartialEq for RetryConfig
Auto Trait Implementations§
impl Freeze for RetryConfig
impl RefUnwindSafe for RetryConfig
impl Send for RetryConfig
impl Sync for RetryConfig
impl Unpin for RetryConfig
impl UnsafeUnpin for RetryConfig
impl UnwindSafe for RetryConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.