You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .claude/commands/review-translations.md
+28-38Lines changed: 28 additions & 38 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -224,38 +224,39 @@ Read `.claude/translation-review/known-patterns.md` — this contains all issue
224
224
225
225
### Translation Glossary (AUTHORITATIVE SOURCE)
226
226
227
-
The EthGlossary API (`https://ethereum.org/api/glossary`) is the **authoritative source**forall Ethereum term translations across the entire pipeline. Community-voted glossary terms are not suggestions — they are the required translations.
227
+
**ETHGlossary**is the authoritative sourcefor Ethereum term translations. Deviations are critical issues, not warnings.
228
228
229
-
**Fetch live from the API first, fall back to cache only if the API is unreachable:**
229
+
Resolve the base URL from the pipeline config (env var wins; default lives in`src/scripts/intl-pipeline/config.ts` under `GLOSSARY_API_URL`):
Filter entries where language_code matches the target locale.
251
-
Sort by total_votes descending.
252
-
Include ALL terms for the language (not just top 50) — these are authoritative.
243
+
244
+
**Preferred — per-file filter** (`POST /filter`): returns only the glossary terms that appear in the English source, with translations sorted by occurrence. Avoids pulling hundreds of irrelevant terms into agent context.
**The glossary is used in every subsequent phase:**
256
-
- **Phase 3 (Review):** Agents treat glossary deviations as CRITICAL, not warnings
257
-
- **Phase 5 (Auto-Fix):** Glossary deviations are auto-corrected to the top-voted translation
258
-
- **Phase 8 (Knowledge Base):** New deviations discovered are logged for future reviews
259
+
Used in Phase 3 (review — deviations are CRITICAL), Phase 5 (auto-fix corrects to ETHGlossary translation), Phase 8 (new deviations logged).
259
260
260
261
### Per-Language Prior Findings
261
262
Check if`.claude/translation-review/per-language/{LANGUAGE_CODE}.md` exists. If so, read it and inject relevant prior findings into the agent prompt.
@@ -331,22 +332,11 @@ The community has voted on these translations for key Ethereum terms. Use these
331
332
- Review the entire current content of each file
332
333
- Compare against English source files from the worktree
333
334
334
-
## MANDATORY: Fetch Ethereum Glossary FIRST
335
-
336
-
**Before reviewing ANY translation, you MUST fetch the official Ethereum glossary for the language(s) being reviewed.** This is non-negotiable. The glossary contains community-approved translations for key terms.
337
-
338
-
```bash
339
-
# Fetch full glossary (all languages):
340
-
curl -s "https://ethereum.org/api/glossary/"
341
-
342
-
# Fetch glossary for a specific language (optional lang param, one at a time):
## MANDATORY: Use ETHGlossary for the target language
346
336
347
-
The glossary returns approved translations per language. Use these as the authority forhow technical terms SHOULD be translated. Flag any deviations as warnings with "Glossary mismatch"inthe issue column.
337
+
Use the ETHGlossary terms fetched in Phase 2 as the authority for technical term translations. Report deviations as **critical** issues (not warnings), with the current (wrong) translation and the expected (ETHGlossary) translation so Phase 5 can auto-fix them.
348
338
349
-
**If you skip the glossary, the entire review is invalid.**
339
+
**If you skip ETHGlossary, the entire review is invalid.**
350
340
351
341
## Review Checklist
352
342
@@ -733,6 +723,6 @@ ETH, Wei, Gwei, Gas
733
723
- Use `--model=sonnet` or `--model=haiku`for faster reviews
- If an agent exceeds context limits with Opus, fall back to Sonnet with Grep-based file inspection
736
-
- **EthGlossary API**(`https://ethereum.org/api/glossary`) is fetched live in Phase 2 and is the authoritative sourcefor term translations across the entire pipeline — review (Phase 3), auto-fix (Phase 5), and knowledge base (Phase 8). The local cache at `~/.claude/translation-review/fetch-translation-glossary.json` is a fallback only.
726
+
- **ETHGlossary** is the authoritative sourcefor term translations across review (Phase 3), auto-fix (Phase 5), and knowledge base (Phase 8). See Phase 2 for usage;`llms.txt` is the canonical endpoint reference.
737
727
- Knowledge base at `.claude/translation-review/` accumulates findings across reviews (committed to repo)
738
728
- `gh` CLI commands require `dangerouslyDisableSandbox: true` due to TLS certificate verification issues in sandbox mode
-JSON UI strings in `src/intl/[locale]/`; translated markdown content in `public/content/translations/[locale]/`
124
+
-Non-English markdown is propagated by the **intl-pipeline** (`src/scripts/intl-pipeline/`, entry `main.ts`). **Do not hand-propagate English changes into non-English files** -- let the pipeline run, or trigger `intl-pipeline.yml` with `stamp_only: true` if manifests must catch up urgently (e.g. unblocking a build). Hand-fixing a translation error is fine when the English side hasn't moved, since the manifest mapping stays valid. Spec: `tests/specs/PIPELINE-SPEC.md`.
125
+
-Glossary: base URL from `GLOSSARY_API_URL` env var; default in `src/scripts/intl-pipeline/config.ts`. ETHGlossary is authoritative for Ethereum term translations.
0 commit comments