From 6c3d376b2b99696c16cf88bb97b15aa165c2240d Mon Sep 17 00:00:00 2001 From: Sergey Matyunin Date: Thu, 20 Aug 2026 01:22:12 +0300 Subject: [PATCH] docs: clarify fixed-floor config clearing Issue: #210 User-Visible: no --- docs/specs/210-fixed-floor-card.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/specs/210-fixed-floor-card.md b/docs/specs/210-fixed-floor-card.md index 051c2df0..8be34e94 100644 --- a/docs/specs/210-fixed-floor-card.md +++ b/docs/specs/210-fixed-floor-card.md @@ -105,6 +105,11 @@ GUI получает поле **Fixed space / Закреплённое прос stable ID и пустым вариантом «не закреплять»; fallback при недоступности WS не создаёт выдуманный ID. +Выбор «не закреплять» обязан удалить собственный ключ `floor` из выдаваемого +card config целиком. GUI не записывает `floor: ''` или `floor: null`: эти +значения намеренно остаются невалидными для явно заданного YAML, а отсутствие +свойства возвращает legacy navigation согласно §6.1. + GUI не предлагает индексы. Уже записанное YAML-число сохраняется при несвязанном редактировании и заменяется только явным выбором/очисткой поля. `default_floor` остаётся отдельным полем **Initial space / Стартовое @@ -182,6 +187,14 @@ floor swipe, но pan/pinch и безопасные действия обяза dots или editors. Временное отсутствие fixed ID только в stale cache не показывает ложную терминальную ошибку до результата свежего server load. +### 9.1. i18n + +Новые GUI labels, пустой вариант и invalid-state title/body добавляются +одновременно в `src/i18n/en.json` и `src/i18n/ru.json`. Runtime не содержит +зашитых английских/русских fallback-строк. Фактическое значение `floor` +подставляется через существующий безопасный механизм параметров локализации; +термины согласуются с **space / пространство** из текущего guide. + ## 10. Данные, совместимость и безопасность - `floor` — Lovelace card config, не часть House Plan server config; schema @@ -320,3 +333,5 @@ artifact не требуются. Поставка — только по отд явно запрещает молча показывать unrelated floor. 7. Продуктовых вопросов нет: эти границы следуют из owner-requested fixed-floor contract и вынесены явно для spec/code review. +8. Пустой выбор GUI удаляет `floor` как собственное свойство card config; + пустая строка и `null` не используются как второе представление отсутствия.