pub struct RedundancyStatusWire {
pub role: String,
pub project_state: Option<String>,
pub activity_level: Option<String>,
pub local_id: Option<String>,
pub peer_id: Option<String>,
pub peer_connected: bool,
pub has_config_access: bool,
pub sync_pending: bool,
pub failover_pending: bool,
pub uptime: Option<i64>,
pub last_sync_timestamp: Option<i64>,
pub extra: BTreeMap<String, Value>,
}Expand description
GET /data/api/v1/redundancy — the redundancy status. Live-captured
200 on BOTH rigs (09-LIVE-CAPTURES §3); byte-shape identical, values
differ only in localId + uptime.
Fields§
§role: String"Independent" (captured on both fresh rigs) / "Primary" /
"Backup" (GatewayInfo.redundancy_role vocabulary) — a String
on purpose: an unknown future role must ride, not refuse.
project_state: Option<String>"Unknown" on both captures (a fresh Independent rig has no
project state to report).
activity_level: Option<String>"Active" on both captures.
local_id: Option<String>This gateway’s id — the container IP on both captures
(192.168.215.2 / 192.168.171.2).
peer_id: Option<String>The peer’s id — ABSENT on both fresh-rig captures (no peer exists); the flat research shape documents it, so it rides Option. Peer-connected shapes were NOT capturable on a single fresh rig — everything peer-shaped stays Option/lenient.
peer_connected: boolfalse on both captures (no peer on a fresh rig).
has_config_access: booltrue on both captures (an Independent gateway owns its config).
sync_pending: boolfalse on both captures.
failover_pending: boolfalse on both captures.
uptime: Option<i64>Milliseconds since gateway (JVM) start — capture-proven by wall-clock cross-check on BOTH rigs (module doc; 09-LIVE-CAPTURES §3). Option: present on both captures, defaulted for tolerance.
last_sync_timestamp: Option<i64>-1 on both captures = the NEVER-SYNCED sentinel. Unit NOT
capture-proven (no sync ever happened on a fresh rig); the ms
interpretation is INFERENCE from the sibling
licenses.effective.lastUpdated epoch-ms. Use
Self::last_sync_epoch_ms — raw -1 rides here, never
misread as a real timestamp.
extra: BTreeMap<String, Value>Unknown keys round-trip (version tolerance).
Implementations§
Source§impl RedundancyStatusWire
impl RedundancyStatusWire
Sourcepub fn last_sync_epoch_ms(&self) -> Option<i64>
pub fn last_sync_epoch_ms(&self) -> Option<i64>
lastSyncTimestamp normalized: the -1 sentinel (“never
synced” — both fresh rigs) and absent keys → None; a
non-negative value is epoch-ms PER THE SIBLING PATTERN — an
INFERENCE (flagged at the field), never a capture-proven fact.
Trait Implementations§
Source§impl Clone for RedundancyStatusWire
impl Clone for RedundancyStatusWire
Source§fn clone(&self) -> RedundancyStatusWire
fn clone(&self) -> RedundancyStatusWire
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more