Skip to content

refactor(diagnostics): emit system.ntp_synchronized + top-level pi_throttle#102

Merged
d4rken merged 2 commits into
devfrom
refactor/split-pi-health-into-system-and-pi-throttle
May 19, 2026
Merged

refactor(diagnostics): emit system.ntp_synchronized + top-level pi_throttle#102
d4rken merged 2 commits into
devfrom
refactor/split-pi-health-into-system-and-pi-throttle

Conversation

@d4rken

@d4rken d4rken commented May 19, 2026

Copy link
Copy Markdown
Member

Renames the misnamed pi_health block on the diagnostics wire. NTP-sync is a universal host signal — every Linux feeder has it via timedatectl, not just Raspberry Pis. It moves into system.ntp_synchronized alongside uptime_seconds / CPU / memory / disk. The eight vcgencmd get_throttled bits become a top-level pi_throttle block, flat and absent on every non-Pi feeder rather than present-with-null.

A non-Pi Linux feeder now sends nothing Pi-shaped at all. On a Pi, pi_throttle is a top-level sibling of system, no throttle: nesting.

Pre-launch, breaking-by-design: no compat shim, no schema-version bump. The server-side accept landed in airplanes-live/website#72 first.

d4rken added 2 commits May 19, 2026 12:00
…rottle

Splits the misnamed pi_health wire block. NTP-sync is a universal host signal and moves into system.ntp_synchronized; the eight vcgencmd throttle bits become a flat top-level pi_throttle block, absent on non-Pi feeders. collect_pi_ntp_sync renames to collect_ntp_sync.
…=false

Stub vcgencmd alongside timedatectl in the no-probes test so a Pi-based dev box can't leak vcgencmd output through the stub gap. Add an exact-key-set assertion on pi_throttle (the server sanitizer rejects partial blocks). Add a 'no' NTP case so 'false' is pinned through the prune pass. Tone down the collect_ntp_sync comment to match runtime behaviour in containers / stripped images.
@d4rken d4rken merged commit 22427df into dev May 19, 2026
12 checks passed
@d4rken d4rken deleted the refactor/split-pi-health-into-system-and-pi-throttle branch May 19, 2026 10:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant