mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-10 18:45:53 +00:00
53dec6010c
Phase 1 hotfix to address recurring config file corruption that causes 99% of temperature monitoring failures. The root cause was the installer oscillating between inline and file-based allowlist modes, creating duplicate `allowed_nodes:` keys in config.yaml. Changes: - Force file-based allowlist mode exclusively (refuse versions < v4.31.1) - Add automatic migration from inline to file-based config - Remove inline mode code path from update_allowed_nodes() - Migration runs on every install/self-heal to clean up existing corruption The self-heal timer runs every 5 minutes and was the primary source of corruption when version detection failed or encountered edge cases. This eliminates the dual code paths and ensures config.yaml is never edited for allowlist changes - only /etc/pulse-sensor-proxy/allowed_nodes.yaml is modified. Phase 2 (next release) will implement proper Go-based config management with atomic writes, locking, and systemd validation to prevent corruption by design. Related to recurring temperature monitoring outages