# Multi-Language Translation Synchronization Rule - Aqila Admin Panel Whenever adding, updating, or modifying any text, table header, button label, modal message, toast notification, or string in `aqila_panel`: 1. **Mandatory 100% Language Parity across 3 Locales:** - Any new translation key or modified string MUST be updated across **ALL THREE** locale files simultaneously in `src/locales/`: - `src/locales/fa.json` (Persian) - `src/locales/ar.json` (Arabic) - `src/locales/en.json` (English) - Zero missing, extra, or empty keys (`fa.json`, `ar.json`, and `en.json` must have perfectly symmetrical key trees). - All changes must pass the automated translation test (`src/locales/__tests__/locales.test.ts` via `scripts/check-translations.js`). 2. **Text Modification & Word Parity Consistency:** - Whenever words are added, removed, or modified in any text (e.g. omitting file extensions, shortening labels, updating status messages), the exact same conceptual and grammatical change MUST be reflected across all 3 files. - Do not leave raw English text or placeholder strings in Persian or Arabic files. 3. **Zero Hardcoded Text in UI Components:** - No hardcoded strings in React components, Ant Design or Tailwind elements, table columns, action buttons, or notification toasts. All copy must be fetched via `useTranslation`. - Ensure RTL/LTR alignment and smart bidirectional input handling via `rtlUtils.ts`.