You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Evidence: `git status --short --branch` returned `## main...origin/main` before edits.
7
+
8
+
## Requirement Checklist
9
+
- PASS: Read `docs_build/dev/PROJECT_INSTRUCTIONS.md` before edits.
10
+
- PASS: Verified branch `main` before edits.
11
+
- PASS: Continued from PR_26162_038 Controls state.
12
+
- PASS: Controls status remains Wireframe. Evidence: `src/dev-runtime/guest-seeds/tool-metadata-inventory.js` keeps `"status": "Wireframe"` for `controls`.
13
+
- PASS: Game Control Mapping headers now read `Down`, `Hold`, `Up`, `Double Click`, `Drag`, and `Axis`.
14
+
- PASS: Matching generated Controls labels now use readable text through `CONTROL_EVENT_OPTIONS`.
15
+
- PASS: Validation copy now says `Down, Hold, Up, Double Click, Drag, or Axis`.
16
+
- PASS: Internal DB field names such as `eventD`, `eventH`, `eventU`, and `eventDC` were preserved to avoid changing persisted mapping contracts.
17
+
- PASS: Existing DB-backed game input mappings and player controller profiles were preserved.
18
+
- PASS: Normalized input architecture and shared `src/engine/input` usage were preserved.
19
+
- PASS: Add Game Control behavior, seven device rows, common/alternate enabled state, and mapping counts were preserved by targeted Playwright coverage.
20
+
- PASS: No sample JSON alignment, auth behavior, production account system, or unrelated rewrites were added.
21
+
22
+
## Search Evidence
23
+
- PASS: Fixed-string search found no `<th>D</th>`, `<th>H</th>`, `<th>U</th>`, or `<th>DC</th>` in `toolbox/controls`.
24
+
- PASS: Fixed-string search found no `Choose at least one event: D, H, U, DC` in `toolbox/controls`.
25
+
- PASS: Fixed-string search found no `label: "D"`, `label: "H"`, `label: "U"`, or `label: "DC"` in `toolbox/controls`.
26
+
- DOCUMENTED: `eventD`, `eventH`, `eventU`, and `eventDC` remain as internal persisted field names only.
- Samples lane: SKIPPED because no sample files or sample JSON contracts changed.
43
+
- Auth/account production lane: SKIPPED because no auth or production account behavior changed.
44
+
- Engine input lane: SKIPPED because no `src/engine/input` files changed; shared engine-input usage is covered by the targeted Controls Playwright spec.
- PASS: `npx playwright test tests/playwright/tools/InputMappingV2Tool.spec.mjs --reporter=line` - 7 passed.
50
+
51
+
## Playwright Result
52
+
- PASS: Table headers show readable event labels instead of `D`, `H`, `U`, and `DC`.
53
+
- PASS: Add Game Control still adds all normalized rows.
54
+
- PASS: Mapping count still updates.
55
+
- PASS: Seven device rows still render with hover/aria help.
56
+
- PASS: Persistence after reload remains covered by the Controls/Input Mapping spec.
57
+
58
+
## V8 Coverage
59
+
- PASS: `docs_build/dev/reports/playwright_v8_coverage_report.txt` was produced from the targeted Playwright run.
60
+
- PASS: `toolbox/controls/controls.js` appears in the coverage report with 83 percent advisory coverage.
61
+
62
+
## Manual Validation Steps
63
+
1. Open `/toolbox/controls/index.html`.
64
+
2. Confirm the Game Controls table headers read `Down`, `Hold`, `Up`, `Double Click`, `Drag`, and `Axis`.
65
+
3. Click `Add Game Control`.
66
+
4. Confirm all normalized rows appear, mapping counts update, and Missing Game Control Mapping disappears.
67
+
5. Inspect a row and confirm checkbox accessible labels use readable event text.
68
+
6. Reload the page and confirm saved mappings persist.
69
+
7. Confirm the Devices list still shows seven rows with hover/aria help.
70
+
71
+
## Samples Validation Decision
72
+
- SKIP: Full samples validation was not run because this PR only changes Controls UI labels/tests and does not touch sample JSON or sample runtime behavior.
(0%) assets/theme-v2/js/account-achievements.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
21
-
(0%) src/dev-runtime/guest-seeds/tool-metadata-inventory.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
22
-
(0%) src/dev-runtime/guest-seeds/tool-state-samples.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
23
-
(0%) src/dev-runtime/persistence/mock-db-store.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
24
-
(0%) src/dev-runtime/persistence/tool-repositories/assets-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
25
-
(0%) src/dev-runtime/persistence/tool-repositories/game-configuration-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
26
-
(0%) src/dev-runtime/persistence/tool-repositories/game-design-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
27
-
(0%) src/dev-runtime/persistence/tool-repositories/game-journey-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
28
-
(0%) src/dev-runtime/persistence/tool-repositories/game-workspace-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
29
20
(0%) src/dev-runtime/persistence/tool-repositories/input-mapping-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
30
-
(0%) src/dev-runtime/persistence/tool-repositories/objects-mock-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
31
-
(0%) src/dev-runtime/persistence/tool-repositories/palette-workspace-repository.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
32
-
(0%) src/dev-runtime/server/mock-api-router.mjs - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
33
-
(0%) toolbox/colors/colors.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
34
-
(0%) toolbox/colors/palette-api-client.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
35
-
(0%) toolbox/game-journey/game-journey-api-client.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
36
-
(0%) toolbox/game-journey/game-journey.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
37
-
(0%) toolbox/game-workspace/game-workspace-api-client.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
38
-
(0%) toolbox/game-workspace/game-workspace.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
39
-
(0%) toolbox/toolRegistry.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
40
-
(0%) toolbox/tools-page-accordions.js - WARNING: changed runtime JS file was not collected by Playwright V8 coverage; advisory only
0 commit comments