mirror of
https://github.com/jmcorgan/fips.git
synced 2026-08-11 17:17:54 +00:00
node: home the peering concept; relocate the connection-retry schedule
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).
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
//! 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;
|
||||
Reference in New Issue
Block a user