Combines two related findings from a codebase audit (UX2, MF2) — fixing the dead end properly means building the missing content, which resolves both.
Problem
UX2: The Competitive Binding module's completion page (`src/content/Competitive.tsx` lines 200–207) has `nextButtonText: "View examples"` but `nextButton` was commented out. Students who finish the module reach a congratulations page with only a Back button and no way to proceed.
MF2: `src/simulation/PreComputedSimulationData.ts` defines `EXAMPLE_TRAJECTORY_URLS` for Module 3 pointing to a hemoglobin-CO competitive binding trajectory. No page in `competitiveArray` ever uses `trajectoryUrl` — the real-world example is wired up in the data layer but never surfaced to students.
Severity: High (UX2) / Medium (MF2)
Fix
Add a bonus content page to `competitiveArray` using the hemoglobin/CO trajectory, mirroring the structure of High Affinity's real-world-example bonus pages, and wire up `nextButton: true` on the completion page so it actually leads there.
🤖 Filed via Claude Code from a codebase audit.
Combines two related findings from a codebase audit (UX2, MF2) — fixing the dead end properly means building the missing content, which resolves both.
Problem
UX2: The Competitive Binding module's completion page (`src/content/Competitive.tsx` lines 200–207) has `nextButtonText: "View examples"` but `nextButton` was commented out. Students who finish the module reach a congratulations page with only a Back button and no way to proceed.
MF2: `src/simulation/PreComputedSimulationData.ts` defines `EXAMPLE_TRAJECTORY_URLS` for Module 3 pointing to a hemoglobin-CO competitive binding trajectory. No page in `competitiveArray` ever uses `trajectoryUrl` — the real-world example is wired up in the data layer but never surfaced to students.
Severity: High (UX2) / Medium (MF2)
Fix
Add a bonus content page to `competitiveArray` using the hemoglobin/CO trajectory, mirroring the structure of High Affinity's real-world-example bonus pages, and wire up `nextButton: true` on the completion page so it actually leads there.
🤖 Filed via Claude Code from a codebase audit.