Skip to main content

Capstone-Feeding Exercises

Unlike earlier-semester modules, exercises here are not generic platform problems. Every exercise produces an artifact that ships in your capstone repo. If it does not land in the repo, it does not count.

How To Use This Page

  1. Finish the concept page for the cluster first.
  2. Do the matching practice page.
  3. Then work the exercises below; each is ~30-90 minutes and results in a commit, a file, or a CI gate.
  4. Track completion by linking the exercise id to the commit hash in your capstone journal.

Lane 1: Walking Skeleton and Vertical Slices

Outputs feed the capstone's initial structure.

  • EX-WS-01 (60 min): Ship a walking-skeleton commit: a single GET /health endpoint whose response crosses every architectural layer, including the real database.
  • EX-WS-02 (30 min): Add one integration test asserting the walking-skeleton response; wire it into CI.
  • EX-WS-03 (45 min): Pick your steel-thread story (the one that covers the most integrations) and ship it as three vertical slices, each a separate commit.

Target outcomes:

  • skeleton in main branch
  • steel thread shipped in at least two integrations exercised end-to-end
  • no layer is skipped by any slice

Lane 2: Test Strategy for the Capstone

Outputs become the capstone's enduring test plan.

  • EX-TS-01 (60 min): Write library/raw/test-plan.md naming the unit / integration / E2E split, per-directory coverage floors, and the CI stage order.
  • EX-TS-02 (60 min): Add at least two tests at each level as a starter set. Commit and confirm CI runs them in the right stages.
  • EX-TS-03 (30 min): Audit the suite's total CI runtime. If it exceeds 5 minutes, identify the two slowest tests and decide whether to optimize them or move them to a lower level.

Target outcomes:

  • library/raw/test-plan.md defended in a 24-hour self-review
  • starter tests green and partitioned by stage
  • CI budget named and monitored

Lane 3: Quality Gates

Outputs are persistent CI and repo config, not one-off exercises.

  • EX-QG-01 (30 min): Wire pre-commit with formatter, linter, and type checker. Commit the config.
  • EX-QG-02 (30 min): Add a lint CI stage that blocks the pipeline on hook failure.
  • EX-QG-03 (45 min): Configure coverage with per-directory floors and at least one justified exclusion. Confirm a deliberate test deletion fails CI.
  • EX-QG-04 (60 min): Write one consumer-driven contract test at your riskiest external seam. Replay it against a local stub in CI. Document a follow-up for scheduling nightly verification against the real provider.

Target outcomes:

  • all gates blocking
  • coverage floor verified by deliberately regressing and reverting
  • one external seam contract-tested

Lane 4: Defect Reduction Practice

Outputs accumulate in your bug log and triage discipline.

  • EX-DR-01 (30 min): Open bugs.md. Triage at least three real or realistic defects using Sev, impact, and a root-cause tag from your fixed list.
  • EX-DR-02 (60 min): For each triaged defect, apply regression-first fixing. Commit the test and fix together, link to the triage entry.
  • EX-DR-03 (45 min): Introduce or find one flaky test. Walk the five-cause checklist. Write a one-page diagnosis report and land the targeted fix.

Target outcomes:

  • triage log with at least three entries, each linked to a commit
  • at least three regression tests in the suite
  • one flaky-test diagnosis report in the repo

Lane 5: Livable Code

Outputs keep the capstone code livable through the semester.

  • EX-LC-01 (30 min): Log three boy-scout moves you made during normal work this week; commit to refactor-journal.md.
  • EX-LC-02 (120 min): Pick one smell. Name the Fowler refactor that applies. Add characterization tests, execute the refactor, commit in small steps.
  • EX-LC-03 (30 min): Write or open DEBT.md. Add at least five ledger entries with severity, impact, why-deferred, and trigger. Audit weekly.
  • EX-LC-04 (25 min): Do a 24-hour self-review on a PR from yesterday, using the rubric. Commit at least five specific comments as action items or ledger entries.

Target outcomes:

  • refactor journal and debt ledger exist and are being maintained
  • one deep refactor shipped with tests
  • one self-review with five or more specific comments

Self-Curated Exercise Set

Build a custom set that adds the following to the capstone this semester:

  • 1 walking-skeleton commit and 1 steel thread
  • 1 test plan with at least 6 starter tests across three levels
  • 1 fully wired quality-gate stack (hooks + lint + coverage + one contract test)
  • 5 triage entries with 3 regression tests
  • 1 flaky-test diagnosis report
  • 5 debt ledger entries with triggers
  • 2 self-review sessions per week

Completion Checklist

  • Walking skeleton and steel thread shipped in main
  • Test plan committed and followed
  • All quality gates blocking in CI
  • Triage log, regression tests, and flaky-test diagnosis in the repo
  • Debt ledger maintained with defensible entries
  • At least two weekly 24-hour self-reviews with specific comments
  • Every exercise above linked to a capstone commit hash