Skip to content

docs: fix course counts and navigation (Polish Batch A) - #74

Merged
michalmaj merged 1 commit into
mainfrom
docs/polish-correctness-navigation
Oct 3, 2026
Merged

michalmaj merged 1 commit into
mainfrom
docs/polish-correctness-navigation

Conversation

@michalmaj

Copy link
Copy Markdown
Owner

Summary

First docs-only polish batch from the final polish/UX audit. Exactly the 4 scoped fixes — no functional changes, no code/fixture/config touched.

  1. README.md — L1 mission count was stale ("20 focused exercises", actually 23). Opening sentence ("each with focused missions and two checkpoint projects before the boss fight") incorrectly generalized L2-L7's P01/P02+boss-fight pattern onto Level 1, which actually has 5 independent boss fights. Reworded to a true general statement; all other level counts (L2-L7: 10/7/6/9/8/8 missions) were already correct and left untouched.
  2. COURSE_MAP.md — Level 4's prerequisite said only "Level 3 complete," omitting the mandatory Data Recall Checkpoint that sits between them. Now reads "Level 3 complete, Data Recall Checkpoint complete." No other prerequisite lines touched; existing plain (non-blockquote) style preserved.
  3. level_5_maintainability/missions/04_pytest_fixtures/README.md — the only checker-invocation command in the entire course missing uv run (every sibling L5 mission uses uv run python check.py). Fixed both occurrences (the Step 3 instruction and the matching checklist line) for internal consistency. Verified empirically: uv run python check.py runs correctly from the mission directory (fails only on the expected incomplete-scaffold state, not on command/path).
  4. level_7_concurrency_and_background_work/projects/03_concurrent_tournament_runner/README.md — the L7 boss fight (end of all 7 levels) had no pointer to the mandatory Final Analytics Epilogue, the one case in the whole course where this matters most. Added a 2-sentence bridge; link target verified to exist.

Also checked: the audit's reported vscode-webview:// artifact in L7 links — confirmed via grep -rn across all tracked Markdown that no such literal URL exists anywhere in the repo; it was a rendering/audit artifact, not a real issue. Nothing to fix.

Explicitly out of scope (future batches)

L3 starter intro, L5/L6 boss-fight summaries, prerequisite formatting unification, Next: link-style sweep, Key Insight cleanup, AI-smell edits, em-dash cleanup, top-level README rewrite.

Test plan

  • All 4 changed files are .md — zero .py/.json/.csv/config changes (git diff --name-only)
  • L1 counts in README now match filesystem (23 missions / 5 projects)
  • uv run python check.py verified to run correctly from level_5_maintainability/missions/04_pytest_fixtures/
  • L7→Epilogue link target (final_analytics_epilogue/README.md) verified to resolve
  • tools/author_check.py → 750 checks passed, 0 errors (unchanged from before)
  • tools/course_status.py → output unchanged
  • No .progress/__pycache__/temp artifacts left in the working tree

🤖 Generated with Claude Code

- README.md: L1 mission count was stale (said 20, actually 23); opening
  sentence overgeneralized L2-L7's P01/P02/boss-fight pattern onto L1,
  which has 5 independent boss fights instead.
- COURSE_MAP.md: Level 4 prerequisite omitted the mandatory Data Recall
  Checkpoint between Level 3 and Level 4.
- level_5_maintainability/missions/04_pytest_fixtures/README.md: the only
  checker command in the whole course missing `uv run` (verified the
  corrected command runs from the mission directory).
- level_7.../03_concurrent_tournament_runner/README.md: boss fight had no
  pointer to the mandatory Final Analytics Epilogue — added a 2-sentence
  bridge (link verified to resolve).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@michalmaj
michalmaj merged commit c6ec633 into main Oct 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant