18 — Project Tracker & Implementation Planning Overlay
Keywords: milestone overlay, dependency map, progress tracker, design status, implementation status, Dxxx tracker, feature clusters, critical path
This page is a project-tracking overlay on top of the canonical roadmap in
src/08-ROADMAP.md. It does not replace the roadmap. It exists to make implementation order, dependencies, and design-vs-code progress visible in one place.
Canonical tracker note: The Markdown tracker pages — this page and tracking/milestone-dependency-map.md — are the canonical implementation-planning artifacts. Any schema/YAML content is optional automation support only and must not replace these human-facing planning pages.
Feature intake gate (normative): A newly added feature (mode, UI flow, tooling capability, platform adaptation, community feature, etc.) is not considered integrated into the project plan until it is placed in the execution overlay with:
- a primary milestone (
M0–M11) - a priority class (
P-Core/P-Differentiator/P-Creator/P-Scale/P-Optional) - dependency placement (hard/soft/validation/policy/integration as applicable)
- tracker representation (Dxxx row and/or feature-cluster mapping)
Purpose and Scope
- Keep
src/08-ROADMAP.mdas the canonical phase timeline and deliverables. - Add an implementation-oriented milestone/dependency overlay (
M0–M11). - Track progress at Dxxx granularity (one row per decision in
src/09-DECISIONS.md). - Separate Design Status from Code Status so this design-doc repo can stay honest and useful before implementation exists.
- Provide a stable handoff surface for future engineering planning, delegation, and recovery after pauses.
How to Read This Tracker
- Read the Milestone Snapshot to see where the project stands at a glance.
- Read Recommended Next Milestone Path to see the currently preferred execution order.
- Use the Decision Tracker to map any
Dxxxto the milestone(s) it primarily unlocks. - Use
tracking/milestone-dependency-map.mdfor the detailed DAG, feature clusters, and dependency edges. - Use
tracking/netcode-research-alignment-audit-2026-02-27.mdfor the recorded netcode policy-vs-research reasoning trail and drift log.
Status Legend (Design vs Code)
Design Status (spec maturity)
| Status | Meaning |
|---|---|
NotMapped | Not yet mapped into this tracker overlay |
Mentioned | Mentioned in roadmap/docs but not anchored to a canonical decision or cross-doc mapping |
Decisioned | Has a canonical decision (or equivalent spec section) but limited cross-doc integration mapping |
Integrated | Cross-referenced across relevant docs (architecture/UX/security/modding/etc.) |
Audited | Reviewed for contradictions and dependency placement (tracker baseline audit or targeted design audit) |
Code Status (implementation maturity)
| Status | Meaning |
|---|---|
NotStarted | No implementation evidence linked |
Prototype | Isolated proof-of-concept exists |
InProgress | Active implementation underway |
VerticalSlice | End-to-end slice works for a narrow path |
FeatureComplete | Intended scope implemented |
Validated | Feature complete + validated by tests/playtests/ops checks as relevant |
Validation Status (evidence classification)
| Status | Meaning |
|---|---|
None | No validation evidence recorded yet |
SpecReview | Design-doc review / consistency audit only (common in this repo baseline) |
AutomatedTests | Test evidence exists |
Playtest | Human playtesting evidence exists |
OpsValidated | Service/operations validation evidence exists |
Shipped | Released and accepted in a public build |
Evidence rule: Any row with Code Status != NotStarted must include evidence links (repo path, CI log, demo notes, test report, etc.). In this design-doc repository baseline, most code statuses are expected to remain NotStarted.
Milestone Snapshot (M0–M11)
| Milestone | Objective | Roadmap Mapping | Design Status | Code Status | Validation | Current Read |
|---|---|---|---|---|---|---|
M0 | Design Baseline & Execution Tracker Setup | pre-Phase overlay | Audited | FeatureComplete | SpecReview | Tracker pages and overlay are the deliverable. Evidence: src/18-PROJECT-TRACKER.md, src/tracking/*.md. |
M1 | Resource & Format Fidelity + Visual Rendering Slice | Phase 0 + Phase 1 | Integrated | NotStarted | SpecReview | Depends on M0 only; strongest first engineering target. |
M2 | Deterministic Simulation Core + Replayable Combat Slice | Phase 2 | Integrated | NotStarted | SpecReview | Critical path milestone; depends on M1. |
M3 | Local Playable Skirmish (Single Machine, Dummy AI) | Phase 3 + Phase 4 prep | Integrated | NotStarted | SpecReview | First playable local game slice. |
M4 | Minimal Online Skirmish (No External Tracker) | Phase 5 subset (vertical slice) | Integrated | NotStarted | SpecReview | Minimal online slice intentionally excludes tracking/ranked. |
M5 | Campaign Runtime Vertical Slice | Phase 4 subset | Decisioned | NotStarted | SpecReview | Campaign runtime vertical slice can parallelize with M4 after M3. |
M6 | Full Single-Player Campaigns + Single-Player Maturity | Phase 4 full | Decisioned | NotStarted | SpecReview | Campaign-complete differentiator milestone. Status reflects weakest critical-path decisions (D042, D043, D036 are Decisioned). |
M7 | Multiplayer Productization (Browser, Ranked, Spectator, Trust) | Phase 5 full | Integrated | NotStarted | SpecReview | Multiplayer productization, trust, ranked, moderation. |
M8 | Creator Foundation (CLI + Minimal Workshop + Early Mod Workflow) | Phase 4–5 overlay + 6a foundation | Integrated | NotStarted | SpecReview | Creator foundation lane can start after M2 if resourced. |
M9 | Full SDK Scenario Editor + Full Workshop + OpenRA Export Core | Phase 6a | Integrated | NotStarted | SpecReview | Scenario editor + full workshop + export core. |
M10 | Campaign Editor + Game Modes + RA1 Export + Editor Extensibility | Phase 6b | Integrated | NotStarted | SpecReview | Campaign editor + advanced game modes + RA1 export. |
M11 | Ecosystem Polish, Optional AI/LLM, Platform Expansion | Phase 7 | Decisioned | NotStarted | SpecReview | Optional/experimental/polish heavy phase. |
Recommended Next Milestone Path
Recommended path now: M0 (complete tracker overlay) -> M1 -> M2 -> M3 -> parallelize M4 and M5 -> M6 -> M7 -> M8/M9 -> M10 -> M11
Rationale:
M1andM2are the shortest path to proving the engine core and de-risking the largest unknowns (format compatibility + deterministic sim).M3creates the first local playable Red Alert-feeling slice (community-visible progress).M4satisfies the early online milestone using the finalized netcode architecture without waiting for full tracking/ranked infrastructure.M5/M6preserve the project’s single-player/campaign differentiator instead of deferring campaign completeness behind multiplayer productization.M8(creator foundation) can begin afterM2on a parallel lane, but full visual SDK/editor (M9+) should wait for stable runtime semantics and content schemas.
Granular execution order for the first playable slice (recommended):
G1-G3(M1): RA assets parse -> Bevy map/sprite render -> unit animation playbackG4-G5(M2seam prep): cursor/hit-test -> selection baselineG6-G10(M2core): deterministic sim -> path/move -> shoot/hit/deathG11-G15(M3mission loop): win/loss evaluators -> mission end UI -> EVA/VO -> replay/exit -> feel passG16(M3milestone exit): widen into local skirmish loop + narrowD043basic AI subset
Canonical detailed ladder and dependency edges:
src/tracking/milestone-dependency-map.md→Granular Foundational Execution Ladder (RA First Mission Loop -> Project Completion)
Current Active Track (If Implementation Starts Now)
This section is the immediate execution recommendation for an implementer starting from this design-doc baseline. It is intentionally narrower than the full roadmap and should be updated whenever the active focus changes.
Active Track A — First Playable Mission Loop Foundation (M1 -> M3)
Primary objective: reach G16 (local skirmish milestone exit) through the documented G1-G16 ladder with minimal scope drift.
Start now (parallel where safe):
RESOLVED: Scale factor = 1024 (seeP002fixed-point scale decision closureresearch/fixed-point-math-design.md)G1RA asset parsing baseline (.mix,.shp,.pal)G2Bevy map/sprite render sliceG3unit animation playback
Then continue in strict sequence (once prerequisites are met):
G4cursor/hit-testG5selection baselineG6-G10deterministic sim + movement/path + combat/death (afterP002)G11-G15mission-end evaluators/UI/EVA+VO/feel pass (✓ resolved — Kira viaP003bevy_kira_audio; seeresearch/audio-library-music-integration-design.md)G16widen to local skirmish + frozenD043basic AI subset
Active Track A Closure Criteria (Before Switching Primary Focus)
M3.SP.SKIRMISH_LOCAL_LOOPvalidated (local playable skirmish)G1-G16evidence artifacts collected and linked✓ DONE (1024,P002resolved and reflected in implementation assumptionsresearch/fixed-point-math-design.md)✓ DONE (Kira,P003resolved before finalizingG13/G15research/audio-library-music-integration-design.md)D043M3basic AI subset frozen/documented
Secondary Parallel Track (Allowed, Low-Risk)
These can progress without derailing Active Track A if resourcing allows:
M8prep work forG21.1design-to-ticket breakdown (CLI/local-overlay workflow planning only)✓ RESOLVED (no longer blockingP003audio library evaluation spikesG13)- test harness scaffolding for deterministic replay/hash proof artifacts (
G6/G9/G10)
Do Not Pull Forward (Common Failure Modes)
- Full
M7multiplayer productization features duringM4slice work (browser/ranked/tracker) - Full
M6AI sophistication while implementingG16(M3basic AI subset only) - Full visual SDK/editor (
M9+) beforeM8foundations and runtime/network stabilization