# Languages

A question is **one logical question** with any number of language versions.
Options share stable ids across languages, so a student answering in Hindi is
graded by exactly the same key as one answering in English.

## How it flows

1. Add each question in the languages you teach (the bank form has language
   tabs; imports and agents pass a `translations` array).
2. A test declares its **conduct languages** (e.g. English + हिन्दी).
3. **Publish blocks** until every attached question covers every conduct
   language — the error lists exactly which question is missing which language.
   Random pooling only ever picks questions that already qualify.
4. Students pick a language at the start and can **switch on any question**
   (the JEE pattern) — their answers carry over, because answers are option
   ids, not text.

## Notes

- `fill_blank` can carry per-language accepted answers; grading accepts the
  union, so "Delhi", "दिल्ली" and "Dilli" can all be right.
- Language codes are ISO-639-1: `en`, `hi`, `bn`, `ta`, `te`, `mr`, …
