lila/documentation
lila be7a7903c5 refactor: migrate to deck-based vocabulary curation
Database Schema:
- Add decks table for curated word lists (A1, Most Common, etc.)
- Add deck_terms join table with position ordering
- Link rooms to decks via rooms.deck_id FK
- Remove frequency_rank from terms (now deck-scoped)
- Change users.id to uuid, add openauth_sub for auth mapping
- Add room_players.left_at for disconnect tracking
- Add rooms.updated_at for stale room recovery
- Add CHECK constraints for data integrity (pos, status, etc.)

Extraction Script:
- Rewrite extract.py to mirror complete OMW dataset
- Extract all 25,204 bilingual noun synsets (en-it)
- Remove frequency filtering and block lists
- Output all lemmas per synset for full synonym support
- Seed data now uncurated; decks handle selection

Architecture:
- Separate concerns: raw OMW data in DB, curation in decks
- Enables user-created decks and multiple difficulty levels
- Rooms select vocabulary by choosing a deck
2026-03-27 16:53:26 +01:00
..
CLAUDE.md feat(infra): add docker-compose and dockerfiles for all services 2026-03-26 09:43:39 +01:00
decisions.md refactor: migrate to deck-based vocabulary curation 2026-03-27 16:53:26 +01:00
notes.md refactor: migrate to deck-based vocabulary curation 2026-03-27 16:53:26 +01:00
roadmap.md refactor: migrate to deck-based vocabulary curation 2026-03-27 16:53:26 +01:00
spec.md refactor: migrate to deck-based vocabulary curation 2026-03-27 16:53:26 +01:00