|
15 | 15 | ## Strategic Layer |
16 | 16 |
|
17 | 17 | ### Learning System |
18 | | -- [ ] phases form a complete learning path |
19 | | -- [ ] each phase introduces one new concept cleanly |
20 | | -- [ ] each sample has a clear teaching purpose |
21 | | -- [ ] samples build progressively from prior phases |
22 | | -- [ ] no overlapping concept samples without clear justification |
23 | | -- [ ] advanced phases depend on mastered earlier phases |
24 | | -- [ ] samples remain understandable as standalone learning units |
25 | | -- [ ] sample naming stays aligned to phase numbering |
| 18 | +- phases form a complete learning path |
| 19 | +- each phase introduces one new concept cleanly |
| 20 | +- each sample has a clear teaching purpose |
| 21 | +- samples build progressively from prior phases |
| 22 | +- no overlapping concept samples without clear justification |
| 23 | +- advanced phases depend on mastered earlier phases |
| 24 | +- samples remain understandable as standalone learning units |
| 25 | +- sample naming stays aligned to phase numbering |
26 | 26 |
|
27 | 27 | ### Architectural Separation |
28 | | -- [ ] engine contains reusable runtime logic only |
29 | | -- [ ] shared contains reusable cross-domain helpers only |
30 | | -- [ ] games contain game-specific implementation only |
31 | | -- [ ] samples contain learning/demo logic only |
32 | | -- [ ] tools contain editor/pipeline/debug-authoring logic only |
33 | | -- [ ] no sample logic promoted directly into engine without stabilization |
34 | | -- [ ] no tool logic promoted directly into engine without stabilization |
35 | | -- [ ] games do not become the default location for engine experiments |
36 | | -- [ ] dependency direction stays enforced across all refactors |
| 28 | +- engine contains reusable runtime logic only |
| 29 | +- shared contains reusable cross-domain helpers only |
| 30 | +- games contain game-specific implementation only |
| 31 | +- samples contain learning/demo logic only |
| 32 | +- tools contain editor/pipeline/debug-authoring logic only |
| 33 | +- no sample logic promoted directly into engine without stabilization |
| 34 | +- no tool logic promoted directly into engine without stabilization |
| 35 | +- games do not become the default location for engine experiments |
| 36 | +- dependency direction stays enforced across all refactors |
37 | 37 |
|
38 | 38 | ### Promotion Pipeline |
39 | | -- [ ] sample proves concept |
40 | | -- [ ] shared extracts reusable logic |
41 | | -- [ ] engine receives stable abstraction |
42 | | -- [ ] promotion requires multi-use reuse evidence |
43 | | -- [ ] promotion requires stable public contract |
44 | | -- [ ] promotion requires removal of sample-specific assumptions |
45 | | -- [ ] promotion requires validation after extraction |
46 | | -- [ ] promotion does not happen as a blind dedupe exercise |
| 39 | +- sample proves concept |
| 40 | +- shared extracts reusable logic |
| 41 | +- engine receives stable abstraction |
| 42 | +- promotion requires multi-use reuse evidence |
| 43 | +- promotion requires stable public contract |
| 44 | +- promotion requires removal of sample-specific assumptions |
| 45 | +- promotion requires validation after extraction |
| 46 | +- promotion does not happen as a blind dedupe exercise |
47 | 47 |
|
48 | 48 | ### Tooling Strategy |
49 | | -- [ ] tools are created when they unblock engine/content progress |
50 | | -- [ ] tools do not define engine behavior |
51 | | -- [ ] tools share common IO/state/util layers where appropriate |
52 | | -- [ ] tools remain organized under `tools/` |
53 | | -- [ ] active tools list remains explicit |
54 | | -- [ ] legacy tools remain isolated and visibly non-current |
55 | | -- [ ] 3D tools arrive when 3D capability needs them, not before |
56 | | -- [ ] content pipeline tools arrive when asset complexity justifies them |
| 49 | +- tools are created when they unblock engine/content progress |
| 50 | +- tools do not define engine behavior |
| 51 | +- tools share common IO/state/util layers where appropriate |
| 52 | +- tools remain organized under `tools/` |
| 53 | +- active tools list remains explicit |
| 54 | +- legacy tools remain isolated and visibly non-current |
| 55 | +- 3D tools arrive when 3D capability needs them, not before |
| 56 | +- content pipeline tools arrive when asset complexity justifies them |
57 | 57 |
|
58 | 58 | ### End State Vision |
59 | | -- [ ] clean engine core |
60 | | -- [ ] clean shared layer |
61 | | -- [ ] games follow a standard structure |
62 | | -- [ ] samples form a complete curriculum |
63 | | -- [ ] tools support authoring/debug/content workflows |
64 | | -- [ ] debug platform supports games, tools, and samples |
65 | | -- [ ] network concepts are deterministic and explainable |
66 | | -- [ ] 2D capabilities are complete and reusable |
67 | | -- [ ] 3D capabilities are complete and reusable |
68 | | -- [ ] productization/distribution is documented and repeatable |
| 59 | +- clean engine core |
| 60 | +- clean shared layer |
| 61 | +- games follow a standard structure |
| 62 | +- samples form a complete curriculum |
| 63 | +- tools support authoring/debug/content workflows |
| 64 | +- debug platform supports games, tools, and samples |
| 65 | +- network concepts are deterministic and explainable |
| 66 | +- 2D capabilities are complete and reusable |
| 67 | +- 3D capabilities are complete and reusable |
| 68 | +- productization/distribution is documented and repeatable |
69 | 69 |
|
70 | 70 | --- |
71 | 71 |
|
|
0 commit comments