perf: the clean-floor cache holds one entry per room per config epoch (#509)
Проверка (CI) / Классификация изменённых файлов (push) Successful in 52s
Проверка (CI) / Предполётные проверки: документация, провенанс, процесс (push) Failing after 1m32s
Проверка (CI) / HACS: валидация репозитория (push) Failing after 43s
Проверка (CI) / Hassfest: манифест интеграции (push) Failing after 41s
Проверка (CI) / Переиспользование: это дерево уже проверено (push) Successful in 1m11s
Проверка (CI) / Мутанты по диффу (1/6): затронутые свидетели краснеют (push) Failing after 4m28s
Проверка (CI) / Мутанты по диффу (2/6): затронутые свидетели краснеют (push) Failing after 4m36s
Проверка (CI) / Мутанты по диффу (3/6): затронутые свидетели краснеют (push) Failing after 4m43s
Проверка (CI) / Мутанты по диффу (4/6): затронутые свидетели краснеют (push) Failing after 4m38s
Проверка (CI) / Мутанты по диффу (5/6): затронутые свидетели краснеют (push) Failing after 3m58s
Проверка (CI) / Мутанты по диффу (6/6): затронутые свидетели краснеют (push) Failing after 4m7s
Проверка (CI) / Бэкенд: pytest в Home Assistant (push) Failing after 5m49s
Проверка (CI) / Фронтенд: типы, юниты, мутанты, синхрон бандла (push) Failing after 8m2s
Проверка (CI) / Смоки в браузере (шард 1 из 3) (push) Skipped
Проверка (CI) / Смоки в браузере (шард 2 из 3) (push) Skipped
Проверка (CI) / Смоки в браузере (шард 3 из 3) (push) Skipped
Проверка (CI) / Смоки: все шарды зелёные (push) Skipped
Проверка (CI) / Golden-кадры против принятых эталонов (push) Skipped
Проверка (CI) / Перф-смок: бюджет времени кадра (push) Skipped

The pre-release perf gate of the v1.74.0-beta.1 candidate reported
cache.entries.cleanFloor 120 against a ceiling of 100 (run 34480302982,
large-house-interaction-v1). The ceiling was calibrated when only the visible
space populated `_cleanFloorCache`; since #509 the summary panel computes the
clean-floor total in per-room slices through the same cache, so the sixty
fixture rooms are cached under both config epochs the interaction profile
creates — 60 × 2 = 120, exactly what the run measured.

The ceiling moves to 180 in the smoke and in the full interaction profile:
one entry per room per epoch with room for a third epoch, far below the LRU
cap of 600 and far below anything a per-frame or per-marker regression would
produce. The leak detector is untouched: cacheGrowth.cleanFloor stays 0.

Issue: #509
User-Visible: no
Release: v1.74.0-beta.1
This commit is contained in:
Claude
2026-09-10 16:29:31 +03:00
parent d5575f6393
commit 914e84028d
2 changed files with 2 additions and 2 deletions
@@ -96,7 +96,7 @@
"hardMaxGrowthBytes": 67108864
},
"cacheEntries": {
"cleanFloor": 100,
"cleanFloor": 180,
"glowClip": 200,
"wallUnion": 1,
"openingTunnel": 1,
@@ -118,7 +118,7 @@
"noiseAllowanceBytes": 16777216
},
"cacheEntries": {
"cleanFloor": 100,
"cleanFloor": 180,
"glowClip": 200,
"wallUnion": 1,
"openingTunnel": 1,