2.0.36 (2026-03-25)
Bug Fixes
- add missing temperatureEntity to mapped entity IDs and diagnostic log for composed skip (2eeb3d8)
- consistent import/export icons across UI (Export=↑, Import=↓) (043c74e)
- correct stale targetPosition during external cover movement (#268) (1a0cbaa)
- filter stale CLEAN_AREA entries via vacuum/get_segments (9210f21), closes #262
- force-close dead sessions after subscription loss to recover from WiFi blips (#266) (c4ab641)
- guard DiagnosticService against undefined aggregator in server-mode bridges (fa9b11e)
- include endpoint tree in diagnostic export for composed device debugging (ce8b9a9)
- lint issues in Turkish translation PR #260 (6da4a55)
- persist composedEntities in entity-mapping API PUT handler (#220) (102668b)
- plugins: prevent process crash on unhandled rejections from plugins (9ea38e5)
- plugins: resolve biome lint errors in example plugins (47c59f7)
- prevent HeatingOnly on cooling-only thermostat (#264) (9f520c4)
- prevent standalone bridging of sensors consumed by composed air purifier (bafbab0), closes #265
- reduce dead session timeout to 60s and add per-session stale cleanup (#266) (37e31d9)
- resolve lint errors in composed endpoint tests and cover formatting (f63bd49)
- resolve version from package.json before env var (8191dce)
- skip CLEAN_AREA entries with empty segment arrays (491928d)
- skip climate.turn_on when thermostat is already on (#269) (34a275a)
- trigger mDNS re-announcement after dead session cleanup (#266) (1de74da)
- use graceful session close to notify controllers per Matter Spec (#266) (794d925)
- use stable keys for composed entity list to satisfy noArrayIndexKey lint (6f11ef3)
- use sub-endpoints for composed air purifier to fix FanControl UI (eef4613), closes #265
Features
- add battery support for valve and pump endpoints (9d27e2e)
- allow manual temperature/humidity sensor mapping for air purifiers (#265) (fd84277)
- complete German translation and add Russian language (5167e1f)
- per-entity coverSwapOpenClose for individual covers (#263) (48a06ed)
- plugins: add cloud-mock and broken example plugins (59fb012)
- plugins: add domain mapping support to plugin API (a773d94)
- plugins: wire domain mappings into endpoint creation pipeline (9553efa)
- quick link to failed devices from dashboard (#270) (cb50c3e)
- user-defined composed devices via composedEntities mapping (#220) (f936cf4)