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.
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
# Фаза 32. Погода и тепло
|
||||
|
||||
## Зависимости
|
||||
|
||||
- [Фаза 29](29-country.md)
|
||||
- [Фаза 20](20-needs-actions.md)
|
||||
|
||||
## Зачем
|
||||
|
||||
На улице есть температура и осадки. Человек может мёрзнуть. Часы это показывают.
|
||||
|
||||
## Задачи
|
||||
|
||||
- [ ] `ClimatePresetDef` получает рабочие числа: нормы по месяцам, разброс дня, осадки
|
||||
- [ ] Школа считает улицу из пресета + сида + даты/часа; не каждый тик, а когда меняется
|
||||
надпись или это сдвинет тепло
|
||||
- [ ] В здании теплее улицы за счёт стен, без техника ещё не комфорт (комфорт — фаза 33)
|
||||
- [ ] Двор и крыльцо — улица
|
||||
- [ ] Нужда `Warmth`: декей от разницы «утепление одежды vs температура места»; вне школы
|
||||
восстанавливается, как сон
|
||||
- [ ] Черты теплолюбивый / холодолюбивый: поле смещения комфорта на `TraitDef`, взаимно
|
||||
несовместимы
|
||||
- [ ] Кадр часов: температура (десятые доли °C, `i16`) и осадки (`u8`). Версия протокола +1.
|
||||
`ProtocolCodec.cs`, `protocol.ts`, `docs/protocol.md` в одном коммите
|
||||
- [ ] Клиент рисует погоду у даты; не считает её из месяца
|
||||
- [ ] Пропуск пустого времени выставляет погоду утра, не вчерашнюю
|
||||
|
||||
## Тесты, без которых фаза не закрыта
|
||||
|
||||
- [ ] Тот же пресет, сид и timestamp → та же температура и осадки
|
||||
- [ ] Январь холоднее июля на ванильном пресете
|
||||
- [ ] Ниже нуля осадки — снег, не дождь (если пресет вообще дал осадки)
|
||||
- [ ] На морозе без верхней одежды тепло падает; дома за ночь возвращается
|
||||
- [ ] Кадр часов круглый трип и байтовая раскладка на обеих сторонах
|
||||
- [ ] Клиент с старой версией протокола отваливается Hello, как обычно
|
||||
|
||||
## Критерий готовности
|
||||
|
||||
- У часов видно «−5 °C, снег» зимним утром
|
||||
- Полоска тепла на карточке шевелится
|
||||
- `dotnet test` и `npm test` / `build` проходят
|
||||
|
||||
## Стоп
|
||||
|
||||
Не нанимать техника. Не переодевать по погоде — замёрзший ещё терпит. Не штрафовать урок.
|
||||
Reference in New Issue
Block a user