v3.28.0: Rename signs to lessons
What Changed
Terminology rename: signs to lessons across the entire codebase. Learned lessons is immediately intuitive without needing context from the original Ralph blog post.
Naming changes
- sign to lesson, signs to lessons, unsign to forget
- signs.json to lessons.json, suggested-signs.txt to suggested-lessons.txt
- /sign skill to /lesson skill
- ralph sign/signs/unsign to ralph lesson/lessons/forget
- All functions, variables, constants, and template IDs renamed
Migration for existing projects
Automatic, no action needed. On first run after update:
- .ralph/signs.json is migrated to .ralph/lessons.json (JSON key rewritten)
- .ralph/suggested-signs.txt is renamed to .ralph/suggested-lessons.txt
- Migration triggers from all CLI commands, not just run or setup
Other changes
- Removed cost display from activity feed (inaccurate on max plans, shows duration only)
- Extracted _migrate_signs_to_lessons() helper to deduplicate migration logic in setup.sh
Stats
- 45 files changed, 672 insertions, 637 deletions
- 212 tests passing across 15 test files