Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 24 additions & 31 deletions docs_build/dev/BUILD_PR.md
Original file line number Diff line number Diff line change
@@ -1,59 +1,52 @@
# PR_26175_ALFA_002-toolbox-status-bar-context-polish
# PR_26175_ALFA_004-game-hub-completion-status-audit

## Purpose
Polish the shared toolbox status bar context display so it shows only selected-game name/purpose on the left and categorized tool context in the center.
Audit Game Hub table workflow completion status only.

## Source Of Truth
This `BUILD_PR.md` is the source of truth for `PR_26175_ALFA_002-toolbox-status-bar-context-polish`.
This `BUILD_PR.md` is the source of truth for `PR_26175_ALFA_004-game-hub-completion-status-audit`.

## Exact Scope
- Do not include environment text in the status bar because environment already appears in the platform banner.
- On the left side, display the selected Game Hub game name and selected Game Hub game purpose.
- On the center side, display tool context messages for tool actions, save state, validation messages, warnings, or errors.
- Preserve normal placement above the footer.
- Preserve fullscreen/tool display mode bottom anchoring.
- Preserve Idea Board selected-game filtering exclusion.
- Preserve Game Hub as selected-game owner through the existing repository contract.
- Keep the shared Theme V2 toolbox component model.
- Update targeted Playwright coverage for the polished left and center context.
- Audit the Game Hub table workflow completion state.
- Produce `PASS`, `PARTIAL`, or `FAIL` status for every listed requirement with evidence paths.
- Use existing product code and tests as evidence.
- Run targeted validation for impacted Game Hub tests.
- Create required PR-specific reports and a repo-structured delta ZIP.

## Exact Targets
- `docs_build/dev/BUILD_PR.md`
- `assets/theme-v2/js/toolbox-status-bar.js`
- `assets/theme-v2/css/status.css`
- `tests/playwright/tools/ToolboxSelectedGameStatusBar.spec.mjs`
- `docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_report.md`
- `docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_validation-lane.md`
- `docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_requirements-checklist.md`
- `docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_report.md`
- `docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_validation-lane.md`
- `docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_requirements-checklist.md`
- `docs_build/dev/reports/codex_review.diff`
- `docs_build/dev/reports/codex_changed_files.txt`

## Audit Evidence Sources
- `toolbox/game-hub/index.html`
- `toolbox/game-hub/game-hub.js`
- `src/dev-runtime/persistence/mock-db-store.js`
- Impacted Game Hub Playwright specs discovered during audit.

## Out Of Scope
- No environment status in the toolbox status bar.
- No row highlights.
- No large banners.
- No modal-style status messages.
- No inline styles, style blocks, or page-local CSS.
- No product or UI implementation changes unless required to create audit reports.
- No API/service contract changes.
- No browser-owned product data changes.
- No page-local CSS, inline styles, or style blocks.
- No engine core changes.
- No `start_of_day` folder changes.

## Validation
Run:

```powershell
npx playwright test tests/playwright/tools/ToolboxSelectedGameStatusBar.spec.mjs --workers=1
```
Run targeted impacted Game Hub validation discovered during audit.

Also verify the changed source does not introduce inline styles or style blocks:
Also verify the audit-only change did not introduce inline styles or style blocks in the changed report/build files:

```powershell
rg -n "<style|style=" assets/theme-v2/js/toolbox-status-bar.js assets/theme-v2/css/status.css tests/playwright/tools/ToolboxSelectedGameStatusBar.spec.mjs
rg -n "<[s]tyle|[s]tyle=" docs_build/dev/BUILD_PR.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_report.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_validation-lane.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_requirements-checklist.md
```

## Artifact
Create repo-structured delta ZIP:

```text
tmp/PR_26175_ALFA_002-toolbox-status-bar-context-polish_delta.zip
tmp/PR_26175_ALFA_004-game-hub-completion-status-audit_delta.zip
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# PR_26175_ALFA_004-game-hub-completion-status-audit Report

## Overall Status
PARTIAL

Game Hub table workflow implementation is substantially present and covered by targeted tests, but the current targeted Game Hub validation run is not fully green. The audit found no need to change product or UI code in this PR.

## Evidence Matrix

| Requirement | Status | Evidence |
| --- | --- | --- |
| Audit Game Hub table workflow completion only | PASS | Audit scope is limited to Game Hub table markup, rendering logic, persistence ownership, and impacted Game Hub tests: `toolbox/game-hub/index.html:32`, `toolbox/game-hub/index.html:36`, `toolbox/game-hub/game-hub.js:534`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:246`. |
| Center panel owns the Game Hub table workflow | PASS | Game Hub page places status, game list, and log in the center panel: `toolbox/game-hub/index.html:36`, `toolbox/game-hub/index.html:37`, `toolbox/game-hub/index.html:38`, `toolbox/game-hub/index.html:39`. |
| Parent Games table renders with expected workflow columns | PASS | Table renderer creates `data-game-rows-table` with `Game`, `Purpose`, `Status`, and `Actions`: `toolbox/game-hub/game-hub.js:534`, `toolbox/game-hub/game-hub.js:558`, `toolbox/game-hub/game-hub.js:561`, `toolbox/game-hub/game-hub.js:563`. Test assertions cover the headers: `tests/playwright/tools/GameHubMockRepository.spec.mjs:283`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:285`. |
| Parent rows support open/selection and edit actions | PASS | Parent row renderer creates the toggle, purpose/status cells, and edit action: `toolbox/game-hub/game-hub.js:496`, `toolbox/game-hub/game-hub.js:515`, `toolbox/game-hub/game-hub.js:520`, `toolbox/game-hub/game-hub.js:521`. Test evidence covers active toggle state and edit button separation: `tests/playwright/tools/GameHubMockRepository.spec.mjs:292`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:315`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:332`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:572`. |
| Add/edit/delete workflow is implemented | PARTIAL | Code paths exist for add, edit, and delete: `toolbox/game-hub/game-hub.js:425`, `toolbox/game-hub/game-hub.js:460`, `toolbox/game-hub/game-hub.js:677`, `toolbox/game-hub/game-hub.js:702`, `toolbox/game-hub/game-hub.js:809`. Independent purpose/edit validation passed at `tests/playwright/tools/GameHubMockRepository.spec.mjs:755`. The broad create/open/delete test failed before reaching the full workflow due a stale `Game Status` label expectation: `tests/playwright/tools/GameHubMockRepository.spec.mjs:257`; failure artifact `tmp/test-results/artifacts/tools-GameHubMockRepositor-b1e1f-pens-and-deletes-mock-games-playwright/error-context.md`. |
| Readiness and source-idea child rows are available | PASS | Expanded rows are rendered by `renderExpandedGameRow` and child table renderers: `toolbox/game-hub/game-hub.js:350`, `toolbox/game-hub/game-hub.js:396`, `toolbox/game-hub/game-hub.js:408`, `toolbox/game-hub/game-hub.js:421`. Targeted child-table validation passed: `tests/playwright/tools/GameHubMockRepository.spec.mjs:437`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:539`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:554`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:801`. |
| Empty, unavailable, and malformed/error states are creator-safe | PASS | Empty/unavailable rendering is handled in `renderGameList`: `toolbox/game-hub/game-hub.js:534`, `toolbox/game-hub/game-hub.js:546`, `toolbox/game-hub/game-hub.js:552`. Tests passed for empty, unavailable, active-game error, and malformed payload states: `tests/playwright/tools/GameHubMockRepository.spec.mjs:608`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:672`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:699`, `tests/playwright/tools/GameHubMockRepository.spec.mjs:724`. |
| Guest browsing and guest save blocking are represented | PARTIAL | Save controls and save gating exist: `toolbox/game-hub/game-hub.js:131`, `toolbox/game-hub/game-hub.js:139`, `toolbox/game-hub/game-hub.js:159`, `toolbox/game-hub/game-hub.js:174`. The guest test failed before completing save-blocking assertions due the same stale `Game Status` label expectation: `tests/playwright/tools/GameHubMockRepository.spec.mjs:582`; failure artifact `tmp/test-results/artifacts/tools-GameHubMockRepositor-293f6-sing-and-blocks-guest-saves-playwright/error-context.md`. |
| Game Hub table data ownership is scoped to Game Hub mock DB tables | PASS | Mock DB group ownership maps Game Hub to `game_workspace_games` and `game_workspace_progress`: `src/dev-runtime/persistence/mock-db-store.js:37`, `src/dev-runtime/persistence/mock-db-store.js:39`. Schemas are present at `src/dev-runtime/persistence/mock-db-store.js:115` and `src/dev-runtime/persistence/mock-db-store.js:116`. |
| Targeted impacted Game Hub validation was run | PARTIAL | `npx playwright test tests/playwright/tools/GameHubMockRepository.spec.mjs --workers=1` ran 14 tests: 10 passed, 4 failed. Failure evidence is recorded in the validation lane. |
| No product/UI implementation changes were made | PASS | ALFA_004 changed only `docs_build/dev/BUILD_PR.md` and audit report artifacts. |

## Validation Summary
- PARTIAL: `npx playwright test tests/playwright/tools/GameHubMockRepository.spec.mjs --workers=1` produced 10 passed, 4 failed.
- Pending failure follow-up is test/product scope outside this audit-only PR.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# PR_26175_ALFA_004-game-hub-completion-status-audit Requirements Checklist

- PASS: BUILD_PR.md was replaced with ALFA_004 as the source of truth.
- PASS: Audit was limited to Game Hub table workflow completion.
- PASS: No product or UI implementation changes were made.
- PASS: Evidence paths are provided for every listed requirement.
- PASS: Existing product code and tests were used as audit evidence.
- PARTIAL: Targeted impacted Game Hub validation was run, but 4 of 14 tests failed.
- PASS: Game Hub table shell and center-panel placement are present.
- PASS: Parent Games table render path is present.
- PASS: Parent row open/selection/edit action path is present.
- PARTIAL: Add/edit/delete workflow code is present, but full create/open/delete validation failed before completing.
- PASS: Readiness and source-idea child rows are present and validated.
- PASS: Empty, unavailable, active-game error, and malformed active-game states are creator-safe and validated.
- PARTIAL: Guest browsing/save blocking code is present, but guest validation failed before completing.
- PASS: Game Hub mock DB ownership is scoped to `game_workspace_games` and `game_workspace_progress`.
- PASS: Audit reports were created.
- PASS: Repo-structured delta ZIP was created.
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# PR_26175_ALFA_004-game-hub-completion-status-audit Validation Lane

## Commands
```powershell
npx playwright test tests/playwright/tools/GameHubMockRepository.spec.mjs --workers=1
```

Result: PARTIAL, 10 passed and 4 failed.

Failures:
- `tests/playwright/tools/GameHubMockRepository.spec.mjs:238`: duplicate `Open Game Hub` link strict-mode conflict with toolbox status bar action. Artifact: `tmp/test-results/artifacts/tools-GameHubMockRepositor-3be80-points-creators-to-Game-Hub-playwright/error-context.md`.
- `tests/playwright/tools/GameHubMockRepository.spec.mjs:257`: expected no `Game Status` label, but one label is present. Artifact: `tmp/test-results/artifacts/tools-GameHubMockRepositor-b1e1f-pens-and-deletes-mock-games-playwright/error-context.md`.
- `tests/playwright/tools/GameHubMockRepository.spec.mjs:582`: expected no `Game Status` label, but one label is present. Artifact: `tmp/test-results/artifacts/tools-GameHubMockRepositor-293f6-sing-and-blocks-guest-saves-playwright/error-context.md`.
- `tests/playwright/tools/GameHubMockRepository.spec.mjs:1019`: broader toolbox role-filter test saw repeated `500 /api/game-journey/completion-metrics` responses. Artifact: `tmp/test-results/artifacts/tools-GameHubMockRepositor-05a08-xposing-admin-only-controls-playwright/error-context.md`.

Passing Game Hub table workflow coverage:
- `Game Hub validates game parent rows and child tables`
- `Game Hub shows a creator-safe empty state when no projects exist`
- `Game Hub shows a creator-safe unavailable state when project list API fails`
- `Game Hub shows active-game errors without throwing`
- `Game Hub reports malformed active-game payloads without throwing`
- `Game Hub displays and edits game purpose`
- `Game Hub readiness child rows update from mock game state`
- `Game Hub uses the wide Theme V2 tool layout at desktop widths`

```powershell
rg -n "<[s]tyle|[s]tyle=" docs_build/dev/BUILD_PR.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_report.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_validation-lane.md docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_requirements-checklist.md
```

Result: PASS, no matches.
9 changes: 3 additions & 6 deletions docs_build/dev/reports/codex_changed_files.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
assets/theme-v2/css/status.css
assets/theme-v2/js/toolbox-status-bar.js
docs_build/dev/BUILD_PR.md
docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_report.md
docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_validation-lane.md
docs_build/dev/reports/PR_26175_ALFA_002-toolbox-status-bar-context-polish_requirements-checklist.md
docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_report.md
docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_validation-lane.md
docs_build/dev/reports/PR_26175_ALFA_004-game-hub-completion-status-audit_requirements-checklist.md
docs_build/dev/reports/codex_changed_files.txt
docs_build/dev/reports/codex_review.diff
tests/playwright/tools/ToolboxSelectedGameStatusBar.spec.mjs
Loading
Loading