Architecture
- Full async migration to DataUpdateCoordinator, no more blocking calls on the HA event loop.
- Safety-net timeouts on every pillar calculation. If a sub-calculation fails or times out, HAGHS falls back to a neutral score (100 /
no penalty) and logs a warning. The sensor never crashes.
Hardware Pillar (40%)
- PSI Integration: HAGHS now reads Linux Pressure Stall Information (/proc/pressure/cpu, /proc/pressure/memory, /proc/pressure/io) for
high-precision hardware metrics. Automatic fallback to classic CPU/RAM sensors if PSI is unavailable (Windows, older Docker, non-Linux). - Separate penalty tiers for PSI (stall time) vs. classic sensors (utilization), because their scales differ fundamentally.
- I/O Scoring: PSI I/O pressure is now actively scored. When available, the hardware pillar uses 4 components (CPU + RAM + I/O + Disk)
instead of 3. - CPU Threshold Adjustment: Classic CPU penalty now starts at >25% (was >10%) to avoid penalizing normal system activity.
- Smart Disk Thresholds: Storage-type-aware penalties, SD-Card/eMMC uses absolute GB (critical <3 GB, warning <5 GB), SSD uses
percentage-based (<10% free). - Auto-detected disk usage via psutil, no manual disk sensor needed.
Application Pillar (60%)
- Dynamic Database Limit: DB threshold scales with your entity count (1000 + entities × 2.5 MB). Auto-detected via SQLite file size, no
manual FileSize sensor or YAML allowlist needed. - Zombie Improvements: Ratio-based penalties (max 20 pts), 15-minute grace period to prevent false positives during reboots, attribute
list capped at 20 entries to protect the state machine. - Update Improvements: Ignore label (haghs_ignore) works on update entities. Core lag threshold raised to ≥3 months. Pending updates
listed by name in attributes. 5 pts per pending update + 20 pts core lag, capped at 35 pts total. - Integration Health: Native detection of unhealthy integrations via HA's ConfigEntry state API (SETUP_ERROR, SETUP_RETRY,
FAILED_UNLOAD), the same states shown as "error" on the Integrations page. 5 pts per unhealthy integration, capped at 15 pts. - Config Audit Bonus: Awards up to +10 points for good recorder hygiene, purge days configured (+5) and entity filters active (+5).
- Backup penalty: Static 30 pts deduction for stale backups.
Configuration & UX
- Zero-YAML: Database size and disk usage are now fully auto-detected. No configuration.yaml changes needed.
- Options Flow: All settings (CPU/RAM sensors, storage type, ignore label, update interval) adjustable at runtime via Settings >
Integrations > HAGHS > Configure. No restart required. - Configurable Update Interval: Adjustable from 10s to 3600s (default: 60s).
- i18n Ready: All user-facing strings externalized to strings.json / translations/en.json.
Removed
- Log file monitoring (deprecated since v2.0.2).