mirror of
https://github.com/Matysh/houseplan-card
synced 2026-10-01 04:09:17 +00:00
The owner's decision (2026-08-28): optimize is one of the two commands a client can use to write arbitrary geometry, so it validates its candidate against the stored document exactly as config/set does — inheritance counted per rule (repairing a legacy plan with violations still passes; #329 AC10 already proves an honest optimization adds none, so the gate is a no-op for legitimate flows), while a crafted payload is refused with the stable junction_limit_<rule> code the except list has been ready for since #329. The call lives inside the existing executor function, and a successful optimize refreshes rt.junction_baseline with the candidate's counts so the next config/set inherits from the cache (#330 §4.2 symmetry). Import and backup restore stay OUTSIDE the gate on purpose — #329 §3 promises a restore is never blocked. The module docstring stops promising more than the code does, and spec #329 §5 records the perimeter and the trade-off explicitly: a crafted import can persist violations, but they are inherited, never legalised as new ones. HA tests pin AC1 (crafted spike refused, stored config and rev byte-unchanged), AC2 (echo-optimize of a stored plan that already carries a violation passes) and AC3 (the follow-up config/set takes its baseline from the cache — observed through a recording wrapper). The junction-limit-optimize-unguarded mutant turns AC1 red through the backend-test-guard convention. Issue: #333 User-Visible: no
Документация House Plan
Этот каталог — точка входа в русскоязычную документацию House Plan.
Сверено с версией v1.60.0. Продукт с тех пор ушёл вперёд (линия 1.64); при расхождении этого каталога с
docs/USER-GUIDE.ru.mdи changelog верить им. Пересверка каталога — отдельная документационная задача.
| Документ | Для кого | Что внутри |
|---|---|---|
| Полное руководство пользователя | Пользователи и администраторы Home Assistant | Установка, первая настройка, пространства, комнаты, стены, проёмы, устройства, визуальные состояния, заливки, подложка, солнце, пылесосы, киоск, обслуживание и диагностика |
| Редактор подложки и декора | Пользователи, тестировщики и разработчики | Инструменты, единое выделение и трансформации, физические размеры, магнит, Undo/Redo, поведение картинки-подложки и совместимость старых полей |
| GitHub Issues и Project v2 | Владелец, разработчики и контрибьюторы | Единственный актуальный backlog: задачи, приоритеты, решения и статусы выполнения |
Старые тематические документы в этом каталоге остаются инженерными спецификациями и историей решений. При расхождении пользовательского описания с интерфейсом текущей версии приоритет имеет новое руководство, а при расхождении с фактическим поведением — код текущей версии.
Неактуальные снимки аудитов, отклонённые проекты и одноразовые диагностические материалы собраны в архиве legacy.