|
| 1 | +# PR_26152_011-nav-faq-tool-display-mode Validation |
| 2 | + |
| 3 | +Playwright impacted: Yes |
| 4 | + |
| 5 | +## Scope |
| 6 | + |
| 7 | +- Added the existing About page and new FAQ page to the shared Game Foundry Studio NAV. |
| 8 | +- Added `GameFoundryStudio/faq.html` using the shared site/account page structure and CSS classes. |
| 9 | +- Updated shared `tool-display-mode` so normal, non-fullscreen mode shows the page `ToolName` instead of center-panel descriptive text. |
| 10 | +- Updated normal `tool-display-mode` text/color/alignment treatment to match the fullscreen name treatment. |
| 11 | + |
| 12 | +No sample JSON was modified. |
| 13 | + |
| 14 | +## Lanes Executed |
| 15 | + |
| 16 | +- contract/static - changed HTML/CSS/JS restrictions, route map, nav links, and CSS selector checks. |
| 17 | +- runtime/browser - targeted Playwright browser validation for the shared NAV partial, About page, FAQ page, normal tool display mode, and focus/fullscreen toggle behavior. |
| 18 | +- workspace-contract - required `npm run test:workspace-v2` was attempted; see WARN below. |
| 19 | + |
| 20 | +## Lanes Skipped |
| 21 | + |
| 22 | +- engine - no `src/`, engine runtime, rendering, input, audio, physics, asset loading, or shared parser code changed. |
| 23 | +- samples - SKIP because sample JSON and shared sample loading were not in scope. |
| 24 | +- full samples smoke - SKIP per BUILD instruction and because this PR does not broadly affect samples. |
| 25 | + |
| 26 | +## Commands And Results |
| 27 | + |
| 28 | +- PASS: `node --check GameFoundryStudio/assets/js/gamefoundry-partials.js` |
| 29 | +- PASS: `node --check GameFoundryStudio/assets/js/tool-display-mode.js` |
| 30 | +- PASS: inline Node static validation for changed HTML/CSS/JS. |
| 31 | + - Verified no inline `<style>` blocks, inline `<script>` blocks, inline `style` attributes, or inline event handlers in changed HTML/partial files. |
| 32 | + - Verified About and FAQ links exist in `header-nav.html`. |
| 33 | + - Verified `about` and `faq` routes exist in `gamefoundry-partials.js`. |
| 34 | + - Verified `tool-display-mode.js` uses `toolName` for the normal display description. |
| 35 | + - Verified changed CSS has balanced braces and the expected display-mode shadow, center alignment, gold color, and strong weight. |
| 36 | +- PASS: targeted Playwright browser validation through a temporary local HTTP server. |
| 37 | + - Verified About and FAQ render in shared NAV and resolve to `about.html` and `faq.html`. |
| 38 | + - Verified About nav link is active on `about.html`. |
| 39 | + - Verified FAQ page renders, has the FAQ nav link active, and includes four FAQ accordions. |
| 40 | + - Verified normal/non-fullscreen Game Builder display mode shows `Game Builder`, not `Game Builder turns the de...`. |
| 41 | + - Verified normal/non-fullscreen display-mode text color and weight match fullscreen name treatment. |
| 42 | + - Verified display-mode click enters focus/fullscreen mode, collapses the details body, shows fullscreen name `Game Builder`, exits focus/fullscreen mode, and reopens details. |
| 43 | +- WARN: `npm run test:workspace-v2` |
| 44 | + - Attempt 1 timed out after 124 seconds with no stdout/stderr completion. |
| 45 | + - Attempt 2 timed out after 604 seconds with no stdout/stderr completion. |
| 46 | + - The timed-out child Node/Playwright processes were stopped after timeout cleanup. |
| 47 | + - Direct target listing confirmed the lane expands to 72 tests in `tests/playwright/tools/WorkspaceManagerV2.spec.mjs`. |
| 48 | +- PASS: direct workspace-contract sanity check: |
| 49 | + - `node node_modules/@playwright/test/cli.js test tests/playwright/tools/WorkspaceManagerV2.spec.mjs --project=playwright --workers=1 --reporter=list --grep "registers Workspace Manager V2 from the tools index"` |
| 50 | + - Result: 1 passed. |
| 51 | + |
| 52 | +## Playwright V8 Coverage |
| 53 | + |
| 54 | +(100%) GameFoundryStudio/assets/js/gamefoundry-partials.js - 5512 of 5512 bytes executed in targeted nav/tool-display browser validation. |
| 55 | +(100%) GameFoundryStudio/assets/js/tool-display-mode.js - 5138 of 5138 bytes executed in targeted nav/tool-display browser validation. |
| 56 | + |
| 57 | +## Manual Validation Steps |
| 58 | + |
| 59 | +1. Open `GameFoundryStudio/index.html` through a local HTTP server. |
| 60 | +2. Confirm the shared top NAV includes `About` and `FAQ`. |
| 61 | +3. Open `GameFoundryStudio/about.html` and confirm the About NAV link is active. |
| 62 | +4. Open `GameFoundryStudio/faq.html` and confirm the FAQ NAV link is active and the FAQ accordions render. |
| 63 | +5. Open `GameFoundryStudio/tools/game-builder.html`. |
| 64 | +6. Confirm normal/non-fullscreen `tool-display-mode` shows `Game Builder` instead of the long descriptive sentence. |
| 65 | +7. Click the display-mode summary to enter focus/fullscreen mode and confirm the fullscreen label remains `Game Builder`. |
| 66 | +8. Click the display-mode summary again to exit and confirm normal mode reopens. |
| 67 | + |
| 68 | +## Expected PASS Behavior |
| 69 | + |
| 70 | +- About and FAQ appear in the shared site NAV on root, nested, and tool pages. |
| 71 | +- FAQ uses the shared header, footer, page title, account panel, side menu, card, accordion, and callout CSS patterns. |
| 72 | +- Normal/non-fullscreen tool display mode shows the current page `ToolName`. |
| 73 | +- Fullscreen/focus behavior remains unchanged: click enters focus/fullscreen treatment, click exits, and details reopen. |
| 74 | + |
| 75 | +## Expected WARN Behavior |
| 76 | + |
| 77 | +- `npm run test:workspace-v2` is WARN because the exact required command did not complete within 604 seconds in this environment. The issue is isolated to the large workspace-contract lane execution, not this PR's changed NAV/FAQ/tool-display files. |
0 commit comments