Archive P1 iteration workflow and manual checkpoint
This commit is contained in:
+33
-1
@@ -1,6 +1,6 @@
|
||||
# Faset Engine — архитектура
|
||||
|
||||
Редакция 1.2 · 23 сентября 2026 · **MVP принят; реализация P2 описана отдельно от исходных решений**.
|
||||
Редакция 1.3 · 24 сентября 2026 · **MVP принят; реализация P1/P2 описана отдельно от исходных решений**.
|
||||
|
||||
Этот файл фиксирует решения пользователя. **Принято** означает выбранное направление реализации, а не автоматически завершённую возможность движка. Работающий код, выполненные проверки и текущие ограничения перечислены в [журнале реализации](IMPLEMENTATION.md). Этапы до MVP и после него, зависимости работ и критерии готовности находятся в [PLAN.md](../PLAN.md).
|
||||
|
||||
@@ -111,6 +111,37 @@ Development и release Player содержат runtime, выбранные иг
|
||||
|
||||
Критерии [плана](../PLAN.md) включают цикл сцена → Inspector → MCP authoring edit → Undo → save → build → отдельный Player, повторный импорт GLB с сохранением overrides, lifecycle/handle tests и запуск на обеих ОС без Editor/Blender/MCP/SDK. Выполненные проверки и незакрытые условия перечислены в [журнале реализации](IMPLEMENTATION.md); наличие теста само по себе не означает прохождения на обеих ОС.
|
||||
|
||||
## 10. P1 — проверяемая итерация gameplay
|
||||
|
||||
Для native-сборки источником истины остаются CMake/Ninja и их dependency graph.
|
||||
BuildService снимает неизменяемый snapshot `Scripts`, отделяет Debug от Release и
|
||||
запоминает версионированный fingerprint рецепта, исходников, Lua-деклараций,
|
||||
toolchain, шейдерных и runtime-входов. Повторное использование schema/package
|
||||
разрешено лишь после проверки полного manifest и схемы; испорченная или устаревшая
|
||||
генерация не выдаётся за cache hit. Переключение указателя на успешную генерацию
|
||||
атомарно; сбой сборки оставляет предыдущую доступной, но Inspector помечает
|
||||
метаданные устаревшими. Экспорт отдельно проверяет asset generations.
|
||||
|
||||
Структурированные сообщения компилятора/Lua дополняют сырой лог. Для исходников
|
||||
проекта Editor и MCP вызывают один `faset_source_open` с относительным путём и
|
||||
позициями; внешний редактор запускается аргументами без shell. Четыре стартовых
|
||||
проекта комбинируют C++/Lua и 2D/3D. C++ остаётся rebuild-and-restart, а Lua
|
||||
development reload проверяет candidate и перезапускает script/world state, не
|
||||
сохраняя произвольное runtime-состояние.
|
||||
|
||||
Autosave относится только к именованным dirty сценам Editor после двух секунд
|
||||
покоя. Он использует ревизию документа и прежний disk-hash conflict check, не
|
||||
перезаписывает внешний файл и не создаёт Undo-операцию. Неназванная сцена требует
|
||||
Save As; recovery journal работает независимо от autosave. Статусы видны в UI и
|
||||
через Editor MCP. Player и экспортная игра по-прежнему не имеют MCP.
|
||||
|
||||
Измерения P1 разделяют Debug-время итераций, offscreen первый кадр и старый
|
||||
Release reference baseline точных демо. Исходный отчёт, raw-профили и отдельное
|
||||
дополнение о версиях/хешах исполняемых инструментов находятся в
|
||||
[датированном dossier](validation/p1-iteration-2026-09-24/README.md). Большая
|
||||
синтетическая сцена выявляет стоимость CPU simulation/snapshot; её время нельзя
|
||||
переносить на 2D/3D демо или выдавать за обещание кадровой частоты.
|
||||
|
||||
## История решений
|
||||
|
||||
- **17.09.2026:** выбраны имя Faset Engine, Linux/Windows desktop 2D/3D, ручная работа и MCP, интеграция с Blender, Box2D и Box3D; подготовлены исследования.
|
||||
@@ -118,5 +149,6 @@ Development и release Player содержат runtime, выбранные иг
|
||||
- **18.09.2026:** утверждены процессы и linkage, явная metadata registration/schema export, JSON/binary formats, вложенные шаблоны/sparse overrides, lifecycle, фиксированный tick и последовательный scheduler; граница MCP ограничена Editor/headless authoring services.
|
||||
- **18.09.2026:** английский принят основным языком интерфейса, диагностик и публичного API; уточнена граница прямых Vulkan-вызовов внутри собственного backend.
|
||||
- **23.09.2026:** после принятого MVP выполнен P2 GPU visibility/LOD на Linux reference GPU; direct renderer сохранён как начальный режим и эталон, ограничения и измерения вынесены в отдельный [протокол](studies/19-p2-gpu-visibility-acceptance.md).
|
||||
- **24.09.2026:** P1 итерация фиксирует проверяемое повторное использование schema/package, структурированную диагностику, стартовые C++/Lua проекты, безопасный autosave и измерительный протокол без C++ hot reload.
|
||||
|
||||
Реализация идёт по [PLAN.md](../PLAN.md). Последующие изменения принятых контрактов фиксируются здесь с причиной и способом проверки.
|
||||
|
||||
Reference in New Issue
Block a user