Files
code-crispies/specs/004-pedagogical-messages/tasks.md
Michael Czechowski c560676544 feat: implement #4 — replace answer-revealing validation messages with pedagogical hints
Rewrite ~120 validation error messages across 17 English lesson modules
and their localized variants (ar, de, es, pl, uk) to use concept questions,
property hints, and directional nudges instead of revealing the exact
CSS property-value answers.

Priority modules (flexbox, box-model, colors, positioning) fully rewritten.
All remaining CSS modules updated. Only message strings changed — no
validation logic modifications.
2026-03-28 19:40:28 +01:00

2.7 KiB

Tasks

Phase 1: Preparation

  • Task 1.1: Audit existing tests for hardcoded validation message assertions; note any that need updating
  • Task 1.2: Read each priority English module and draft replacement messages using the hint style guide (concept question / property hint / directional nudge)

Phase 2: English Priority Modules (100% answer-revealing)

  • Task 2.1: Rewrite validation messages in lessons/flexbox.json (6 messages) [P]
  • Task 2.2: Rewrite validation messages in lessons/01-box-model.json (10 messages) [P]
  • Task 2.3: Rewrite validation messages in lessons/03-colors.json (4 messages) [P]
  • Task 2.4: Rewrite validation messages in lessons/12-positioning.json (5 messages) [P]

Phase 3: English Remaining Modules

  • Task 3.1: Rewrite messages in lessons/00-basic-selectors.json (15 messages) [P]
  • Task 3.2: Rewrite messages in lessons/00-basics.json (4 messages) [P]
  • Task 3.3: Rewrite messages in lessons/01-advanced-selectors.json (8 messages) [P]
  • Task 3.4: Rewrite messages in lessons/04-typography.json (1 message) [P]
  • Task 3.5: Rewrite messages in lessons/05-units-variables.json (3 messages) [P]
  • Task 3.6: Rewrite messages in lessons/06-transitions-animations.json (8 messages) [P]
  • Task 3.7: Rewrite messages in lessons/07-layouts.json (8 messages) [P]
  • Task 3.8: Rewrite messages in lessons/08-responsive.json (8 messages) [P]
  • Task 3.9: Rewrite messages in lessons/09-gradients.json (3 messages) [P]
  • Task 3.10: Rewrite messages in lessons/10-tailwind-basics.json (16 messages) [P]
  • Task 3.11: Rewrite messages in lessons/11-filters.json (4 messages) [P]
  • Task 3.12: Rewrite messages in lessons/13-pseudo-elements.json (4 messages) [P]
  • Task 3.13: Rewrite messages in lessons/grid.json (5 messages) [P]

Phase 4: Localized Variants

  • Task 4.1: Update Arabic (ar/) localized modules with pedagogical messages [P]
  • Task 4.2: Update German (de/) localized modules with pedagogical messages [P]
  • Task 4.3: Update Spanish (es/) localized modules with pedagogical messages [P]
  • Task 4.4: Update Polish (pl/) localized modules with pedagogical messages [P]
  • Task 4.5: Update Ukrainian (uk/) localized modules with pedagogical messages [P]

Phase 5: Validation & Polish

  • Task 5.1: Run npm run format.lessons to ensure JSON formatting consistency
  • Task 5.2: Run npm run test and fix any test failures related to message text assertions
  • Task 5.3: Grep audit — verify no "Set " answer-revealing patterns remain in any lesson file
  • Task 5.4: Spot-check a few lessons via npm start to confirm messages render correctly in the UI