Текущая главная кабинета заменена утверждённым вариантом 02: светлый фон, спокойные зелёные акценты, компактная сводка, текстовые статусы и список пациентов. Новый дизайн включён по умолчанию; все показатели загружаются через существующий API.
Сохранены PHQ-9/PCL-5, приём препаратов, риск прерывания, порядок по срочности, карточки, подтверждение алертов, живые уведомления, подключение по QR и демо-страницы. Назначения, последнее событие и факторы риска доступны в режиме «Подробный список». Поиск и фильтры сохраняются после возврата из карточки; добавлены сброс фильтров, пустое состояние и повторная загрузка при ошибке API.
Closes#73
Связано с #39 (общая полировка остаётся отдельной задачей).
Зона
C — dashboard и tests/test_dashboard*. API и клинические правила не меняются.
Как проверить
Запустить существующий API и streamlit run dashboard/app.py, открыть главную. Для демо кризиса можно подготовить синтетические данные командой python -m scripts.seed_demo --andrey-day 13 в отдельной тестовой БД.
Проверить поиск по имени/препарату, пять статусов, подробный список, карточку и возврат. Убедиться, что поиск и режим списка сохранились.
Проверить кризисный баннер, графики, подтверждение уведомления и подключение пациента.
Проверить узкий экран, фокус клавиатуры, пустой список и восстановление после недоступности API.
make lint && make test: 935 passed, 1 skipped; существующее предупреждение Starlette о httpx.
Интеграционный AppTest с реальным локальным API и отдельными SQLite-базами: 8 синтетических пациентов, срочный фильтр, карточка, графики, возврат.
Контраст основного/вторичного текста и статусов: не менее 4.99:1; значения API экранируются.
Автоматическая визуальная проверка и скриншоты не выполнены: встроенный браузер отказал из-за недоступной проверки политики доступа. Адаптивные стили реализованы, требуется визуальная проверка в обычном браузере.
Чек-лист
Ветка основана на актуальном origin/dev, rebase выполнен
make lint + make test зелёные
Лог в issue (2026-10-04)
Только синтетические данные, без секретов
Замороженные общие файлы не изменены
## Что меняется
Текущая главная кабинета заменена утверждённым вариантом 02: светлый фон, спокойные зелёные акценты, компактная сводка, текстовые статусы и список пациентов. Новый дизайн включён по умолчанию; все показатели загружаются через существующий API.
Сохранены PHQ-9/PCL-5, приём препаратов, риск прерывания, порядок по срочности, карточки, подтверждение алертов, живые уведомления, подключение по QR и демо-страницы. Назначения, последнее событие и факторы риска доступны в режиме «Подробный список». Поиск и фильтры сохраняются после возврата из карточки; добавлены сброс фильтров, пустое состояние и повторная загрузка при ошибке API.
Closes #73
Связано с #39 (общая полировка остаётся отдельной задачей).
## Зона
C — dashboard и tests/test_dashboard*. API и клинические правила не меняются.
## Как проверить
1. Запустить существующий API и `streamlit run dashboard/app.py`, открыть главную. Для демо кризиса можно подготовить синтетические данные командой `python -m scripts.seed_demo --andrey-day 13` в отдельной тестовой БД.
2. Проверить поиск по имени/препарату, пять статусов, подробный список, карточку и возврат. Убедиться, что поиск и режим списка сохранились.
3. Проверить кризисный баннер, графики, подтверждение уведомления и подключение пациента.
4. Проверить узкий экран, фокус клавиатуры, пустой список и восстановление после недоступности API.
## Проверки
- Gitea CI `ruff · pytest` для c01bfc9: **success**.
- `make lint && make test`: **935 passed, 1 skipped**; существующее предупреждение Starlette о httpx.
- Интеграционный AppTest с реальным локальным API и отдельными SQLite-базами: 8 синтетических пациентов, срочный фильтр, карточка, графики, возврат.
- Контраст основного/вторичного текста и статусов: не менее 4.99:1; значения API экранируются.
- Автоматическая визуальная проверка и скриншоты не выполнены: встроенный браузер отказал из-за недоступной проверки политики доступа. Адаптивные стили реализованы, требуется визуальная проверка в обычном браузере.
## Чек-лист
- [x] Ветка основана на актуальном origin/dev, rebase выполнен
- [x] make lint + make test зелёные
- [x] Лог в issue (2026-10-04)
- [x] Только синтетические данные, без секретов
- [x] Замороженные общие файлы не изменены
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Что меняется
Текущая главная кабинета заменена утверждённым вариантом 02: светлый фон, спокойные зелёные акценты, компактная сводка, текстовые статусы и список пациентов. Новый дизайн включён по умолчанию; все показатели загружаются через существующий API.
Сохранены PHQ-9/PCL-5, приём препаратов, риск прерывания, порядок по срочности, карточки, подтверждение алертов, живые уведомления, подключение по QR и демо-страницы. Назначения, последнее событие и факторы риска доступны в режиме «Подробный список». Поиск и фильтры сохраняются после возврата из карточки; добавлены сброс фильтров, пустое состояние и повторная загрузка при ошибке API.
Closes #73
Связано с #39 (общая полировка остаётся отдельной задачей).
Зона
C — dashboard и tests/test_dashboard*. API и клинические правила не меняются.
Как проверить
streamlit run dashboard/app.py, открыть главную. Для демо кризиса можно подготовить синтетические данные командойpython -m scripts.seed_demo --andrey-day 13в отдельной тестовой БД.Проверки
ruff · pytestдляc01bfc9: success.make lint && make test: 935 passed, 1 skipped; существующее предупреждение Starlette о httpx.Чек-лист