Files
houseplan-card/docs
Codex d9b6766362 test: the sys.modules guard now sees the write, not its spelling (#398)
The guard introduced by #394 matched the literal
sys.modules['custom_components... and therefore never looked at
pure_imports.py, which writes through a variable — the third instance of
the #389 class walked straight past the check created for it.

The guard now inspects the write itself and decides by the key: a whole
literal or the literal head of an f-string is safe unless it starts with
custom_components (that is how tests register homeassistant.*, hp_pure.*
and houseplan.trails); anything else — a variable, a concatenation,
setdefault/update — counts as a violation whenever the file is able to
name the package at all, i.e. contains a custom_components. literal. A
file that never names the package cannot poison it through a variable,
so restoring a snapshot stays legal.

load_pure now removes what it registered. Removing its own name is not
enough: relative imports pull neighbours in, so junction_limits leaves
wall_segment_model and coordinate_canonicalization behind. It removes
the whole custom_components difference accumulated during exec_module,
in a finally, and a repeated call still works.

pure_imports.py is a named exemption of the static guard precisely
because that guard cannot see the cleanup — so the cleanup is proven by
an executable test instead, and the mutant pure-imports-stops-cleaning
reddens it. Both mutants were run by hand.

User-Visible: no
Issue: #398
2026-08-31 03:56:01 +03:00
..
2026-08-31 00:47:06 +00:00
2026-08-28 05:40:28 +00:00
2026-08-29 14:46:52 +03:00
2026-08-27 20:30:07 +03:00
…
2026-08-26 13:39:52 +03:00

Документация 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.