Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/skills/airflow-translations/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Global Airflow Translation Agent Skill
Comment thread
Jayantparashar10 marked this conversation as resolved.
Outdated

This file will contain shared terminology rules for all locales.

For Portuguese (pt) see: locales/pt.md

(Global content coming soon from #61985 / #62059)
66 changes: 66 additions & 0 deletions .github/skills/airflow-translations/locales/pt.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Portuguese (pt) Translation Agent Skill

**Locale code:** `pt`

This file contains locale-specific guidelines so AI translation agents produce new Portuguese strings that stay 100% consistent with the existing translations in:

`airflow-core/src/airflow/ui/public/i18n/locales/pt/*.json`

Comment thread
jason810496 marked this conversation as resolved.
## 1. Core Airflow Terminology (global – sync with SKILL.md when available)

- Keep these terms **in English unchanged** (case-sensitive):
- Dag / Dags
- Asset / Assets / Asset Events
- Backfill / Backfills
- XCom / XComs
- TaskInstance, DagRun, Triggerer, Executor, Pool, Provider, etc.
Comment thread
jason810496 marked this conversation as resolved.
Comment thread
jason810496 marked this conversation as resolved.
- Never use "DAG" – always "Dag"
- Product names: "Airflow" stays "Airflow"

## 2. Portuguese-Specific Guidelines

- Use natural, fluent Portuguese.
- Respect gender and number agreement (feminine/masculine, singular/plural).
- Follow existing i18next plural keys: `_one`, `_many`, `_other`, `_zero`
- Capitalization: Sentence case for descriptions, title-like for headers/buttons (match existing files).
- Spelling/vocab: Follow patterns in current JSON (e.g. "Excluir", "Adicionar", "Executando", "Enfileirado", "Secção", "detetadas", "Sobreescreve").

## 3. Examples from Existing Translations

**Always keep in English:**
- "Dag" → "Dag"
- "Asset" → "Asset"
- "Backfill" → "Backfill"
- "XCom" → "XCom"

**Common translated patterns:**
- "task_one" → "Tarefa"
- "task_many" → "Tarefas"
- "dagRun_one" → "Execução do Dag"
- "dagRun_many" → "Execuções do Dag"
- "allRuns" → "Todas as Execuções"
- "running" → "Executando"
- "failed" → "Falha"
- "success" → "Sucesso"
- "queued" → "Enfileirado"
- "Add" → "Adicionar"
- "Delete" → "Excluir"
- "Edit" → "Editar"
- "Save" → "Salvar"
- "Test" → "Testar"
- "Import" → "Importar"
- "Config" → "Configuração do Airflow"

## 4. Agent Instructions (DO / DON'T)

**DO:**
- Match tone, style, gender, casing from existing `pt/*.json` files
- Use natural Portuguese readable by Brazilian & Portuguese users
- Preserve all placeholders: `{{count}}`, `{{dagName}}`, etc.
- For plurals: provide all needed suffixes if source has them

**DON'T:**
- Translate core terms listed in section 1
- Invent new vocabulary when equivalent already exists
- Translate hotkeys, code references, or file paths