Commit Graph
5 Commits
Author SHA1 Message Date
sudacode 3c111d2e3b fix(stats): serialize excluded word writes to avoid races
- Queue setExcludedWords writes so a slower in-flight save can't land after and overwrite a newer edit
- Run server-sync listeners independently so one throwing listener doesn't roll back a successful write or block the rest
- Add regression tests for write ordering, listener isolation, coalesced known-word snapshots, and vocabulary hook aggregate refresh/retry
2026-08-17 01:29:11 -07:00
sudacode 6018f393d2 fix(stats): refresh vocabulary aggregates after exclusion edits
- Refetch vocabulary summary/charts once the exclusion list write is server-acknowledged, and retry failed aggregate loads with backoff before showing an inline error with a Retry control
- Coalesce concurrent getVocabularySummary calls into a single worker task
- Scan imm_words in id-keyed batches to bound memory for large vocabularies
2026-08-16 23:44:09 -07:00
sudacode 311f1e8ee5 feat(stats): speed up session maintenance and improve stats UI (#111) 2026-06-08 02:20:52 -07:00
sudacode 0915b23dc8 Persist stats exclusions in DB and fix word metrics filtering (#60) 2026-05-03 20:06:13 -07:00
sudacode 6749ff843c feat(stats): add v1 immersion stats dashboard (#19) 2026-03-20 02:43:28 -07:00