import { readdirSync, readFileSync } from "node:fs"; import { describe, expect, it } from "vitest"; import { vocabKey } from "../lib/vocab"; // Every id the BACKEND owns and the UI names must have its name in both languages. The UI looks these // up with the raw id as the fallback — `t(\`config.fields.${key}.label\`, key)` — so a missing key never // fails loudly: the admin Configuration page showed `maintenance`, `tmdb`, `tmdb_api_key`, // `plex_overlay_map`… as bare identifiers, for months, and the i18n parity test stayed green because EN // and HU were missing the SAME keys (owner report, E11 S5). The ids live in Python, so the check reads // the registries straight from the backend sources: // - `sysconfig.SPECS` → `config.groups.`, `config.fields..label` + `.hint`, and for a // "choice" key `config.choices..