3 Object Status Model
Roman edited this page 2026-07-01 22:16:53 +03:00
This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Модель статусов объектов

Зачем нужна модель статусов

Сейчас в проекте много объектов находятся между состояниями: файл есть, но runtime не готов; catalog id есть, но prefab не найден; prefab есть, но server binding не сделан. Единая модель статусов нужна, чтобы не оставлять такие объекты в состоянии неизвестности.

Статусы

Status Значение Когда ставить
implemented объект готов и проверен есть runtime, verification evidence, Wiki updated
ready-reference объект готов как пример для других например FDarkElf/FDwarf после описания pattern
needs-prefab нужен Unity prefab/runtime container raw asset есть, production prefab не собран
needs-animator нет полного animator/runtime animation binding clips есть, states/transitions/events не собраны
needs-collider collision/click area/geodata не готовы map/NPC/player можно пройти насквозь или нельзя выбрать
needs-server нет server template/handler/binding Unity side есть, server side не закрыт
needs-ui нет UI screen/state/feedback runtime есть, игрок не может нормально взаимодействовать
needs-effect нет VFX/effect mapping skill есть, effect token не сопоставлен
needs-icon нет icon/sprite/fallback skill/item есть, UI icon не готов
needs-triage данных недостаточно нужно проверить конкретный source
planned-later нужно, но не для текущего этапа объект будет позже, причина указана
disabled-with-reason выключено осознанно event/debug/unsupported, причина указана
not-needed-with-reason не нужно для production test/demo/tool object, причина указана

Правило смены статуса

Статус нельзя менять без evidence.

Примеры evidence:

  • Unity Play Mode check;
  • Windows preview build smoke;
  • screenshot;
  • server/client log;
  • packet trace;
  • profiler capture;
  • generated report;
  • ссылка на commit/issue, если изменение уже внесено.

Пример записи в Wiki

## Status

Current: `needs-prefab`

Reason: raw archetype exists, but Player/User/Pawn runtime containers are not assembled.

Evidence:
- `FULL_GAME_TASK_CATALOG_2026-07-01/05_character_visual_tasks.md`
- Anim clips: 92
- FBX: 70

Next issue:
- `CHAR-FElf: описать и довести visual archetype FElf до production-ready`

Что делать с неизвестным объектом

Если объект найден, но непонятно, нужен ли он:

  1. Не создавать сразу production issue.
  2. Создать или обновить Wiki page/catalog row.
  3. Поставить needs-triage.
  4. Указать конкретный источник проверки.
  5. После triage сменить статус на implement/later/disabled/not-needed.