mirror of
https://github.com/jmcorgan/fips.git
synced 2026-08-09 08:14:42 +00:00
Create src/node/peering/ as the home for the peer desired-state (homeostatic reconciler) concept and move the cross-attempt connection retry schedule into it: RetryState plus schedule_retry / schedule_reconnect / process_pending_retries. Mechanical relocation only. The methods remain inherent on Node; the retry_count must persist across re-dials (a fresh connection is created each attempt), which is why the schedule belongs in the peering home rather than on a per-connection type. The one-level-deeper module path requires pub(super) -> pub(in crate::node) to preserve the prior scope, plus module-path fixups at the reference sites. No behavior change; unit test count unchanged (1596).
13 lines
628 B
Rust
13 lines
628 B
Rust
//! Peering homeostasis — the desired-state controller for the node's peer set.
|
|
//!
|
|
//! This module is the home for the peering-reconciler concept: config defines a
|
|
//! desired peer set; the reconciler converges the observed set toward it
|
|
//! (auto-connect floor, overlay pool, transport-neighbor growth) under the
|
|
//! `node.limits` ceiling. Startup and steady-state are the same loop.
|
|
//!
|
|
//! The cross-attempt retry schedule (`retry.rs`) lives here because a fresh
|
|
//! connection is created per re-dial, so the escalating backoff count must
|
|
//! persist in the reconciler, not per-connection.
|
|
|
|
pub(in crate::node) mod retry;
|