fix: preserve space during revalidation
Validate / provenance (push) Successful in 33s
Validate / hacs (push) Failing after 11s
Validate / process-gate (push) Failing after 50s
Validate / hassfest (push) Failing after 14s
Validate / frontend (push) Successful in 6m27s
Validate / backend (push) Failing after 9m36s
Validate / golden (push) Failing after 9m25s
Validate / performance_smoke (push) Failing after 13m28s
Validate / smoke (push) Failing after 34m51s

Issue: #131
User-Visible: no
This commit is contained in:
Sergey Matyunin
2026-08-14 02:31:16 +03:00
parent 90e6323940
commit 2f362248d7
5 changed files with 13 additions and 10 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+2 -2
View File
File diff suppressed because one or more lines are too long
+5 -3
View File
@@ -690,9 +690,11 @@ cached snapshot, a live snapshot and its protected-backdrop candidate. A cold
load considers only valid ids in this order: URL hash, saved navigation,
`default_floor`, first live space. Once an initial URL hash has been consumed,
a valid same-route current selection is preserved instead of repeatedly
snapping back to that hash. The legacy field initializer is never a cold-start
choice by itself. A plan with no spaces keeps `null` authority and does not
invent an id.
snapping back to that hash. Every later revalidation of an already complete
snapshot likewise keeps its valid exact current space; cold precedence is only
for an unsettled initial snapshot. The legacy field initializer is never a
cold-start choice by itself. A plan with no spaces keeps `null` authority and
does not invent an id.
**Room climate is one pass per hass snapshot** (review R2-3). `areaClimateMap()`
classifies the whole registry once and returns `Map<area, {temp, hum}>`; the
+2 -1
View File
@@ -2744,7 +2744,8 @@ class HouseplanCard extends LitElement {
hashSpace: this._hashSpace(),
acceptHash: !this._hashApplied,
currentSpace: this._space,
preserveCurrent: this._hashApplied || this._navApplied || this._warmVpArmed,
preserveCurrent: this._loadOk
|| this._hashApplied || this._navApplied || this._warmVpArmed,
savedSpace: this._savedNav()?.space,
defaultSpace: this._config?.default_floor,
});