Codex — Wave 4 Plan
Wave 4. Production of the deep prerequisites that Wave 3 units (and a handful of Wave 2 mid-tier units) declared pending_prereqs: true against. After Wave 4, every shipped unit's prerequisites should resolve to other shipped units — the curriculum DAG becomes traversable from leaf to apex with zero residual pending_prereqs: true.
Read OVERVIEW.md, docs/plans/WAVE_3_PLAN.md (Wave 3 Phase 3.1 + 3.2 are complete), docs/pilot-lessons.md (consolidated production lessons through Phase 3.2), docs/specs/QUALITY_RUBRIC.md (the validator gate).
1. Wave 4 scope
8 units still have pending_prereqs: true as of 2026-04-28 after Wave 3 Phase 3.2 closed:
| Unit | Pending on |
|---|---|
01.01.03 Vector space |
00.02.05 function, 01.01.01 field |
01.02.01 Group |
00.02.05 function |
03.01.04 Tensor algebra |
03.01.01 tensor product |
03.01.05 Quotient algebra |
03.01.02 associative algebra, 03.01.03 ideal |
03.04.06 De Rham cohomology |
03.04.04 exterior derivative, 03.04.05 Stokes' theorem |
03.05.05 Double cover |
03.12.02 covering space |
03.08.04 Classifying space |
03.12.01 homotopy / homotopy group |
03.08.06 Stable homotopy |
03.12.01 homotopy, 03.12.03 suspension, 03.12.04 spectrum |
Plus one additional gap surfaced by Wave 1 / Wave 2 prereq lists but not yet in any unit's pending list:
03.06.03Stiefel-Whitney classes — referenced by Spin structure (which currently haspending_prereqs: falsebecause the validator didn't catch this; could be tightened totrueif rigour is desired, but Stiefel-Whitney is foundational to characteristic-class theory and worth producing as a Wave 4 unit either way).
Wave 4 production target: 10 units organised into two non-colliding strands.
2. Strand A — algebra / foundations (5 units, independent)
For the gpt-codex parallel session. See docs/batches/WAVE_4_GPT_BATCH.md (paste-ready scaffold).
| Order | Unit ID | Title | Path | Anchor |
|---|---|---|---|---|
| 1 | 00.02.05 |
Function | content/00-precalc/02-set-and-function/00.02.05-function.md | Halmos Naive Set Theory §8; Lang Algebra §0 |
| 2 | 01.01.01 |
Field | content/01-foundations/01-linear-algebra/01.01.01-field.md | Lang Algebra §III; Dummit-Foote §7 |
| 3 | 03.01.01 |
Tensor product | content/03-modern-geometry/01-tensor-algebra/03.01.01-tensor-product.md | Lang Algebra §XVI; Atiyah-Macdonald §2 |
| 4 | 03.01.02 |
Associative algebra | content/03-modern-geometry/01-tensor-algebra/03.01.02-associative-algebra.md | Lang Algebra §III; Bourbaki Algebra I Ch. III |
| 5 | 03.01.03 |
Ideal in an algebra | content/03-modern-geometry/01-tensor-algebra/03.01.03-ideal.md | Lang Algebra §III §6; Atiyah-Macdonald §1 |
Unblocks (after this strand ships): 01.01.03 Vector space, 01.02.01 Group, 03.01.04 Tensor algebra, 03.01.05 Quotient algebra — i.e., 4 of the 8 pending units close.
3. Strand B — topology / differential geometry (5 units, independent)
For the claude session (taken concurrent with Strand A).
| Order | Unit ID | Title | Path | Anchor |
|---|---|---|---|---|
| 1 | 03.12.01 |
Homotopy and homotopy group | content/03-modern-geometry/12-homotopy/03.12.01-homotopy.md | Hatcher Algebraic Topology §1.1; May Concise Course Ch. 1 |
| 2 | 03.12.02 |
Covering space | content/03-modern-geometry/12-homotopy/03.12.02-covering-space.md | Hatcher §1.3; Bredon §III.3; May Ch. 3 |
| 3 | 03.04.04 |
Exterior derivative | content/03-modern-geometry/04-differential-forms/03.04.04-exterior-derivative.md | Spivak Vol. I §7; Bott-Tu §I.1 |
| 4 | 03.04.05 |
Stokes' theorem | content/03-modern-geometry/04-differential-forms/03.04.05-stokes-theorem.md | Spivak Vol. I §11; Bott-Tu §I.3; Lee §16 |
| 5 | 03.06.03 |
Stiefel-Whitney classes | content/03-modern-geometry/06-characteristic-classes/03.06.03-stiefel-whitney.md | Milnor-Stasheff §4–§8; Bott-Tu §23 |
Unblocks (after this strand ships): 03.04.06 De Rham cohomology, 03.05.05 Double cover, 03.08.04 Classifying space (partial — also needs Strand A), 03.08.06 Stable homotopy (partial — also needs suspension/spectra). After both strands close, at minimum 6 of 8 pending units close, with stable homotopy still needing the (deferred) suspension + spectrum units.
4. Strand collision avoidance
The two strands operate on disjoint chapter directories:
- Strand A:
content/00-precalc/02-set-and-function/,content/01-foundations/01-linear-algebra/01.01.01-*,content/03-modern-geometry/01-tensor-algebra/ - Strand B:
content/03-modern-geometry/12-homotopy/,content/03-modern-geometry/04-differential-forms/03.04.04-*,content/03-modern-geometry/04-differential-forms/03.04.05-*,content/03-modern-geometry/06-characteristic-classes/03.06.03-*
Shared files both strands edit:
docs/catalogs/CONCEPT_CATALOG.md— append-only; new entries added in different sectionsmanifests/deps.json— append-only; both strands add toshippedsetdocs/pilot-lessons.md— append-only
Risk of last-write-wins on shared files is acceptable — historically (Wave 2, Wave 3 Phase 3.2) this hasn't caused issues because each session adds new content rather than modifying shared lines.
If a conflict surfaces, prefer manual reconciliation: take the union of additions from both sessions, validate, ship.
5. Phase structure
Wave 4 ships in one phase — both strands run concurrently, total ~10 units. After both report back, run a flag-flip cleanup pass on the 8 originally-pending units, then ship Wave 4.
6. Wave 5 scope (sketch)
After Wave 4, the remaining gaps are:
- Stable homotopy (
03.08.06) needs03.12.03suspension functor and03.12.04spectrum / stable category. These are deeper than typical curriculum entries and could be deferred indefinitely if we accept stable homotopy with a partial pending-prereqs flag, or produced in Wave 5 as part of a "homotopy theory completion" batch. - Possible apex expansion: per
OVERVIEW.md, additional apex strands beyond spin geometry (algebraic geometry, symplectic geometry, representation theory, statistical mechanics) would be the natural Wave 5 / v0.5 work. This is lateral expansion rather than depth, and constitutes the transition from v0.x to v1 of the curriculum.
Wave 5 candidate units (4–6 units, optional):
03.12.03Suspension (homotopy-theoretic)03.12.04Spectrum / stable homotopy category03.12.05Eilenberg-MacLane space (foundation for ordinary cohomology in homotopy theory)03.05.06Reduction of structure group (alternative formulation of spin / oriented bundles, useful)
Wave 5 is optional in the sense that the curriculum DAG is already substantially complete after Wave 4. Its primary purpose is closing the last pending_prereqs: true flags rather than introducing new content.
7. Success criteria (Wave 4)
Wave 4 succeeds if:
- All 10 Wave 4 units ship at 27/27 rubric.
- After Wave 4 ships,
validate_all.pyis green at unit count ≥ 63 (53 currently shipped + 10 Wave 4). - At least 6 of 8 previously-
pending_prereqs: trueunits flip tofalse(the 2 holdouts being stable homotopy and possibly classifying space, both blocking on suspension/spectrum which is deferred to Wave 5 if at all). -
pnpm buildclean at ≥ 68 pages rendered. - LM editorial review pass on the 10 new units catches no flagrant Master-prose violations (rubric §M).
Wave 4 fails if:
- Production introduces curriculum-bloat units that don't appear in any other unit's
prerequisites:list. - The DAG remains untraversable from leaf to apex after Wave 4 closes — i.e., more than 2 units still have
pending_prereqs: true.
8. Exit conditions
After Wave 4:
- If Wave 5 is scoped: produce 4–6 stretch units to close the last 2 pending flags and bring the DAG to total closure.
- If Wave 5 is deferred: declare v0.x scope complete with a documented "stable homotopy / classifying space pending on Wave 5" footnote. Move on to v0.5 lateral expansion (additional apex strands) or v1 launch readiness (rendering, exercise interactivity, RAG, reviewer attestation).
The transition out of Wave 4 is the natural inflection from "depth completion" to "lateral / production readiness" work.
Wave 4 plan drafted 2026-04-28 during Phase 3.2 cleanup. Two-strand parallel production.