Problem
There are currently 3 overlapping mechanisms controlling daily word selection:
_daily_words.txt — curated subset of words used as daily words
_blocklist.txt — exclusion list to prevent certain words from appearing
_curated_schedule.txt — day-by-day override for specific dates
Plus the fallback to _5words.txt (full word list) when no curated daily list exists.
Proposal
Unify these into a single curated daily word list per language. This would:
- Simplify the word selection logic in
webapp/app.py
- Make it easier to audit what words will appear
- Remove edge cases where blocklist and curated schedule interact unexpectedly
Current code
See Language._get_daily_word() in webapp/app.py for the current selection logic.
Problem
There are currently 3 overlapping mechanisms controlling daily word selection:
_daily_words.txt— curated subset of words used as daily words_blocklist.txt— exclusion list to prevent certain words from appearing_curated_schedule.txt— day-by-day override for specific datesPlus the fallback to
_5words.txt(full word list) when no curated daily list exists.Proposal
Unify these into a single curated daily word list per language. This would:
webapp/app.pyCurrent code
See
Language._get_daily_word()inwebapp/app.pyfor the current selection logic.