|
| 1 | +# BUILD_PR_LEVEL_17_52_DEBUG_OVERLAY_CYCLE_KEY_AND_SAMPLE_STACK_MAP |
| 2 | + |
| 3 | +## Purpose |
| 4 | +Replace the browser-conflicting debug overlay cycle key used in the phase-17 samples and lock the bottom-right overlay stack order to the exact sample-specific panel sets requested by the user. |
| 5 | + |
| 6 | +## Scope |
| 7 | +Small, surgical runtime/input/debug-overlay update only. |
| 8 | + |
| 9 | +In scope: |
| 10 | +- Remove `Tab` as the overlay cycle key anywhere this PR touches phase-17 debug overlay cycling. |
| 11 | +- Introduce one non-browser-reserved replacement key for the affected phase-17 samples and keep it consistent across the touched samples. |
| 12 | +- Keep debug panels anchored in the bottom-right corner. |
| 13 | +- Enforce the sample-specific bottom-right panel cycle/order listed below. |
| 14 | +- Update/add runtime tests to verify the new key path and the sample-specific bottom-right stack mapping. |
| 15 | + |
| 16 | +Out of scope: |
| 17 | +- Any unrelated HUD redesign. |
| 18 | +- Any repo-wide input remap outside the touched samples. |
| 19 | +- Any changes to start_of_day folders. |
| 20 | + |
| 21 | +## Required input change |
| 22 | +`Tab` must no longer be used for the overlay-cycle action in the affected phase-17 samples because the browser keeps consuming it. |
| 23 | + |
| 24 | +Implement a single replacement key for this PR. Use a key that is not browser-reserved and is practical during gameplay/debugging. Keep the same replacement key across all touched samples and tests. |
| 25 | + |
| 26 | +## Required layout rule |
| 27 | +All touched debug panels must remain anchored to the bottom-right corner and stack upward from there. |
| 28 | + |
| 29 | +## Required sample map |
| 30 | +Apply the following bottom-right cycle map exactly. |
| 31 | + |
| 32 | +### Samples 1708 and 1710 |
| 33 | +Cycle through these panels in this set: |
| 34 | +1. `UI Layer` |
| 35 | +2. `Mission Feed` |
| 36 | +3. the existing panel whose title ends in `ADY` |
| 37 | +4. `Mini-Game Runtime` |
| 38 | + |
| 39 | +### Samples 1709 and 1711 |
| 40 | +Cycle through these panels in this set: |
| 41 | +1. `Movement Runtime` |
| 42 | +2. `Movement Lab HUD` |
| 43 | + |
| 44 | +### Sample 1712 |
| 45 | +Cycle through these panels in this set: |
| 46 | +1. `UI Layer` |
| 47 | +2. `Mission Feed` |
| 48 | +3. the existing panel whose title ends in `ADY` |
| 49 | +4. `Telemetry Overlay` |
| 50 | + |
| 51 | +### Sample 1713 |
| 52 | +Cycle through these panels in this set: |
| 53 | +1. `UI Layer` |
| 54 | +2. `Mission Feed` |
| 55 | +3. the existing panel whose title ends in `ADY` |
| 56 | +4. `Final Reference Runtime` |
| 57 | + |
| 58 | +## Implementation notes for Codex |
| 59 | +- Reuse existing debug overlay composition where possible. |
| 60 | +- Do not rename the existing `...ADY` panel unless the current title is already wrong for another reason. The user only requires that the cycle include the current panel whose title ends in `ADY`. |
| 61 | +- Preserve bottom-right anchoring utilities if they already exist; extend them only as needed for deterministic stacking/order. |
| 62 | +- Keep the touched change set as small as possible. |
| 63 | + |
| 64 | +## Files expected to change |
| 65 | +- `samples/phase-17/1708/RealGameplayMiniGameScene.js` |
| 66 | +- `samples/phase-17/1709/MovementModelsLabScene.js` |
| 67 | +- `samples/phase-17/1710/RealGameplayMiniGameScene.js` |
| 68 | +- `samples/phase-17/1711/MovementModelsLabScene.js` |
| 69 | +- `samples/phase-17/1712/GameplayMetricsTelemetryScene.js` |
| 70 | +- `samples/phase-17/1713/FinalReferenceGameScene.js` |
| 71 | +- `src/engine/debug/*` only if needed for shared bottom-right stack/cycle support |
| 72 | +- `tests/runtime/*` for deterministic key/cycle/layout coverage |
| 73 | + |
| 74 | +## Required validation |
| 75 | +Codex must leave a runnable test that proves: |
| 76 | +- `Tab` is no longer the active cycle key in the touched samples. |
| 77 | +- The replacement key advances the overlay cycle. |
| 78 | +- Each sample exposes exactly the required panel set above. |
| 79 | +- The rendered panel titles still land in the bottom-right stack region. |
0 commit comments