# UI acceptance checklist Актуализировано: 2026-07-31. Реализованные возможности перечислены в `UI_ROADMAP.md`, результаты последнего ручного аудита — в `UI_AUDIT_CHECKLIST.md`. Этот checklist применяется к каждому изменённому экрану и не дублирует продуктовый roadmap. ## Функциональные состояния - [ ] Основное действие доступно без перехода в «Эксперт». - [ ] Есть loading, empty, success, offline и server error. - [ ] Опасное действие объясняет последствия и требует подтверждения. - [ ] Повторное нажатие не создаёт дублирующую операцию. - [ ] Ошибка показывает безопасный текст и request ID. - [ ] Секреты, токены и полные notification destinations не отображаются. ## Responsive layout - [ ] 1920×1080 и 1366×768. - [ ] 1024×768 без page-level overflow. - [ ] 768×1024. - [ ] 390×844 и 360×800. - [ ] Широкий контент прокручивается только внутри локального контейнера. - [ ] Диалоги помещаются во viewport и прокручиваются внутри. - [ ] Ключевые touch targets не меньше 42 px. ## Доступность и motion - [ ] Видимый keyboard focus и логичный tab order. - [ ] Управление доступно без мыши. - [ ] Zoom 200% не скрывает действия и сообщения. - [ ] Текст не передаёт смысл только цветом. - [ ] `prefers-reduced-motion` отключает декоративную анимацию. - [ ] Контент остаётся доступным при ошибке или отключении animation script. ## Данные и обновление - [ ] SSE обновляет экран без потери выбранного объекта/фильтра/вкладки. - [ ] Polling fallback не создаёт скачков и повторных toast. - [ ] Длинные hostname, ID, IPv6 и provider errors не ломают сетку. - [ ] Даты используют выбранную timezone и однозначный формат. - [ ] Stale/recent/offline статусы имеют понятный текст. ## Неподтверждённые regression-сценарии - [ ] Профиль без e-mail корректно блокирует e-mail notifications. - [ ] Неверный Telegram Chat ID и пороги показывают ошибку поля. - [ ] Test send проверен для sent/retry/dead-letter. - [ ] Пустая история и длинная ошибка доставки проверены на mobile. - [ ] Production SMTP, Telegram и webhook проверены из профиля. - [ ] Notification/client/cloud-access flow покрыты browser E2E.