Document slice 11: notices, scene prompt contributions, and a Krea-only catalog.
ci / server (push) Failing after 3m53s
ci / client (push) Successful in 35s

Agents can implement toasts, pausing warnings, and bounded object prompts without bringing SDXL back into new schools.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-20 20:13:23 +03:00
co-authored by Cursor
parent 0428852388
commit ea3f5c7bf1
10 changed files with 472 additions and 0 deletions
+48
View File
@@ -0,0 +1,48 @@
# Фаза 66. Сцена в промпте
## Зависимости
- [Фаза 62](../off-queue/62-portrait-prompt-craft.md)
- [Фаза 32](../07-inventory/32-weather-warmth.md) (улица vs здание)
- [Фаза 18](../05-ai/18-presence-walking.md) (узел человека)
Не стоит на 64/65 — можно параллельно с лентой.
## Зачем
Почти любой объект может добавить короткий позитив/негатив (и редко LoRA/embed), если он в
кадре этого человека. Стул без текста молчит. Промпт не раздувается.
## Задачи
- [ ] Блок `prompt` на `ThingDef`, `RoomDef` (и территории, если двор — тот же блок) и на осадках
климата (ясно / дождь / снег). Пустой = нет вклада. Валидация: строка ≤ 120 символов,
вес конечный ≥ 0
- [ ] Ваниль: непустой вклад у доски и у снега; обычный `Chair` без блока или с пустым
- [ ] Сборщик (на работнике, не в Simulation): узел человека → комната/двор + fill + worn/held
с блоком + погода только на улице. После слоя одежды. Порядок: вес ↓, затем `defName`
- [ ] Бюджет с дефолтом в опциях/профиле: 6 фрагментов, 2 LoRA сцены, 2 embeddings сцены.
LoRA — параметры Swarm; embeddings — `<embed:…>` как в фазе 61
- [ ] `GET .../portrait/prompt` включает сцену. Сокет не бампить
- [ ] Живые школы: пустой блок на старых вещах — поведение как вчера
## Тесты, без которых фаза не закрыта
- [ ] Каталог: доска даёт positive; Chair не попадает в сборку; строка 121 символ — ошибка загрузки
- [ ] Человек в кабинете с доской: промпт содержит фрагмент доски после одежды; без доски на карте — нет
- [ ] На улице в снег — фрагмент снега; в кабинете в снег — снега нет
- [ ] Больше 6 кандидатов — в тексте только топ-6 по весу; детерминированный тай-брейк по имени
- [ ] LoRA сцены в `loras`, не в тексте; embedding сцены в positive как `<embed:…>`
- [ ] «Показать промпт» / `GET prompt` совпадает со сборкой Generate (без вызова Swarm)
## Критерий готовности
- Карточка ученика в классе с доской: «Показать промпт» содержит chalk/blackboard-фразу
- Во дворе в снег — зимняя фраза; в том же снег в кабинете — нет
- Стулья не засоряют промпт
- Старая школа без полей `prompt` генерирует как раньше
## Стоп
Не kind `scene`. Не ControlNet. Не бампить сокет. Не кнопку на тосте. Не лифт каталога моделей
(это 63). Не писать вклад в Simulation.