v0.61.6
Two bug fixes reported by a self-hoster. Control plane + dashboard; the agent is unchanged.
Fixes
- Downtime alerts never fired (#124). The uptime alert state machine had a lost-update race: the per-site read/evaluate/write ran without a row lock, and during a fleet-wide outage a probe sweep (each down probe waits up to the probe timeout) could overlap the next sweep, so two sweeps read the same stale
consecutive_down, both wrote the same incremented value, and the counter never climbed past 1, never crossing the alert threshold. No error was logged. The transition is now atomic (SELECT ... FOR UPDATE+ evaluate + upsert in one transaction), so overlapping sweeps serialize and the counter advances correctly. Downtime and recovery emails now fire. - Notification settings could not be saved (#123). The Notifications form offered a "Daily digest" but the backend only accepted weekly/monthly cadences and required a digest day, so the whole form (including the unrelated per-failure alerts section) was unsavable. The backend now accepts a
dailycadence, validates digest fields only when the digest is enabled, and the settings form + API contract were corrected to match.
Upgrade
- Pull
ghcr.io/mosamlife/wpmgr-{api,web,media-encoder}:v0.61.6. Migration m87 applies automatically on boot. No agent update needed.