## Context All structural/formatting work is now complete or in-flight: - ✅ Pipeline operational (82 PDFs, 20 SVGs, 44 tests green) - ✅ Mind map HTML wrappers published (#196, #198) - ✅ École des Menteurs cover (#188 phase 1, #194) - ✅ Overflow detection script (#190 phase 1, #195) - ✅ Rules card layout optimization (#119, PR #201) - 🔄 GSheet sync tooling (#193, PR #200) **What remains before publication: text quality and translation completeness.** ## Current translation coverage | Dataset | Rows | EN | RU | PT | Notes | |---------|------|----|----|-----|-------| | **Fallacies** | 1408 | ✅ core 100%, Simple_name 4%, political_example 2% | ✅ ~85% | ✅ ~85% | 4 micro-issues identified | | **Virtues** | 223 | ❌ 0% — NO columns | ❌ 0% | ❌ 0% | Blocked by #183 | | **Scenarii** | 167 | ⚠️ 53% (suggestion only, missing 7 columns) | ⚠️ 54% | ⚠️ 54% | 77 rows untranslated | | **Rules** | 18* | ✅ 100% | ✅ 100% | ✅ 100% | Minor quality issues (apostrophe PT) | *After PR #201 merge (was 24). ## Phases ### Phase 0 — Infrastructure (prerequisites) - [ ] **#183** — Upgrade translation pipeline SDK (Betalgo.OpenAI obsolete, models deprecated) - [ ] **#193** — Merge GSheet sync (PR #200) — enables bidirectional data flow - [ ] **Virtues CSV schema** — Add `_en`, `_ru`, `_pt` columns to Virtues taxonomy CSV - [ ] **Scenarii CSV schema** — Add missing EN columns (`category_en`, `subcategory_en`, `title_en`, `smoothTalker_en`, `drawer_en`, `context_en`, `issue_en`) ### Phase 1 — French source text quality - [ ] **#191** — Simplify French source texts for broader accessibility - [ ] **#190 phase 2** — Tighten Virtues card copy (overflow fixes guided by detection script) - [ ] **Fallacies micro-fixes** — Fix 4 identified issues: - Row 930: wrong `link_en` (Wikipedia Creepypasta instead of Appeal to Novelty) - Row 552: empty `desc_ru` - Row 152: truncated `desc_ru` (sentence cut mid-word) - Row 859: truncated `desc_en`/`desc_pt` for Appel à la Pureté ### Phase 2 — Translation completeness - [ ] **Fallacies** — Fill `Simple_name_en` (1348 empty), `political_example_en/ru/pt` (1373 empty each) - [ ] **Scenarii** — Translate all 77 untranslated rows + add 7 missing EN columns - Fix "baratineur" appearing untranslated in 11+ EN rows → "smooth talker" - [ ] **Virtues** — Full initial translation for all 223 rows × 3 languages - [ ] **Rules PT quality** — Fix "Liars 'School" apostrophe in Portuguese ### Phase 3 — Multi-pass quality review (#192) - [ ] **Consistency pass** — Terminology alignment across datasets (e.g., "baratineur"/"smooth talker") - [ ] **Tone pass** — Ensure game-appropriate register (playful but precise) - [ ] **Taxonomy fidelity** — Verify translated hierarchy names preserve classification nuances - [ ] **Native speaker review** — At minimum for EN, ideally RU and PT ### Phase 4 — Visual validation & publication - [ ] Regenerate all card images with corrected texts - [ ] Run overflow detection (#190) on all languages/variants - [ ] Assemble PDFs and verify layout - [ ] Visual QA — spot-check all 4 languages across all card types - [ ] #134 — GitHub Release ## Dependencies ``` Phase 0: #183 (SDK) + #193 (GSheet) ──┐ ├──→ Phase 2 (translations) Phase 1: #191 (FR text) ──────────────┘ │ ├──→ Phase 3 (quality) │ │ │ ├──→ Phase 4 (visual + release) │ Phase 0: Virtues schema ──→ Phase 2: Virtues i18n ┘ ``` ## Roles - **ai-01**: Phase 1 micro-fixes, Phase 3 consistency/automated checks, Phase 4 visual QA - **po-2023**: Phase 0 (#183 SDK upgrade, Virtues schema), Phase 2 bulk translation runs - **User**: Phase 1 (#191 editorial decisions), Phase 3 (native speaker validation), Phase 4 (final sign-off) ## Metrics Target: **100% translation coverage** with **0 overflow** across all 4 languages before release (#134).
Context
All structural/formatting work is now complete or in-flight:
What remains before publication: text quality and translation completeness.
Current translation coverage
*After PR #201 merge (was 24).
Phases
Phase 0 — Infrastructure (prerequisites)
_en,_ru,_ptcolumns to Virtues taxonomy CSVcategory_en,subcategory_en,title_en,smoothTalker_en,drawer_en,context_en,issue_en)Phase 1 — French source text quality
link_en(Wikipedia Creepypasta instead of Appeal to Novelty)desc_rudesc_ru(sentence cut mid-word)desc_en/desc_ptfor Appel à la PuretéPhase 2 — Translation completeness
Simple_name_en(1348 empty),political_example_en/ru/pt(1373 empty each)Phase 3 — Multi-pass quality review (#192)
Phase 4 — Visual validation & publication
Dependencies
Roles
Metrics
Target: 100% translation coverage with 0 overflow across all 4 languages before release (#134).