Skip to content

Commit 52c3d80

Browse files
author
DavidQ
committed
BUILD_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT
Migrated Space Invaders gameplay into games/SpaceInvaders_next. - source game preserved unchanged - gameplay moved into correct _next destination folders - _next now boots gameplay instead of template-only status mode
1 parent 566d9b6 commit 52c3d80

46 files changed

Lines changed: 3423 additions & 30 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/dev/CODEX_COMMANDS.md

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,17 @@ MODEL: GPT-5.4
22
REASONING: high
33

44
COMMAND:
5-
Execute BUILD_PR_GAMES_TEMPLATE_ENGINE_THEME_CANVAS_STATUS_TEXT exactly as written.
5+
Execute BUILD_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT exactly as written.
66

77
Rules:
8-
- Keep the canonical shell/theme baseline alignment
9-
- Modify `games/_template/index.html`
10-
- Render the required status text on the canvas, not as HTML status text
11-
- Keep `_template` non-playable and game-neutral
12-
- Do NOT copy Asteroids gameplay, assets, entities, levels, or flow
13-
- Do NOT modify `games/Asteroids`
14-
- Fail fast on ambiguity or gameplay dependency bleed
8+
- Read from `games/SpaceInvaders/**`
9+
- Write only to `games/SpaceInvaders_next/**`
10+
- Put files into the correct destination folders by responsibility
11+
- Fail fast instead of guessing any unclear destination
12+
- Keep `games/SpaceInvaders/**` unchanged
13+
- Do NOT perform canonical replacement
14+
- Do NOT refactor engine/shared broadly
15+
- Do NOT change unrelated games
1516

1617
Package output to:
17-
<project folder>/tmp/BUILD_PR_GAMES_TEMPLATE_ENGINE_THEME_CANVAS_STATUS_TEXT_delta.zip
18+
<project folder>/tmp/BUILD_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT_delta.zip

docs/dev/COMMIT_COMMENT.txt

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
APPLY_PR_GAMES_TEMPLATE_ENGINE_THEME_CANVAS_STATUS_TEXT
1+
BUILD_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT
22

3-
Accepted games/_template as the standard reusable game template baseline.
3+
Migrated Space Invaders gameplay into games/SpaceInvaders_next.
44

5-
- clean minimal structure
6-
- engine/theme shell aligned
7-
- required status text renders on canvas
8-
- no gameplay boot
5+
- source game preserved unchanged
6+
- gameplay moved into correct _next destination folders
7+
- _next now boots gameplay instead of template-only status mode

docs/dev/NEXT_COMMAND.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
Create BUILD_PR_GAMES_SPACE_INVADERS_TEMPLATE_BASELINE
1+
Create APPLY_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT
22

33
Scope:
4-
- create or normalize games/SpaceInvaders from games/_template
5-
- preserve current SpaceInvaders implementation until replacement is validated
6-
- no broad refactor
4+
- accept gameplay migration into SpaceInvaders_next
5+
- confirm runtime and debug behavior
6+
- keep existing SpaceInvaders unchanged
Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
Validation Checklist — APPLY Games Template Engine Theme Canvas Status Text
1+
Validation Checklist — Games Space Invaders Gameplay Migration To Next
22

3-
[x] _template structure is correct
4-
[x] No Asteroids gameplay present
5-
[x] Standard shell/theme baseline aligned
6-
[x] Canvas visible
7-
[x] "HTML Says" renders on canvas
8-
[x] "Template Status" renders on canvas
9-
[x] "This template intentionally does not boot gameplay." renders on canvas
10-
[x] No gameplay boots
11-
[x] No console errors reported
3+
[ ] games/SpaceInvaders_next contains migrated gameplay
4+
[ ] Migrated files are in correct destination folders
5+
[ ] games/SpaceInvaders_next/index.html boots gameplay
6+
[ ] Canvas is visible
7+
[ ] Shell/theme baseline still looks correct
8+
[ ] Debug works if it existed in source
9+
[ ] No console errors
10+
[ ] Existing games/SpaceInvaders remains unchanged
11+
[ ] No unrelated games changed
1212

13-
Status: PASS
13+
Status: PENDING
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
# BUILD PR — Games Space Invaders Gameplay Migration To Next
2+
3+
## Purpose
4+
Migrate Space Invaders gameplay into `games/SpaceInvaders_next/**` while preserving the existing playable game unchanged.
5+
6+
## Why This Is Next
7+
- `games/_template` is accepted
8+
- `games/SpaceInvaders_next/**` baseline now exists
9+
- the next best step is to place gameplay into the correct destination without promotion or cleanup yet
10+
11+
## Single PR Purpose
12+
Move the current Space Invaders gameplay implementation into the already-created `games/SpaceInvaders_next/**` destination and wire it into the accepted template-aligned shell.
13+
14+
## Source / Destination
15+
Source of gameplay:
16+
- `games/SpaceInvaders/**`
17+
18+
Destination for migrated gameplay:
19+
- `games/SpaceInvaders_next/**`
20+
21+
## Scope (STRICT)
22+
- Copy or adapt only the gameplay files needed from `games/SpaceInvaders/**`
23+
- Place them into the correct corresponding destinations under `games/SpaceInvaders_next/**`
24+
- Wire `games/SpaceInvaders_next/index.html` so `_next` runs the migrated gameplay instead of template-only status mode
25+
- Preserve the existing `games/SpaceInvaders/**` implementation unchanged
26+
- Keep this PR limited to migration into `_next` only
27+
28+
## Allowed Destination Areas
29+
Place migrated files only into the appropriate existing `_next` structure areas, including as applicable:
30+
- `games/SpaceInvaders_next/assets/**`
31+
- `games/SpaceInvaders_next/config/**`
32+
- `games/SpaceInvaders_next/debug/**`
33+
- `games/SpaceInvaders_next/entities/**`
34+
- `games/SpaceInvaders_next/flow/**`
35+
- `games/SpaceInvaders_next/game/**`
36+
- `games/SpaceInvaders_next/levels/**`
37+
- `games/SpaceInvaders_next/platform/**`
38+
- `games/SpaceInvaders_next/systems/**`
39+
- `games/SpaceInvaders_next/ui/**`
40+
- `games/SpaceInvaders_next/utils/**`
41+
42+
## Required Mapping Rule
43+
- Put each migrated file into the correct destination by responsibility
44+
- Do NOT dump unrelated files into the wrong folder just to make runtime work
45+
- Preserve reasonable structure parity between the original game and `_next`
46+
- If a source file has no clear destination inside `_next`, STOP rather than guessing
47+
48+
## Required Behavior After Migration
49+
`games/SpaceInvaders_next/index.html` MUST:
50+
- boot migrated Space Invaders gameplay
51+
- preserve the aligned engine/theme shell baseline already established in `_next`
52+
- preserve debug integration if the current Space Invaders implementation already has it
53+
- no longer remain template-only once migration is complete
54+
55+
## Allowed Operations
56+
- read from `games/SpaceInvaders/**`
57+
- write only to `games/SpaceInvaders_next/**`
58+
- adapt relative paths/import paths as required for the new destination
59+
- remove template-only placeholder behavior from `_next/index.html` once gameplay is wired
60+
- add only the source game files actually required for the migrated `_next` runtime
61+
62+
## Explicit Non-Goals
63+
- DO NOT modify `games/SpaceInvaders/**`
64+
- DO NOT delete `games/SpaceInvaders/**`
65+
- DO NOT perform canonical replacement in this PR
66+
- DO NOT remove `games/SpaceInvaders_next/**`
67+
- DO NOT refactor engine/shared code broadly
68+
- DO NOT change unrelated games
69+
- DO NOT do repo-wide cleanup
70+
71+
## Fail-Fast Conditions
72+
STOP with no changes if any of the following are true:
73+
- a required source file has no clear destination inside `games/SpaceInvaders_next/**`
74+
- migration would require editing `games/SpaceInvaders/**`
75+
- migration depends on engine/shared refactor beyond path corrections strictly required by destination move
76+
- `_next` runtime cannot be made playable without broad structural guessing
77+
- gameplay files would need to be placed into obviously wrong destination folders
78+
79+
## Acceptance Criteria
80+
- `games/SpaceInvaders_next/**` contains the migrated gameplay in correct destination folders
81+
- `games/SpaceInvaders_next/index.html` boots Space Invaders gameplay
82+
- no template-only status screen remains as the primary behavior
83+
- `games/SpaceInvaders/**` remains unchanged
84+
- no unrelated games changed
85+
- no broad engine/shared refactor occurred
86+
- runtime is testable in browser
87+
88+
## Validation Steps
89+
1. Open `games/SpaceInvaders_next/index.html`
90+
2. Confirm:
91+
- Space Invaders gameplay starts
92+
- canvas is visible
93+
- shell/theme baseline still looks correct
94+
- debug works if it existed in source
95+
- no console errors
96+
3. Compare `games/SpaceInvaders/**` and confirm it was not modified
97+
4. Spot-check migrated folders to confirm files landed in correct destinations
98+
99+
## Output Requirement
100+
Codex must package:
101+
`<project folder>/tmp/BUILD_PR_GAMES_SPACE_INVADERS_GAMEPLAY_MIGRATION_TO_NEXT_delta.zip`
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# BUILD PR — Games SpaceInvaders Next Template Baseline
2+
3+
## Purpose
4+
Create a safe, non-destructive template-aligned baseline alongside the existing Space Invaders game.
5+
6+
## Why This Shape
7+
We want less back-and-forth, but we still need one clear PR purpose.
8+
This BUILD bundles all baseline setup work needed for the next migration lane while keeping the current playable game intact.
9+
10+
## Single PR Purpose
11+
Establish `games/SpaceInvaders_next/**` as the accepted template-based migration baseline.
12+
13+
## Scope (STRICT)
14+
- Create `games/SpaceInvaders_next/**`
15+
- Use `games/_template/**` as the source of truth
16+
- Preserve the current `games/SpaceInvaders/**` implementation unchanged
17+
- Keep `games/SpaceInvaders_next/**` non-playable in this PR
18+
- Make the new baseline immediately testable in browser
19+
20+
## Source Of Truth
21+
- `games/_template/**`
22+
23+
## Target Paths (EXACT)
24+
Source:
25+
- `games/_template/**`
26+
27+
Destination:
28+
- `games/SpaceInvaders_next/**`
29+
30+
## Bundled Tasks Included In This BUILD
31+
1. Copy/adapt the accepted template baseline into `games/SpaceInvaders_next/**`
32+
2. Preserve the minimal reusable folder skeleton
33+
3. Preserve the aligned engine/theme shell baseline
34+
4. Ensure `games/SpaceInvaders_next/index.html` is browser-openable and testable
35+
5. Ensure the required status text renders on the canvas
36+
6. Ensure no gameplay boots
37+
7. Ensure no current Space Invaders files are modified
38+
39+
## Required Behavior
40+
`games/SpaceInvaders_next/index.html` MUST:
41+
- show the aligned shell/theme baseline from the accepted template
42+
- render a visible canvas
43+
- render this text on the canvas:
44+
45+
HTML Says
46+
Template Status
47+
This template intentionally does not boot gameplay.
48+
49+
- not boot gameplay
50+
- not load Space Invaders gameplay
51+
- not load Asteroids gameplay
52+
- not depend on copied game-specific assets
53+
54+
## Allowed Operations
55+
- create `games/SpaceInvaders_next/**`
56+
- copy/adapt files from `games/_template/**`
57+
- keep `.gitkeep` placeholders
58+
- adjust only what is required so the copied baseline works correctly at the new destination path
59+
60+
## Explicit Non-Goals
61+
- DO NOT modify `games/SpaceInvaders/**`
62+
- DO NOT migrate gameplay in this PR
63+
- DO NOT perform canonical replacement in this PR
64+
- DO NOT refactor engine/shared code
65+
- DO NOT change other games
66+
- DO NOT add Space Invaders assets, enemies, waves, scoring, audio, or rules
67+
- DO NOT expand `_next` beyond the accepted template baseline
68+
69+
## Fail-Fast Conditions
70+
STOP with no changes if any of the following are true:
71+
- creating `games/SpaceInvaders_next/**` would require modifying `games/SpaceInvaders/**`
72+
- the baseline cannot work at the new destination without gameplay code
73+
- any path outside `games/SpaceInvaders_next/**` must be changed, other than reading `games/_template/**`
74+
- more than baseline/template alignment is required
75+
76+
## Acceptance Criteria
77+
- `games/SpaceInvaders_next/**` exists
78+
- it matches the accepted template baseline structure
79+
- canvas is visible
80+
- required status text renders on the canvas
81+
- no gameplay boots
82+
- no console errors
83+
- `games/SpaceInvaders/**` remains unchanged
84+
85+
## Validation Steps
86+
1. Open `games/SpaceInvaders_next/index.html`
87+
2. Confirm:
88+
- canvas is visible
89+
- shell/theme baseline is present
90+
- the three required lines render on the canvas
91+
- no gameplay starts
92+
- no console errors
93+
3. Confirm `games/SpaceInvaders/**` was not modified
94+
95+
## Output Requirement
96+
Codex must package:
97+
`<project folder>/tmp/BUILD_PR_GAMES_SPACE_INVADERS_NEXT_TEMPLATE_BASELINE_delta.zip`
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

8.57 KB
Binary file not shown.
1 KB
Binary file not shown.
1.06 KB
Binary file not shown.

0 commit comments

Comments
 (0)