Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Low-resource multilingual localization (143 languages) + game rule/termination fixes - #195

Merged
bobbycxy merged 3 commits into
TextArena:multilingualfrom
borgr:trackb-multilingual-pr
Aug 6, 2026
Merged

bobbycxy merged 3 commits into
TextArena:multilingualfrom
borgr:trackb-multilingual-pr

Conversation

@borgr

@borgr borgr commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

Adds UI localizations for 143 additional low-resource languages on top of the existing 8-language multilingual work, plus correctness fixes to the games being localized.

Translation & verification

Strings are produced with open MT (NLLB-200) and verified for meaning fidelity by an independent two-model LLM judge (Llama-3.1-405B + Qwen2.5-72B). Every in-target string is judged by both families; agreements auto-confirm, and a flag from only one family is adjudicated by a careful single-leaf Llama-3.1-405B re-judge so the over-flagging model can't churn faithful strings. Confirmed bugs are re-translated under a no-regression write gate (placeholder / parser-command / curly-slot-multiset parity + language-ID leak check).

Coverage is 99.98%: 2 of 9021 game-language pairs (lus/Breakthrough, kas/SpiteAndMalice) retain single-model baseline verification after persistent judge-parse failures — noted in the ledger.

Confidence ledger

_trackb_confidence.json records per-language tier, meaning fidelity, residual-bug counts, and target-language coverage: 132 CERTIFIED_FLAGGED / 11 EXPERIMENTAL at an 85% adjudicated-fidelity bar. Every language ships ≥94% post-repair fidelity. These are LLM-verified, not native-verified — CERTIFIED remains reserved for native review. At runtime, language_confidence.warn_if_flagged(lang) emits a UserWarning for any non-certified locale.

Game fixes

Restored/finished alongside their locales:

  • Poker — highest-straight ranking + main/side-pot splitting (faithful Texas Hold'em)
  • Hanabi — 3 fuse tokens, ends on the 3rd misplay, reports the cooperative score
  • LeTruc — faithful trick ranking, fold scoring, and raise structure
  • Tak — guaranteed termination (flat-win + turn cap)
  • Hangman — a wrong full-word guess costs a life (guarantees termination)
  • SpellingBee — numpy-free, reproducible frequency-weighted letter sampling
  • Small entry-point fixes: ScenarioPlanning default-jury import + set_draw kwarg, NewRecruit prompt interpolation, TruthAndDeception even default max_turns; removed stray debug prints in SettlersOfCatan / LogicPuzzle / WordSearch

Tooling

check_locales.py CI gate, translate_locale.py helper, language_confidence.py, and the multilingual test harness. Also removes three stray backup files that were committed by mistake (Poker/env copy.py, SimpleRenderWrapper/render copy.py, Diplomacy/prompts/context_prompt copy.txt).

Verification

  • python scripts/check_locales.py → 0 errors across 79 games
  • python tests/multilingual/test_multilingual.py → all games pass (English golden byte-identity + cross-lingual smoke)

borgr added 3 commits August 5, 2026 08:57
Regenerate the README low-resource language table from the confidence
ledger (per-language tier, meaning fidelity, target-language coverage).
Reconcile FIXES.md / DEFERRED.md with the restored and newly-finished
game state.
Restore the verified multilingual versions of Coup, Hanabi, LeTruc,
LeducHoldem, Poker, Santorini, Set, Tak, and the word games (Wordle,
WordLadder, Hangman, WordSearch, WordChains, SpellingBee, LetterAuction),
and finish outstanding rule/termination bugs:
- Poker: highest-straight ranking + main/side-pot splitting
- Hanabi: 3 fuse tokens, end on the 3rd misplay, report cooperative score
- LeTruc: faithful trick ranking, fold scoring, and raise structure
- Tak: guaranteed termination (flat-win + turn cap)
- Hangman: a wrong full-word guess costs a life (guarantees termination)
- SpellingBee: numpy-free, reproducible frequency-weighted letter sampling
- ScenarioPlanning/Debate: default-jury import fallback; NewRecruit prompt
  interpolation; TruthAndDeception even default max_turns; remove stray
  debug prints in SettlersOfCatan/LogicPuzzle/WordSearch

Localization infrastructure: check_locales.py gate, translate_locale.py,
language_confidence.py confidence surface, and the multilingual test
harness. Remove three stray backup files.
Add UI localizations for 143 additional low-resource languages, produced
with open machine translation (NLLB-200) and verified for meaning
fidelity by an independent two-model LLM judge (Llama-3.1-405B +
Qwen2.5-72B). Every in-target string is judged by both model families;
agreements are auto-confirmed, and a flag from only one family is
adjudicated by a careful single-leaf Llama-3.1-405B re-judge so the
over-flagging model cannot churn faithful strings. Confirmed bugs are
re-translated under a no-regression write gate (placeholder / parser-
command / curly-slot-multiset parity + language-ID leak check).

Includes the per-language confidence ledger (_trackb_confidence.json):
132 CERTIFIED_FLAGGED / 11 EXPERIMENTAL at an 85% adjudicated-fidelity
bar; every language ships >=94% post-repair fidelity. Also restores and
updates the structured-language locales, scenarios, and golden
transcripts for the multilingual game environments.
@bobbycxy
bobbycxy merged commit ac44fc8 into TextArena:multilingual Aug 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants