fix(data): retranslate PT Rules with GPT-5.4-mini (#211) - #225
Conversation
Full retranslation of 18 Rules cards from FR to PT replacing catastrophic MT errors (English titles, garbled game terms like "o pêssego", "baratiner"). Translation quality validated: - Proper European Portuguese (pt-PT) - Game roles preserved: Baratineur, Argumentum - Markdown formatting and emojis preserved - Idiomatic translations (e.g. "La parlote coinchée" → "A conversa apertada") Also adds Validation/translate_rules_pt.py for future retranslation needs. Closes #211 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Review (cross-agent posted as comment since same GH user)Translation quality verified against 5 sample rows. The PT-PT is genuinely natural and fixes real defects:
Game role preservation confirmed: Minor observation — BOM added (non-blocking)The rewrite via Python Non-blocking: script future-proofing
Confirmation for #222 (PR I opened)po-2023 flagged in the dashboard that Recommendation: merge. Unblocks PT publication + validates the GPT-5.4-mini pipeline end-to-end. |
Adds DatasetUpdater support for translating Argumentum Rules from FR to PT, replacing the need for standalone Python scripts. Changes: - Rule.cs: add Pk property + ClassMap mapping (primary key for DatasetUpdater) - Rules CSV: add pk column (Rules_01 through Rules_18) - DatasetUpdaterRootConfig.cs: add TranslateRulesToPt config (Enabled=false) - Prompt files for Rules FR→PT translation (markdown-aware, game terms preserved) Config details: - Model: gpt-5.4-mini (fallback: gpt-4.1-mini) - DivisionMode: SequentialChunks, ChunkSize=3 - FunctionCalling enabled, SelectEmptyTargets=false (overwrite all) - MaxDegreeOfParallelism=3 Complements PR #225 (Python-based PT Rules retranslation for immediate fix). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds DatasetUpdater support for translating Argumentum Rules from FR to PT, replacing the need for standalone Python scripts. Changes: - Rule.cs: add Pk property + ClassMap mapping (primary key for DatasetUpdater) - Rules CSV: add pk column (Rules_01 through Rules_18) - DatasetUpdaterRootConfig.cs: add TranslateRulesToPt config (Enabled=false) - Prompt files for Rules FR→PT translation (markdown-aware, game terms preserved) Config details: - Model: gpt-5.4-mini (fallback: gpt-4.1-mini) - DivisionMode: SequentialChunks, ChunkSize=3 - FunctionCalling enabled, SelectEmptyTargets=false (overwrite all) - MaxDegreeOfParallelism=3 Complements PR #225 (Python-based PT Rules retranslation for immediate fix). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adds DatasetUpdater support for translating Argumentum Rules from FR to PT, replacing the need for standalone Python scripts. Changes: - Rule.cs: add Pk property + ClassMap mapping (primary key for DatasetUpdater) - Rules CSV: add pk column (Rules_01 through Rules_18) - DatasetUpdaterRootConfig.cs: add TranslateRulesToPt config (Enabled=false) - Prompt files for Rules FR→PT translation (markdown-aware, game terms preserved) Config details: - Model: gpt-5.4-mini (fallback: gpt-4.1-mini) - DivisionMode: SequentialChunks, ChunkSize=3 - FunctionCalling enabled, SelectEmptyTargets=false (overwrite all) - MaxDegreeOfParallelism=3 Complements PR #225 (Python-based PT Rules retranslation for immediate fix). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Post-hoc review — PR #225 Verdict: ✅ LGTM — good data quality fix Critical fix for catastrophic MT errors in Portuguese Rules. The before/after examples in the PR description are compelling (e.g., "o pêssego" → correct PT game terminology). Observations:
Translation spot-check (PT):
Good data quality. The PT Rules were genuinely broken and this fixes them properly. |
Summary
gpt-5.4-miniValidation/translate_rules_pt.pyscript for future retranslation needsBefore (catastrophic MT)
"# Roll of the English Channel"(English title!)"### 1. o pêssego"(literal "the peach" instead of "Le piocheur")"O baratiner exibe seus argumentos"(garbled game role)After (GPT-5.4-mini)
"## Decorrer da ronda\n### 1. O comprador""O Baratineur expõe os seus argumentos""## A conversa apertada"(idiomatic for "La parlote coinchée")Test plan
Closes #211
🤖 Generated with Claude Code