This commit is contained in:
2026-10-01 01:54:22 +07:00
parent ab5792edf9
commit c42de20c55
+15
View File
@@ -23,6 +23,21 @@
- `BLOCKED` — заблокировано, причина указана в задаче.
- `DONE` — завершено и проверено.
### ED-023 — Оценка сложности игры в отзыве и каталоге
- Статус: `TODO`
- Приоритет: `P1`
- Репозитории: `evening_detective_server`, `evening_detective_frontend`
- Цель: дать команде возможность после завершения игры оценить её сложность и показывать итоговую сложность сценария в каталоге.
- Контекст: существующий отзыв уже содержит рейтинг `1–5`, обязательный текст, модерацию и ограничение один отзыв от команды на игру; каталог уже показывает средний рейтинг и количество одобренных отзывов по сценарию.
- Решение: добавить в отзыв оценку сложности `1–3`: `1` — лёгкая, `2` — средняя, `3` — тяжёлая. Рассчитывать среднее по одобренным отзывам завершённых игр сценария и переводить его в подпись: `1.00–1.66` — лёгкая, `1.67–2.33` — средняя, `2.34–3.00` — тяжёлая. Передать значение через существующие API отзыва и каталога.
- Критерии: завершившая игру команда может отправить оценку сложности вместе с отзывом; значение ограничено `1–3`; существующие отзывы и рейтинг `1–5` продолжают работать; повторный отзыв от команды запрещён; после модерации оценка участвует в среднем только для одобренных отзывов; каталог и карточка сценария показывают рассчитанную категорию сложности; при отсутствии оценок сложность не отображается.
- Ограничения: переиспользовать существующие отзыв, модерацию, каталог и protobuf-flow; не добавлять отдельную сущность, зависимость или ручную настройку сложности; сгенерированные protobuf-файлы менять только через существующую генерацию.
- Не входит: изменение текстового отзыва, рейтинга `1–5`, правил модерации, отзывов от пользователей без команды и отдельная оценка сложности автором или администратором.
- Проверка: `cd evening_detective_server && go test ./...`; `cd evening_detective_frontend && npm run type-check && npm run lint && npm run lint:css`.
- Ручная проверка: завершить игру и отправить отзывы со значениями `1`, `2` и `3`; проверить ограничения и повторную отправку; одобрить и отклонить отзывы; проверить пересчёт категории в карточке сценария и каталоге, включая отсутствие оценок.
- Следующий шаг: изучить frontend-flow формы отзыва и отображения каталога, затем изменить protobuf через `npm run proto:gen` и соответствующую backend-генерацию, после чего обновить хранение и расчёт сложности минимальным diff.
## Активные задачи
### ED-018 — Удаление неиспользуемых пользовательских файлов