From 7806ab7182392264679f74884ea1427853458ca7 Mon Sep 17 00:00:00 2001 From: Sergey Matyunin Date: Tue, 1 Sep 2026 18:45:11 +0300 Subject: [PATCH] docs: document confirm shell tradeoff Issue: #406 User-Visible: no --- docs/specs/406-beta2-polish.md | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/docs/specs/406-beta2-polish.md b/docs/specs/406-beta2-polish.md index fd46ca81..2439c675 100644 --- a/docs/specs/406-beta2-polish.md +++ b/docs/specs/406-beta2-polish.md @@ -4,7 +4,7 @@ - Приоритет: P3, polish; полный трек — три несвязанные поверхности (словари i18n, `hp-dialog`, снапшоты переезда area), критерий «одна поверхность» для `small` не выполняется — прецеденты #385, #400 -- Ревизия: 3 (2026-09-01), после SPEC-REVIEW-406-r2 +- Ревизия: 4 (2026-09-01), после SPEC-REVIEW-406-r3 ## Сценарий @@ -23,8 +23,9 @@ вечно. **После**: словари содержат только используемое, и это проверяется гейтом; подтверждение опасного действия — удаления или разблокировки — объявляется как -`alertdialog` вместе с последствиями; смок ходит по обеим веткам диалога; -снапшот убирает записи устройств, которых достоверно нет. +`alertdialog` вместе с последствиями и использует собственную нативную оболочку +House Plan вместо HA-хрома; смок ходит по обеим веткам диалога; снапшот убирает +записи устройств, которых достоверно нет. ## Проблема и контракты по пунктам @@ -191,10 +192,18 @@ decisions не попадает — его запись `marker_area_snapshot[id ## UX -Оформление не меняется. Меняется то, что слышит пользователь скринридера: -подтверждение удаления или разблокировки объявляется как оповещение и читается -вместе с последствиями. Терминология берётся из `docs/USER-GUIDE.ru.md`, новых -формулировок не вводится. +Пользователь скринридера слышит подтверждение удаления или разблокировки как +оповещение вместе с текстом последствий. Для всех пользователей эти восемь +точек входа (семь `destructive` и одна `warning`) в реальном Home Assistant +переходят с оболочки `ha-dialog` на уже поддерживаемую нативную оболочку +`hp-dialog`: возможны небольшие отличия заголовка и анимации. Содержимое, +порядок и подписи кнопок, цвет destructive/warning, запрет случайного закрытия, +начальный фокус на «Отмена» и Esc → отмена не меняются. Обычные диалоги вне +`hp-confirm` сохраняют HA-хром. + +Это осознанный видимый компромисс для гарантированной роли `alertdialog` на +закреплённой версии HA, а не обещание pixel parity. Терминология берётся из +`docs/USER-GUIDE.ru.md`, новых формулировок не вводится. ## Модель данных и миграция @@ -328,6 +337,7 @@ decisions не попадает — его запись `marker_area_snapshot[id ## Release-артефакты - `docs/CHANGELOG.md` / `docs/CHANGELOG.ru.md`: пункт о том, что подтверждение - удаления или разблокировки объявляется скринридером вместе с последствиями + удаления или разблокировки теперь использует нативную оболочку House Plan и + объявляется скринридером как `alertdialog` вместе с последствиями (User-Visible: yes). Остальные три пункта — внутренние. - Скриншоты не меняются: диалог в статике не открыт.