# Фаза 31. Генератор одевает ## Зависимости - [Фаза 29](29-country.md) - [Фаза 30](30-apparel-defs.md) - [Фаза 6](../02-people/06-people-generator.md) ## Зачем Люди рождаются одетыми. Гардероб детерминирован и лежит на человеке в `people.json`. ## Задачи - [x] Экземпляр вещи на человеке: `def`, `color`, `condition` (1), место (`worn` / `bag` / `locker` / `home`), для учебника — `subject` - [x] Генератор одевает учеников, сотрудников, родителей и соискателей от семейного сида: слои без пересечения, пол, возраст, дефолтные правила (обычная форма, без яркого на теле) - [x] Учебники — по одному на предмет параллели ученика; в сумке пока могут лежать все, разнос «сегодняшние vs шкафчик» — в фазе 33/35 - [x] Портфель, телефон, бутылка — с возрастом и шансом из данных, не из константы в генераторе - [x] Навык `Hauling` (`always`); предел массы в дефе правил; на карточке несёшь/можешь. Перегруз ходьбу не трогает; в сумку сверх предела генератор не кладёт - [x] `GET .../people/{id}` отдаёт надетое и ношу; список людей — нет - [x] Карточка пока без вкладок: секции «Одежда» и «Ноша» в том же свитке - [x] `people.json` пишется при создании и наборе; золотой отпечаток обновляется в этом коммите с объяснением, что изменилось - [x] Строки через `t(...)` / локали каталога ## Тесты, без которых фаза не закрыта - [x] Тот же сид, страна, карта и язык → те же id вещей, цвета и места - [x] На одном слое не две вещи; платье занимает низ и верх сразу - [x] Юбка не выдаётся мужчинам на тело; яркий верх не выдаётся на тело при дефолтных правилах - [x] Ученик параллели с математикой имеет учебник этого предмета - [x] Родитель и соискатель одеты - [x] Масса в сумке ≤ предела - [x] Старый `people.json` без инвентаря поднимается: генератор одевает при загрузке и пишет файл (как пул соискателей в фазе 11) ## Критерий готовности - Открыть карточку ученицы: слои заполнены, цвет виден, ноша с числом - Повтор create с сидом даёт ту же рубашку - `dotnet test` и `npm test` / `build` проходят ## Стоп Не считать погоду. Не изнашивать. Не переодевать по ситуации. Не заводить вкладки карточки.