pub struct DaemonLiveness {
pub pidfile_pid: Option<u32>,
pub pidfile_alive: bool,
pub pgrep_pids: Vec<u32>,
pub orphan_pids: Vec<u32>,
pub record: PidRecord,
}Expand description
Snapshot of daemon liveness state read through ONE consistent
view. Consumed by wire status, wire doctor’s daemon check,
and daemon_pid_consistency so all three surfaces agree by
construction — issue #2 root cause was three call sites that
each computed liveness independently and disagreed for 25 min.
Fields§
§pidfile_pid: Option<u32>PID claimed by daemon.pid (None if missing/corrupt).
pidfile_alive: boolTrue iff pidfile_pid is currently a live process.
pgrep_pids: Vec<u32>Every PID matching pgrep -f "wire daemon". Empty if pgrep is
unavailable (non-Unix systems, missing util) — the consumer
must not treat empty as “no daemons” without considering this.
orphan_pids: Vec<u32>PIDs in pgrep_pids that do NOT match pidfile_pid. These are
orphan daemons racing the cursor with the pidfile-recorded one.
record: PidRecordFull parsed pidfile record (Json / LegacyInt / Missing / Corrupt).
Trait Implementations§
Source§impl Clone for DaemonLiveness
impl Clone for DaemonLiveness
Source§fn clone(&self) -> DaemonLiveness
fn clone(&self) -> DaemonLiveness
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more