- terms, translations, term_glosses with cascade deletes and pos check constraint - language_pairs with source/target language check constraints and no-self-pair guard - users with openauth_sub as identity provider key - decks and deck_terms with composite PK and position ordering - indexes on all hot query paths (distractor generation, deck lookups, FK joins) - SUPPORTED_POS and SUPPORTED_LANGUAGE_CODES as single source of truth in @glossa/shared |
||
|---|---|---|
| .. | ||
| CLAUDE.md | ||
| decisions.md | ||
| notes.md | ||
| roadmap.md | ||
| spec.md | ||