v4.6.5 — Snap-Back Fix + Time-Sensor Int-Cast
Fixes (Issue #6, @Lucky-ESA)
Snap-Back beim Programmwechsel + Switch-Auto-Toggle
Root cause: coordinator.async_set_data_point triggerte sofortigen Refresh nach Device-Write. Tuya Cloud braucht 1–3s Propagation — der Refresh las den noch nicht propagierten alten Wert zurück und überschrieb die optimistische UI-Anzeige.
Fix:
- Refresh wird um 3s verzögert (
CLOUD_PROPAGATION_DELAY_SECONDS) - Neuer Optimistic-Lock in
KKTBaseEntity(_set_optimistic/_is_optimistic_active) blockiert Coord-Updates die dem geschriebenen Wert widersprechen für 8s TTL - Auto-Release sobald Coord = optimistic-Wert
- Wirkt auf select, switch, number
Time Remaining als Float
Backofen-Sensor zeigte in HA-Geräteansicht 10.0 statt 10. suggested_display_precision betrifft nur Entity-Cards, nicht den raw native_value.
Fix: int-Cast in _update_cached_state wenn precision=0 und Wert ist float.
Hardening
- Write-Fehler-Rollback: Wenn Device-Write nach
_set_optimisticwirft, wird Lock sofort gelöst und UI auf den echten Coord-Wert zurückgerollt - Deferred-Refresh Guard: Bei Entry-Reload innerhalb 3s läuft der geplante Refresh-Callback in No-Op statt auf zerstörtem Coordinator zu feuern
Test-Suite
214/214 passing (9 neue Regression-Tests)
Upgrade
HACS → Updates → KKT Kolbe → Update → Restart Home Assistant