From 272944b98f55c60e1b3a5b9f0f242ab8083dfec5 Mon Sep 17 00:00:00 2001 From: atlas Date: Thu, 13 Aug 2026 12:39:38 +0200 Subject: [PATCH] docs: delete two false cost claims about the boot sweep's drains Both said a whole-hive graceful stop costs ONE `GRACEFUL_STOP_TIMEOUT` in total because drains overlap. That is only true for a power op. In a rebuild subtree the brace holds the build slot across the whole subtree, drain included, so the boot sweep's per-agent drains serialise and the sweep costs one timeout per wave of `buildSlots`. Deleted rather than corrected. The right cost statement depends on an operator knob and belongs in docs/coordinator.md if it belongs anywhere; a comment that has to hedge about a config value is the kind that goes stale silently. A comment saying nothing beats one that lies. --- hive-c0re/src/job_queue/exec.rs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/hive-c0re/src/job_queue/exec.rs b/hive-c0re/src/job_queue/exec.rs index 9cda1b70..46319af1 100644 --- a/hive-c0re/src/job_queue/exec.rs +++ b/hive-c0re/src/job_queue/exec.rs @@ -19,9 +19,7 @@ use crate::power::{ReconcileAction, reconcile_action}; /// Max time `Drain` waits for the harness to run its stop-checkpoint /// turn before falling back to the hard stop. Generous — a checkpoint /// turn can take a while — but bounded so a wedged agent never blocks -/// the stop indefinitely. Drains hold no build slot, so a whole-hive -/// graceful stop overlaps every agent's drain instead of serialising -/// N × this timeout. +/// the stop indefinitely. pub const GRACEFUL_STOP_TIMEOUT: std::time::Duration = std::time::Duration::from_mins(3); /// Max time `PauseDrain` waits for the harness to report @@ -353,9 +351,7 @@ async fn run_meta_lock( // Grow one rebuild subgraph per stale agent into *this* boot DAG // (rooted on this `MetaLock`, so they build against the post-bump // lock), rather than fanning out child DAGs. The caller grows them - // with the graceful flavour: the per-agent drains overlap, so the - // sweep's cost ceiling is one `GRACEFUL_STOP_TIMEOUT` in total, not - // one per agent. + // with the graceful flavour. return Ok(fanout.unwrap_or_default()); } let _progress = coord.meta_update_guard();