Prune ghost words from affix expansion and stop frequency loader creating words
- Add PruneOrphanWords post-import step that deletes words with no
definitions, synonyms, translations, pronunciations, etymology,
synsets, or frequency data
- Remove INSERT path from CETEMPublico loader — frequency data should
annotate existing words, not create new ones (was inflating pt-PT
from 136K real words to 718K)
- Add hasLetter filter to hunspell, affix, and dicionario loaders to
block punctuation entries like ".", ",", "(" from entering the DB
- Move hasLetter helper to scowl.go alongside other shared filters
Impact: en 655K→129K, pt-PT 1.5M→136K, fr 80K→56K (on reimport)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -107,8 +107,8 @@ func main() {
|
||||
)
|
||||
}
|
||||
|
||||
// Difficulty scorer runs last, after all word data is loaded
|
||||
loaders = append(loaders, loader.DifficultyScorer{})
|
||||
// Prune ghost words from affix expansion, then score difficulty
|
||||
loaders = append(loaders, loader.PruneOrphanWords{}, loader.DifficultyScorer{})
|
||||
|
||||
start := time.Now()
|
||||
if err := loader.Run(db, *dataDir, loaders, skipSet); err != nil {
|
||||
|
||||
Reference in New Issue
Block a user