Files
h-school/docs/phases/16-sight/88-inspect-button.md
T
Leonid PershinandCursor 02156e4491
ci / server (push) Failing after 3m43s
ci / client (push) Successful in 22s
Register slice 16 sight: inspect images and a denser linked catalog.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-21 20:46:33 +03:00

2.7 KiB
Raw Blame History

Фаза 88. Кнопка на панели

Зависимости

Зачем

То, что уже открыто глазом, получает ту же кнопку, что портрет: узел, одежда, fill. Гость смотрит и рисует.

Задачи

  • Панель выбранной локации: «создать картинку» и «показать промпт», если узел может дать непустой вклад (как 87). Нет вклада — кнопок нет. Открытие дерева не генерирует
  • Строка одежды и ноши на карточке: кнопка, если у def есть prompt. Цвет из строки уходит query. Износ в промпт кладёт сервер
  • Строка предмета в секции «предметы» локации: то же для fill с прозой; молчаливый стул — без кнопки
  • Успех показывает PNG (как карточка человека). Ошибки Swarm — тот же текст, что портрет
  • Гость видит и жмёт. Notice generateImage не менять (хозяин, человек)
  • Строки через t(...), обе локали. Сокет не бампить

Тесты, без которых фаза не закрыта

  • Vitest: у узла Classroom кнопка есть; у узла без prompt (лестница/этаж) — нет
  • Vitest: у строки TShirt кнопка есть; у Chair в предметах — нет
  • Vitest: гость не лишает кнопку disabled так, как notice
  • Клиент зовёт POST узла/вещи, не .../people/.../portrait?kind=scene
  • «Показать промпт» показывает тело GET .../prompt, не выдуманную строку на клиенте
  • Открытие панели / вкладки одежды не вызывает POST

Критерий готовности

  • Клик по кабинету на дереве → панель → картинка класса
  • Клик по белой футболке на карточке → PNG вещи
  • Гость на чужой школе может то же
  • npm test по затронутым ui/*.test.ts (tsc+vitest клиента, не весь раствор)

Стоп

Не автоген утра. Не иконка на каждом ряду дерева. Не LLM. Не бумажная кукла. Не картинка журнала и часов.