Skip to content

fix(i18n): complete _fr. class substitution for AR/FA/ZH - #360

Merged
jsboige merged 1 commit into
masterfrom
fix/i18n-static-conversions-ar-fa-zh
May 26, 2026
Merged

fix(i18n): complete _fr. class substitution for AR/FA/ZH#360
jsboige merged 1 commit into
masterfrom
fix/i18n-static-conversions-ar-fa-zh

Conversation

@jsboige

@jsboige jsboige commented May 26, 2026

Copy link
Copy Markdown
Contributor

Summary

Add missing ("ar", "_ar."), ("fa", "_fa."), ("zh", "_zh.") tuples to StaticConversions in AssetConverterConfig.cs.

Without this fix, CSS class desc_fr was not rewritten to desc_ar/desc_fa/desc_zh during localized rendering, causing RTL/CJK CSS rules to never match Arabic/Farsi/Chinese content.

Identified by ai-01 during PR #359 review (Gap 1).

Test plan

  • Build: 0 errors

Co-Authored-By: Claude Opus 4.7 noreply@anthropic.com

Add missing ("ar", "_ar."), ("fa", "_fa."), ("zh", "_zh.") tuples to
StaticConversions so CSS class rewriting works for Arabic, Farsi, and
Chinese. Without this, class="desc_fr" was not rewritten to class="desc_ar"
etc., causing RTL CSS rules to never match.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[NanoClaw] #360 — Complete _fr. class substitution for AR/FA/ZH

Single-line fix: adds Arabic (_ar.), Farsi (_fa.), and Chinese (_zh.) to the French document class substitution list in AssetConverterConfig.cs.

Previously: _fr.{en, ru, pt, es}
Now: _fr.{en, ru, pt, es, ar, fa, zh}

Straightforward data completeness fix. LGTM.

@myia-ai-01 myia-ai-01 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approve — Gap 1 fix as flagged in PR #359 review. AR/FA/ZH tuples added to StaticConversions, mechanical 1-line completion. LGTM.

@jsboige
jsboige merged commit d42e66c into master May 26, 2026
3 checks passed
@jsboige
jsboige deleted the fix/i18n-static-conversions-ar-fa-zh branch May 26, 2026 18:45
jsboige added a commit that referenced this pull request May 26, 2026
Add missing ("ar", "_ar."), ("fa", "_fa."), ("zh", "_zh.") tuples to
StaticConversions so CSS class rewriting works for Arabic, Farsi, and
Chinese. Without this, class="desc_fr" was not rewritten to class="desc_ar"
etc., causing RTL CSS rules to never match.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request May 26, 2026
* feat(i18n): add DatasetUpdater tasks for Rules AR/ES/FA/ZH translation

Add 4 new DatasetUpdater task configs for translating Rules to Spanish,
Arabic, Farsi, and Chinese Simplified. Each task uses gpt-5.4-mini with
function calling, sequential chunks of 3, targeting the Text_es/ar/fa/zh
CSV fields.

Also adds 8 prompt files (user + assistant for each language) following
the existing PT Rules translation pattern.

Build: 0 errors.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* chore(gitignore): hide local ai-01 cycle scratch dirs

Adds patterns for the 22+ /cycle*/ working directories, MASTER-INDEX.md,
and local screenshot artefacts that accumulated under repo root during
ai-01 cycles. Patterns are anchored to root (/) to avoid masking any
unrelated cycle-named files elsewhere in the tree.

No files deleted — just cleans `git status` noise.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(i18n): complete _fr. static class substitution for AR/FA/ZH (#360)

Add missing ("ar", "_ar."), ("fa", "_fa."), ("zh", "_zh.") tuples to
StaticConversions so CSS class rewriting works for Arabic, Farsi, and
Chinese. Without this, class="desc_fr" was not rewritten to class="desc_ar"
etc., causing RTL CSS rules to never match.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>

* data(rules): translate Rules to AR/ES/FA/ZH (24/24 × 4 new languages)

Rules CSV now has 100% coverage across all 8 pipeline languages:
FR (source) + EN/RU/PT (existing) + ES/AR/FA/ZH (new).

Translations generated via DatasetUpdater with gpt-5.4-mini using
function calling mode. Multiple pass-and-merge cycles for stubborn
rows (Rules_03, _21, _24 needed ChunkSize=1 isolation).

Also adds a null-guard in RecordsUpdater.UpdateRecord to prevent
ArgumentNullException when the LLM returns an invalid fieldName
in function calling mode, returning a diagnostic message instead.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Jun 29, 2026
…ublish) (#612)

Idle #135 (endorsed by ai-01). Net-new public-facing announcement article
for the v0.9.0 release, prepped for the DNN News5 module. FR canonical +
EN mirror (docs/publication/ convention). Publish action stays GATED on
#134 (tag) + #131 (DNN 10.3.2 live) + #132 (deploy) — this is text prep only.

Grounded in RELEASE-NOTES-v0.9.0.md + release-dossier README (no figure
invented): 8 languages (fr/en/ru/pt/es/ar/fa/zh, config-verified), 1408
fallacy nodes + 223 virtues + 167 scenarios 100% translated, 4 new game
variants (Bingo mixologie argumentative + Dernier Beau Parleur + Moulin a
Baratin + Parlote Coinchee, Rules deck-verified), 64 PDFs (8 langs x 8
types), FreeMind SVG mind maps, OWL 5.3MB SKOS+AIF, Print&Play A4.

Issue #135 body is STALE ("4 languages") — live scope is 8 (decision #4,
merged via #359/#360/#361). Reflected current scope, not the stale brief.

All version/download/og:image fields = [PLACEHOLDER] filled at tag time.
Downloads taxonomy by language x format x package (extends release-dossier
section 5 snippet). SEO meta block (title/description/og:image/twitter:card
/hreflang) + sitemap note. Publish checklist (gates #134/#131/#132).
Indexed in docs/publication/README.{fr,en}.md inventory (doc #3).

Scope: docs/publication/ only. 0 write Cards/, 0 AssetConverter code change
(pre-tag safe). Base ba8e4a6.

Relates to #135, #134, #131, #132.

Co-authored-by: Your <your.email@example.com>
Co-authored-by: Claude-Code <noreply@anthropic.com>
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.

3 participants