Saner repair defaults + the off-switch you asked for
Sorry this took longer to get out due to IRL commitments. The repair-noise feedback that landed during the 2026.5.2 cycle (#463, #465, #466, #468) is addressed at the source in this release. The same complaint — "I wake up to 40+ repair cards every morning that come back the moment I dismiss them" — is now solved three different ways, layered so most users won't need to touch a setting:
- Better defaults so the false-positives stop happening (#474).
- Ignore actually sticks so anything that does fire and is intentional stays dismissed (#473).
- A global off-switch if you'd rather not see any of it (#472).
Thanks to everyone who filed detailed reports against 2026.5.2 — particularly the bedroom-mmWave and TV-off-overnight cases, which directly shaped the defaults below.
What's fixed
1. Motion stuck-active threshold raised from 2h → 8h, with purpose-aware multipliers
The old 2h motion threshold was the wrong floor for bedrooms, offices with stationary users, and any mmWave / presence sensor that legitimately stays on for hours. The new defaults:
| Area purpose | Motion stuck-active threshold |
|---|---|
SLEEPING (bedrooms) |
48h (8h × 6) |
RELAXING (media rooms) |
32h (8h × 4) |
WORKING (offices) |
24h (8h × 3) |
| anything else | 8h base |
So a bedroom mmWave sensor configured under a SLEEPING area now needs 48 continuous hours of "active" to flag — well past any normal sleep period. Make sure your bedroom area's purpose is set to Sleeping to unlock the longer threshold.
2. media_player.* exempt from the "unavailable" check
A TV or speaker going unavailable when powered off is normal operation, not a sensor fault. The unavailable check now skips entities whose id starts with media_player. — no more spurious repair card every morning because the TV was off overnight.
3. User-ignored repair issues actually stay ignored
Previously, when a repair issue's condition cleared (TV briefly back on, sensor un-stuck for a moment), the integration deleted the HA issue — and that delete also wiped HA's dismissed_version flag. The next time the same condition recurred, a fresh issue appeared and your prior Ignore was silently forgotten. Symptom: dismissing the repair only "worked" until the next HA restart, after which it came right back.
The integration now reads HA's dismissed_version before deleting. If the issue was ignored, it's left in place when the condition clears, so HA's own suppression survives flap cycles — even across HA restarts.
4. Integration-level toggle to disable repair monitoring entirely
For users who would rather not see any of these cards: Settings → Devices & services → Area Occupancy Detection → Configure → Global Settings → "Enable sensor health monitoring" (default on). When off, both sensor-scope and pipeline-scope health checks short-circuit and any existing repair cards are cleared from HA's Repairs UI on the next analysis cycle.
What's Changed
- feat(health): add integration-level toggle to disable repair monitoring by @Hankanman in #472
- fix(health): preserve user-ignored repairs across condition flaps by @Hankanman in #473
- feat(health): purpose-aware stuck-active thresholds and saner defaults by @Hankanman in #474
- chore: bump version to 2026.5.17 by @Hankanman in #475
Full Changelog: 2026.5.2...2026.5.17