Update design documentation for inventory and climate phases, clarify staffing test results, and add new presence test for hiring and assigning a teacher during lessons.
ci / server (push) Failing after 3m41s
ci / client (push) Successful in 16s

This commit is contained in:
Leonid Pershin
2026-08-20 02:34:16 +03:00
parent bdb1253fdb
commit 450495f666
15 changed files with 1033 additions and 8 deletions
+41
View File
@@ -0,0 +1,41 @@
# Фаза 37. Правила школы
## Зависимости
- [Фаза 35](35-appropriateness.md)
- [Фаза 36](36-person-card-tabs.md)
- [Фаза 13](13-management-tab.md)
## Зачем
Игрок задаёт, как одевается школа. Это единственное его действие в срезе про одежду.
## Задачи
- [ ] В «Управлении» вкладка **«Правила»** рядом со штатом, не новый верхний режим
- [ ] Четыре комбобокса: форма учеников, цвет учеников, форма сотрудников, цвет сотрудников.
Значения — как в [`../design/inventory.md`](../design/inventory.md)
- [ ] Сохранение пишет завтрашнее правило; на экране видно, что действует сегодня и что
вступит завтра
- [ ] HTTP: чтение текущих+отложенных, запись отложенных. Отказ по неизвестному коду правила —
`400`, не тишина
- [ ] На следующее рабочее утро отложенное становится текущим; фаза 35 уже одевает от него
- [ ] Строки через `t(...)`, обе локали
- [ ] Vitest: смена комбобокса не зовёт API до подтверждения; ошибка API видна текстом
## Тесты, без которых фаза не закрыта
- [ ] GET правил на новой школе — дефолт обычная / без яркого на обе роли
- [ ] POST «строгая» сегодня не меняет одежду до следующего рабочего утра
- [ ] После утра на теле учеников нет яркого, если отложили «без яркого»
- [ ] Неизвестный код политики — `400`
- [ ] Вкладка не ломает наём и сетку расписания
## Критерий готовности
- Выставить ученикам «белая верх чёрный низ», промотать на утро — рубашки белые
- `dotnet test` и `npm test` / `build` проходят
## Стоп
Не давать игроку одевать одного человека. Не вводить магазины и оплату формы.