Skip to content

Commit 30ec6c1

Browse files
author
DavidQ
committed
Close the final section-1 residue for rendering, physics, scene, and implementation status
BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY
1 parent f321420 commit 30ec6c1

22 files changed

Lines changed: 275 additions & 42 deletions

docs/dev/CODEX_COMMANDS.md

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,30 @@ MODEL: GPT-5.4
22
REASONING: high
33

44
COMMAND:
5-
Create `BUILD_PR_LEVEL_01_COMBINED_STRUCTURE_CLOSEOUT` as a combined section-1 closeout PR.
5+
Create `BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY` as the final residue-only PR for roadmap section 1.
66

7-
Goal:
8-
Finish as much of roadmap section 1 as truthfully possible in one PR to reduce follow-on PR count.
7+
Only close these remaining items:
8+
- implementation PRs executed
9+
- src/engine/rendering
10+
- src/engine/physics
11+
- src/engine/scene
912

1013
Required work:
11-
1. Validate the current state of roadmap section 1 against the actual repo.
12-
2. Close all section-1 items that are already supported by repo reality.
13-
3. If a small number of remaining structure issues block closure:
14-
- fix only the smallest surgical items needed
15-
- avoid broad folder churn
16-
- avoid unrelated scope
17-
4. Confirm and document current structure boundaries for:
18-
- src/engine
19-
- src/shared
20-
- games
21-
- games/_template
22-
- samples
23-
- tools
24-
- tools/shared
25-
5. Update roadmap status markers only.
26-
- do NOT rewrite roadmap text
27-
6. If section 1 still cannot be fully closed:
28-
- leave only the truly incomplete items open
29-
- report exact blockers
14+
1. Make the smallest valid repo changes needed to truthfully close those four items.
15+
2. Ensure imports/paths remain valid.
16+
3. Ensure validation remains green.
17+
4. Update roadmap status markers only.
18+
5. Do NOT expand into section 2 or unrelated structure work.
19+
6. Do NOT reopen or rework already-complete section-1 items.
20+
21+
Success target:
22+
- section 1 becomes fully complete after this PR.
3023

3124
Final packaging step is REQUIRED:
32-
`<project folder>/tmp/BUILD_PR_LEVEL_01_COMBINED_STRUCTURE_CLOSEOUT.zip`
25+
`<project folder>/tmp/BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY.zip`
3326

3427
Hard rules:
35-
- reduce PR count by combining the remaining section-1 work here
36-
- keep fixes surgical
28+
- residue-only closeout
29+
- smallest valid change set
3730
- no unrelated repo changes
3831
- no missing ZIP

docs/dev/COMMIT_COMMENT.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
Combine remaining section-1 work into a near-closeout structure PR
2-
BUILD_PR_LEVEL_01_COMBINED_STRUCTURE_CLOSEOUT
1+
Close the final section-1 residue for rendering, physics, scene, and implementation status
2+
BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY

docs/dev/NEXT_COMMAND.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY
1+
BUILD_PR_LEVEL_02_ENGINE_CORE_BASELINE_AND_BOUNDARY_PASS
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
- Combined the remaining section-1 planning and closeout work into one PR
2-
- Intended to finish most or all of repo structure normalization in a single pass
3-
- Allows only small surgical corrections if they are required for truthful closure
1+
- Added final residue-only PR for the four remaining section-1 items
2+
- Limits work to rendering, physics, scene, and implementation-complete truth
3+
- Intended to fully close roadmap section 1 in one last pass
Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
- Section 1 validated against actual repo state
2-
- Supported section-1 items closed
3-
- Any remaining open items are explicit and minimal
4-
- Roadmap updates are status-only
5-
- No broad structure churn introduced
6-
- Output ZIP created at:
7-
<project folder>/tmp/BUILD_PR_LEVEL_01_COMBINED_STRUCTURE_CLOSEOUT.zip
1+
- implementation PRs executed can be truthfully marked complete
2+
- src/engine/rendering exists and is valid
3+
- src/engine/physics exists and is valid
4+
- src/engine/scene exists and is valid
5+
- imports/paths remain valid
6+
- validation remains green
7+
- roadmap updated by status markers only
8+
- output ZIP created at:
9+
<project folder>/tmp/BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY.zip

docs/dev/roadmaps/MASTER_ROADMAP_HIGH_LEVEL.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,18 +106,18 @@
106106
- [x] duplicate-helper migration map defined
107107
- [x] ambiguous-name rename map defined
108108
- [x] legacy migration map defined
109-
- [.] implementation PRs executed
109+
- [x] implementation PRs executed
110110
- [x] imports normalized after moves
111111
- [x] post-move validation complete
112112

113113
### Structure Targets
114114
- [x] `src/engine/core`
115115
- [x] `src/engine/state`
116-
- [ ] `src/engine/rendering`
116+
- [x] `src/engine/rendering`
117117
- [x] `src/engine/input`
118-
- [ ] `src/engine/physics`
118+
- [x] `src/engine/physics`
119119
- [x] `src/engine/audio`
120-
- [ ] `src/engine/scene`
120+
- [x] `src/engine/scene`
121121
- [x] `src/shared/utils`
122122
- [x] `src/shared/math`
123123
- [x] `src/shared/state`
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY
2+
3+
## Purpose
4+
Finish the last remaining open items in roadmap section 1 with one final residue-only PR.
5+
6+
## Applied Delta
7+
- Added `src/engine/rendering/` as the target rendering surface with compatibility-first re-export modules.
8+
- Added `src/engine/scene/` as the target scene surface with compatibility-first re-export modules.
9+
- Added `src/engine/physics/index.js` as the target physics surface (re-exporting active collision primitives).
10+
- Added focused validation test:
11+
- `tests/core/Section1FinalResidueStructure.test.mjs`
12+
- Updated roadmap status markers only for the required residue items.
13+
14+
## Files Added
15+
- `src/engine/rendering/index.js`
16+
- `src/engine/rendering/CanvasRenderer.js`
17+
- `src/engine/rendering/ResolutionScaler.js`
18+
- `src/engine/rendering/LayeredRenderSystem.js`
19+
- `src/engine/rendering/SpriteRenderSystem.js`
20+
- `src/engine/rendering/Renderer.js`
21+
- `src/engine/scene/index.js`
22+
- `src/engine/scene/Scene.js`
23+
- `src/engine/scene/SceneManager.js`
24+
- `src/engine/scene/SceneTransition.js`
25+
- `src/engine/scene/TransitionScene.js`
26+
- `src/engine/scene/SceneTransitionController.js`
27+
- `src/engine/scene/AttractModeController.js`
28+
- `src/engine/physics/index.js`
29+
- `tests/core/Section1FinalResidueStructure.test.mjs`
30+
31+
## Roadmap Status Updates (Only)
32+
- `[.] implementation PRs executed` -> `[x]`
33+
- `[ ] src/engine/rendering` -> `[x]`
34+
- `[ ] src/engine/physics` -> `[x]`
35+
- `[ ] src/engine/scene` -> `[x]`
36+
37+
## Validation
38+
- `node --check` on all newly added engine surface modules and the focused residue test file.
39+
- `node tests/core/Section1FinalResidueStructure.test.mjs` to verify:
40+
- new rendering surface exports resolve
41+
- new scene surface exports resolve
42+
- new physics surface export resolves and behaves correctly
43+
- Focused existing compatibility checks:
44+
- `node tests/render/Renderer.test.mjs`
45+
- `node tests/scenes/SceneManager.test.mjs`
46+
47+
## Residue Closeout Result
48+
- All four required residue items are now truthfully closable.
49+
- Existing `src/engine/render` and `src/engine/scenes` imports remain valid.
50+
51+
## Scope Guard
52+
- Residue-only closeout.
53+
- No section-2 or unrelated structure work.
54+
- No broad folder churn.
55+
56+
## Packaging
57+
`<project folder>/tmp/BUILD_PR_LEVEL_01_FINAL_RESIDUE_ONLY.zip`
58+
59+
## Status
60+
- Section-1 target residue completed for the four requested items.

src/engine/physics/index.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
/*
2+
Toolbox Aid
3+
David Quesenberry
4+
04/14/2026
5+
index.js
6+
*/
7+
export { isColliding } from '../collision/aabb.js';
8+
export { arePolygonsColliding, isPointInPolygon, getPolygonBounds } from '../collision/polygon.js';
9+
export { createRasterMask, areMasksColliding, isPointInMask, getMaskBounds } from '../collision/raster.js';
10+
export { runHybridCollision, getCollisionBoundsFromPolygon } from '../collision/hybrid.js';
11+
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/*
2+
Toolbox Aid
3+
David Quesenberry
4+
04/14/2026
5+
CanvasRenderer.js
6+
*/
7+
export { default } from '../render/CanvasRenderer.js';
8+
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
/*
2+
Toolbox Aid
3+
David Quesenberry
4+
04/14/2026
5+
LayeredRenderSystem.js
6+
*/
7+
export { renderByLayers } from '../render/LayeredRenderSystem.js';
8+

0 commit comments

Comments
 (0)