Register slice 16 sight: inspect images and a denser linked catalog.
ci / server (push) Failing after 3m43s
ci / client (push) Successful in 22s

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-21 20:46:33 +03:00
co-authored by Cursor
parent bcc3f1333c
commit 02156e4491
8 changed files with 461 additions and 0 deletions
@@ -0,0 +1,49 @@
# Фаза 85. Гардероб и промпт одежды
## Зависимости
- [Фаза 30](../07-inventory/30-apparel-defs.md)
- [Фаза 31](../07-inventory/31-dress-generator.md)
- [Фаза 62](../off-queue/62-portrait-prompt-craft.md)
## Зачем
Ванильная одежда перестаёт быть минимумом «чтобы генератор было чем кормить». Портрет человека
берёт английскую прозу с def, а не подпись карточки.
## Задачи
- [ ] Новые `ThingDef` из закрытого списка в [`sight.md`](../../design/16-sight/sight.md): худи,
кардиган, жилет, пиджак, поло, блузка, водолазка, колготки, леггинсы, спортивные штаны,
кеды, школьные туфли, кепка, ободок, плащ, PE-штаны. Слои существующие, не новые роли
- [ ] Новые `ColorDef`: Navy (school+neutral), Brown, Burgundy, Pink (bright), Yellow (bright).
Уместные старые вещи могут добавить Navy/Brown в `colors`
- [ ] На **каждой** носимой ванильной вещи, включая TShirt/Shirt/…, непустой английский
`prompt.positive` (≤ 120 символов). Негатив/LoRA не обязательны. Длиннее — ошибка загрузки
- [ ] Сборщик одежды портрета предпочитает `prompt` def, подставляя цвет и износ; при RU-локали
карточки в Swarm не уходит русское «футболка»
- [ ] Генератор гардероба бросает новые def на тех же слоях, что свитер/обувь/верх. Живой
`people.json` не дополнять. Create и набор — да
- [ ] Локали RU/EN на новые def. Сокет не бампить. `portraitSettings` не лифтить
## Тесты, без которых фаза не закрыта
- [ ] Каталог `core` грузится; неизвестный цвет на новой вещи — ошибка загрузки
- [ ] `prompt.positive` длиннее 120 на одежде — ошибка загрузки
- [ ] Тот же сид+карта+страна → тот же состав людей; золотой гардероб обновлён, если бросок
изменился (свойство «кто-то в OversTop из расширенного множества», не «первый ученик в худи»)
- [ ] Новая школа: среди одетых есть хотя бы один новый def из списка (не обязательно худи у id 1)
- [ ] Сборка промпта портрета при locale `ru`: слой одежды содержит английский фрагмент TShirt,
не слово из `ru.jsonc`
- [ ] Живая карточка без новых вещей по-прежнему одета; загрузка сейва не выдаёт худи задним числом
## Критерий готовности
- Create школы → в гардеробе видны новые фасоны, портрет «показать промпт» говорит hoodie/blazer
по-английски
- Отфильтрованные тесты по Testing policy проходят (`HSchool.Content`, `HSchool.People`,
сборщик на сервере — не весь раствор)
## Стоп
Не кнопки на кабинете. Не оси аксессуаров/обуви. Не kind `scene`. Не лифт живых лиц.