2026.6.17 — LLM advisory fix + quality-scale rollup
HACS update bundling everything since 2026.5.22 (the 2026.5.23 changes were never published as a release, so they ship here too).
🐛 Fixed — LLM advisory froze after ~30 sensor events
needs_llm_update() detected new activity by comparing len(self._event_log) against the count stored at the last LLM call — but _event_log is capped at 30. Once a room logged 30 events its length saturated at 30, so the check became 30 > 30 == False permanently: the room was never again included in a batch LLM call and its four AI entities froze at their last value. No call was attempted, so nothing appeared in the log — the failure was invisible.
Fix: a monotonic _event_total counter (never reset, never capped) is now used for the "new events" comparison, so the AI advisory keeps updating for the life of the integration.
Existing setups recover immediately after the HACS update + HA restart.
✨ Added (rolled up from 2026.5.23)
diagnostics.py— Download Diagnostics button on the integration device page (redacted config, coordinator output, internal lock-in / clear-pending state, event log, and the new LLM gating countersevent_total/llm_last_event_count/llm_last_called).- Repair Issues — three actionable warnings in Settings → System → Repairs: no presence sensors,
has_doorwithout a door contact, and missing/renamed entities. - Config-entry
unique_id— set to the room slug; prevents duplicate room entries.
Full details in CHANGELOG.md.