|
| 1 | +# BUILD_PR_LEVEL_01_SCENE_SCENES_BOUNDARY_NORMALIZATION |
| 2 | + |
| 3 | +## Purpose |
| 4 | +Normalize engine scene runtime to one boundary: `src/engine/scene`. |
| 5 | + |
| 6 | +## Applied Delta |
| 7 | + |
| 8 | +### 1) Single top-level engine scene boundary enforced |
| 9 | +- Removed competing boundary directory: |
| 10 | + - `src/engine/scenes/` (deleted) |
| 11 | +- Kept singular engine runtime boundary: |
| 12 | + - `src/engine/scene/` |
| 13 | + |
| 14 | +### 2) Engine scene runtime ownership clarified |
| 15 | +- Replaced prior `scene` proxy wrappers with real runtime implementation files in `src/engine/scene/`: |
| 16 | + - `Scene.js` |
| 17 | + - `SceneManager.js` |
| 18 | + - `SceneTransition.js` |
| 19 | + - `SceneTransitionController.js` |
| 20 | + - `TransitionScene.js` |
| 21 | + - `AttractModeController.js` |
| 22 | + - `index.js` |
| 23 | +- Engine continues to own reusable scene runtime logic only. |
| 24 | +- Game/sample scene content remains in game/sample-owned paths. |
| 25 | + |
| 26 | +### 3) Import/export normalization to one truth |
| 27 | +- Normalized all active runtime/test/sample imports from `src/engine/scenes/...` to `src/engine/scene/...` across: |
| 28 | + - `games/*/game/*Scene.js` |
| 29 | + - `samples/phase-*/**/*Scene*.js` and related sample mains |
| 30 | + - `tests/scenes/*.test.mjs` |
| 31 | + - `tests/core/EngineSceneLifecycle.test.mjs` |
| 32 | + - `tests/final/PlatformUxSystems.test.mjs` |
| 33 | +- Updated documentation path references where touched: |
| 34 | + - `docs/architecture/engine-scene-transitions.md` |
| 35 | + - `docs/samples/sample-template.md` |
| 36 | +- Updated sample metadata references: |
| 37 | + - `samples/metadata/samples.shared.boundaries.report.json` |
| 38 | + - `samples/metadata/samples.index.metadata.json` |
| 39 | + |
| 40 | +## Roadmap Handling |
| 41 | +- No roadmap status-marker change was required. |
| 42 | +- No roadmap prose text was rewritten. |
| 43 | + |
| 44 | +## Validation |
| 45 | +- `node --check` across all changed JS/MJS files (`236` files checked, `0` parse failures). |
| 46 | +- Focused scene validation tests: |
| 47 | + - `node tests/scenes/SceneManager.test.mjs` |
| 48 | + - `node tests/scenes/TransitionScene.test.mjs` |
| 49 | + - `node tests/scenes/AttractModeController.test.mjs` |
| 50 | + - `node tests/core/EngineSceneLifecycle.test.mjs` |
| 51 | + - `node tests/final/PlatformUxSystems.test.mjs` |
| 52 | +- Boundary checks: |
| 53 | + - no remaining `src/engine/scenes` imports in `src`, `games`, `samples`, `tests`, `tools`, `docs/architecture`, `docs/samples` |
| 54 | + - `src/engine` contains `scene` and no `scenes` |
| 55 | + |
| 56 | +## Packaging |
| 57 | +`<project folder>/tmp/BUILD_PR_LEVEL_01_SCENE_SCENES_BOUNDARY_NORMALIZATION.zip` |
| 58 | + |
| 59 | +## Scope guard |
| 60 | +- surgical implementation only |
| 61 | +- no unrelated repo changes |
0 commit comments