|
| 1 | +# BUILD_PR_ENGINE_THEME_FINAL_PLATFORM_INTEGRATION |
| 2 | + |
| 3 | +## Purpose |
| 4 | +Finish the active tools platform by making the engine theme the single visual source of truth for the first-class tools surface and by closing the remaining shared-shell integration gaps in one combined build PR. |
| 5 | + |
| 6 | +## Engine Theme Source Of Truth |
| 7 | +- `engine/ui/hubCommon.css` is the existing engine theme source of truth |
| 8 | +- no second theme system was introduced |
| 9 | +- no additional theme extraction layer was required beyond consuming the existing engine variables from the shared tools shell |
| 10 | + |
| 11 | +## First-Class Active Tools |
| 12 | +- `tools/Vector Map Editor/` |
| 13 | +- `tools/Vector Asset Studio/` |
| 14 | +- `tools/Tilemap Studio/` |
| 15 | +- `tools/Parallax Scene Studio/` |
| 16 | + |
| 17 | +## Preserved But Excluded |
| 18 | +- `tools/SpriteEditor_old_keep/` remains preserved on disk |
| 19 | +- `tools/Sprite Editor/` remains on disk but is not promoted in the active tools landing page or shared navigation |
| 20 | +- preserved sprite paths are excluded from the registry-driven active surface |
| 21 | + |
| 22 | +## Scope Implemented |
| 23 | +- rebased the shared tools shell onto the engine theme tokens from `hubCommon.css` |
| 24 | +- kept the active tools landing page and active-tool navigation registry-driven |
| 25 | +- kept the four active tool workspaces intact while standardizing the shell, header, nav, and status chrome around them |
| 26 | +- added validation for engine-theme stylesheet presence and shared-shell presence on active tool pages |
| 27 | +- kept path fixes and repo changes limited to the active tools platform surface |
| 28 | + |
| 29 | +## Modules Created Or Changed |
| 30 | +- `tools/shared/platformShell.css` |
| 31 | +- `tools/shared/platformShell.js` |
| 32 | +- `tools/index.html` |
| 33 | +- `tools/renderToolsIndex.js` |
| 34 | +- `scripts/validate-active-tools-surface.mjs` |
| 35 | +- `docs/pr/BUILD_PR_ENGINE_THEME_FINAL_PLATFORM_INTEGRATION.md` |
| 36 | +- `docs/dev/COMMIT_COMMENT.txt` |
| 37 | + |
| 38 | +## Public Surface Boundaries |
| 39 | +- `engine/ui/hubCommon.css` supplies the theme variables and shared visual tokens |
| 40 | +- `tools/shared/platformShell.css` consumes those tokens for platform chrome only |
| 41 | +- `tools/shared/platformShell.js` renders the shared shell from the canonical tool registry |
| 42 | +- `tools/toolRegistry.js` remains the source of truth for active-tool visibility and navigation |
| 43 | +- tool-specific editor logic and engine/game runtime code were not modified for this PR |
| 44 | + |
| 45 | +## Implementation Summary |
| 46 | +- converted the shared shell from a hardcoded standalone palette to the engine theme variables already defined in `hubCommon.css` |
| 47 | +- kept the landing page and the four first-class tools visually aligned through the same shared shell |
| 48 | +- made the landing surface explicitly communicate that it is engine-themed and registry-driven |
| 49 | +- preserved the active tool list as the approved four-tool surface only |
| 50 | +- kept preserved sprite content excluded from the first-class tools platform |
| 51 | + |
| 52 | +## Validation Performed |
| 53 | +- `node --check tools/toolRegistry.js` |
| 54 | +- `node --check tools/renderToolsIndex.js` |
| 55 | +- `node --check tools/shared/platformShell.js` |
| 56 | +- `node --check scripts/validate-active-tools-surface.mjs` |
| 57 | +- `node --check tools/Vector Asset Studio/main.js` |
| 58 | +- `node --check tools/Tilemap Studio/main.js` |
| 59 | +- `node --check tools/Parallax Scene Studio/main.js` |
| 60 | +- `node --check tools/Vector Map Editor/main.js` |
| 61 | +- `node scripts/validate-active-tools-surface.mjs` |
| 62 | + |
| 63 | +## Validation Summary |
| 64 | +- active tool pages still load the engine theme stylesheet from `engine/ui/hubCommon.css` |
| 65 | +- active tool pages still load the shared shell stylesheet and module |
| 66 | +- the landing page loads the engine theme and shared shell |
| 67 | +- only the approved four tools appear in the active registry-driven surface |
| 68 | +- preserved sprite tooling does not appear in active landing or navigation output |
| 69 | +- stale deprecated sprite-rename references remain blocked by the validator |
| 70 | + |
| 71 | +## Follow-Up Recommendations |
| 72 | +- keep future first-class tool visual changes routed through `hubCommon.css` tokens and `tools/shared/platformShell.css` |
| 73 | +- keep future active-tool additions gated through `tools/toolRegistry.js` and the same validator |
| 74 | +- avoid reintroducing bespoke shell palettes on per-tool pages |
0 commit comments