i18n: automated Crowdin translation import (ru)#17127
Conversation
❌ Deploy Preview for ethereumorg failed.
|
✅ Deploy Preview for ethereumorg ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
785d9aa to
1723b2b
Compare
# Conflicts: # src/intl/ru/page-developers-learning-tools.json # src/intl/ru/page-developers-local-environment.json
…T23-48-17-ru # Conflicts: # public/content/translations/ru/community/grants/index.md # public/content/translations/ru/community/language-resources/index.md # public/content/translations/ru/community/online/index.md # public/content/translations/ru/desci/index.md # public/content/translations/ru/developers/docs/consensus-mechanisms/pos/index.md # public/content/translations/ru/developers/docs/consensus-mechanisms/pow/index.md # public/content/translations/ru/developers/docs/nodes-and-clients/nodes-as-a-service/index.md # public/content/translations/ru/energy-consumption/index.md # public/content/translations/ru/governance/index.md # public/content/translations/ru/roadmap/beacon-chain/index.md # public/content/translations/ru/roadmap/merge/index.md # public/content/translations/ru/whitepaper/index.md # src/intl/ru/page-developers-tutorials.json
Sanitizer fixes (53 files): brand name tags, MDX angle bracket escaping, orphaned HTML tags, ticker symbol corrections. Review fixes (27 files): Cyrillic ETH ticker -> Latin ETH (16 files), brand name "tverdost" -> Solidity in tutorial tags (3 files), PoS/PoW semantic inversion, translated hrefs, duplicate headings, wrong section headings, glossary typo, Ukrainian char contamination, ERC spacing in titles, broken XML tags in page-what-is-ethereum. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Glossary was zeroed out by a sed command that failed to match its target due to non-breaking space encoding. Restored from original Crowdin commit and applied typo fix (platv -> plata) with python. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
1. escapeMdxAngleBrackets: Rewrite from global content.split() to
line-by-line processing. Crowdin can break inline code spans across
lines, creating odd backtick counts that flip the even/odd parity
of the global split, causing <digits> inside code spans on later
lines to be falsely escaped as <digits>.
2. extractHeaderStructure: Change regex trailing anchor from \s*$ to
[ \t]*$ so fullMatch does not capture trailing \n. The old regex
caused syncHeaderIdsWithEnglish to strip newlines after every
header via .replace(). For duplicate-ID headers (e.g. four headings
sharing {#governance-example} in dao/index.md), the first occurrence
got double-stripped, merging the header with its following paragraph.
Adds 7 regression tests covering both bugs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Document sanitizer bugs found during Russian translation review (PR #17127): backtick parity cascade in escapeMdxAngleBrackets and header newline stripping in extractHeaderStructure regex. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>
Translation Quality ReviewPR: #17127 Quality Scores
Overall: 8.4/10 Issues Found & Fixed
Sanitizer ImprovementsTwo sanitizer bugs were discovered and fixed during this review:
Both fixes include regression tests (7 new tests, 123 total passing). SummaryRussian translations are in good shape after sanitization and review fixes. The primary issues were brand name translations and a handful of technical term errors -- all corrected. Two sanitizer bugs were found and fixed with test coverage. The remaining warnings (code fence content drift, block count mismatches) are Crowdin translation artifacts that don't affect build or readability. Reviewed by Claude Code (Opus 4.6) |
Add fixAsymmetricBackticks to sanitizer pipeline. Crowdin doubles closing backtick on inline code spans (`content`` -> `content`), exposing angle brackets as raw HTML and breaking MDX compilation. Fixes build error on ru/developers/tutorials/ erc-721-vyper-annotated-code at line 246. 6 new tests, 129 total passing. Zero false positives across es, tr, ja cross-language spot check. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Co-Authored-By: wackerow <54227730+wackerow@users.noreply.github.com>

Description
This PR contains automated gemini-2.5-pro translations from Crowdin.
🔗 View workflow run
Languages translated
ru
JSON changes (
src/intl/{locale}/)Markdown changes (
public/content/translations/{locale}/)