Skip to content

v0.4.3-a1

Pre-release
Pre-release

Choose a tag to compare

@eXPerience83 eXPerience83 released this 28 Dec 09:10

🌙 DKNCloud-HASS v0.4.3-alpha1

🧪 Alpha release for the 0.4.x line.
Focus: safer sleep scenary handling (auto-exit + session tracking), backend cleanup retries, clearer logging, and regression tests to keep wake/sleep behavior stable.


🚀 Highlights (since 0.4.2)

  • 🛌 Sleep auto-exit before wake actions (opt-in)

    • Automatically exits stale sleep scenary before Home Assistant “wake” actions.
    • Optionally exposes expired sleep sessions as Home after a configured timeout (opt-in).
  • 🧹 Backend cleanup for expired sleep sessions

    • Attempts to clear the backend scenary label once per sleep session.
    • Retries cleanup after transient failures and only marks a session as “cleaned” when the scenary update succeeds.
  • 🧠 More predictable expiry rules

    • Sleep timeout expiry is applied only after backend power reports the unit is OFF, reducing unintended wake-related state changes.
  • 🧪 Hardening: tests + logs

    • Centralized sleep auto-exit logic shared by climate + power switch.
    • Improved warning logs with full tracebacks (exc_info=True).
    • Added unit tests covering the auto-exit helper and updated test stubs for consistency.
    • Deduplicated coordinator refresh bursts after cleanup.
  • 📚 Contributor clarity

    • CONTRIBUTING notes clarify Python 3.14 tooling requirements and Home Assistant runtime baseline (Python ≥ 3.13.2).

🧾 Detailed changes – 0.4.3-alpha1 (2025-12-25)

Added

  • Auto-exit stale sleep scenary before Home Assistant wake actions and expose sleep sessions as Home after the configured timeout when the new opt-in option is enabled.
  • Backend cleanup attempt for expired sleep sessions to clear the scenary label once per session.

Changed

  • Documented sleep scenary semantics and timeout cleanup behavior alongside the new release version.
  • Refined expired sleep scenary cleanup logging to distinguish HTTP errors, timeouts, and unexpected failures.
  • Centralized auto-exit sleep handling across climate and power switch entities.
  • Improved warning logs for unexpected errors by including full tracebacks (exc_info=True).
  • Added unit tests covering the sleep auto-exit helper to prevent regressions.
  • Apply sleep timeout expiry only after backend power reports the unit is off.
  • Replace Ellipsis placeholders in test stubs with pass for consistency.
  • Improve debug logging when auto-exit sleep is skipped due to missing API handle.
  • Deduplicate coordinator refresh requests after expired-sleep cleanup.
  • Added CONTRIBUTING notes clarifying Python 3.14 tooling requirements and the Home Assistant runtime baseline (Python ≥ 3.13.2).
  • Improved sleep session tracking to avoid resetting the cleanup guard flag outside of new sleep sessions.

Fixed

  • Persist the Sleep timeout handling option from the options flow so the opt-in feature is stored on the config entry.
  • Retry expired-sleep backend cleanup after transient failures by marking the session as cleaned only when the scenary update succeeds.

🗺️ Previous release recap – 0.4.2 (2025-11-24)

Added

  • Added French, Portuguese, Italian, and German locale files covering configuration flows, options, exceptions, and connectivity notifications.
  • Added a regression test to ensure every translation file mirrors the English keyset so new strings are not left untranslated.

Changed

  • Updated integration metadata to version 0.4.2.

Full Changelog (compare):
v0.4.1...v0.4.3-a1