[PR #2985] [MERGED] docs(i18n): add Greek translations #5538

Closed
opened 2026-10-31 01:07:25 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/2985
Author: @pirrozani
Created: 10/13/2026
Status: ✅ Merged
Merged: 10/13/2026
Merged by: @morluto

Base: main ← Head: docs/greek-readme


📝 Commits (2)

  • db192be docs(i18n): add Greek translations
  • 975ea9b docs(website): improve Greek homepage wording

📊 Changes

61 files changed (+46094 additions, -33266 deletions)

View changed files

📝 README.md (+1 -0)
📝 docs/readme/README_ar.md (+1 -0)
📝 docs/readme/README_de.md (+1 -0)
➕ docs/readme/README_el.md (+302 -0)
📝 docs/readme/README_es.md (+1 -0)
📝 docs/readme/README_fa.md (+1 -0)
📝 docs/readme/README_fr.md (+1 -0)
📝 docs/readme/README_id.md (+1 -0)
📝 docs/readme/README_it.md (+1 -0)
📝 docs/readme/README_ja.md (+1 -0)
📝 docs/readme/README_ko.md (+1 -0)
📝 docs/readme/README_pl.md (+1 -0)
📝 docs/readme/README_pt-BR.md (+1 -0)
📝 docs/readme/README_ru.md (+1 -0)
📝 docs/readme/README_th.md (+1 -0)
📝 docs/readme/README_tr.md (+1 -0)
📝 docs/readme/README_uk.md (+1 -0)
📝 docs/readme/README_vi.md (+1 -0)
📝 docs/readme/README_zh-TW.md (+1 -0)
📝 docs/readme/README_zh.md (+1 -0)

...and 41 more files

📄 Description

Summary

Add a complete Greek README, make it discoverable from every README edition,
and begin the Greek website translation.

Fixes #2984.

Problem and expected behavior

REA's existing 18 translated README editions do not include Greek. Greek-speaking readers should have the same setup instructions, analysis coverage, limitations, troubleshooting, and licensing guidance as readers of the current English README.

Change and scope

  • Translate the current English README into docs/readme/README_el.md.
  • Link to Greek from the English README and all existing translated READMEs.
  • Register el in the website language inventory and add a gettext catalog with 206 translated messages. Incomplete Greek pages keep the existing labeled, nonindexable English fallback.
  • Regenerate shared website selectors and gettext source locations. Confirm that the 18 existing catalogs retain all translated text, comments, flags, metadata, and entry order.
  • Replace the onboarding test's fixed edition count with equality against discovered README editions, and assert Greek coverage.

This is within the documentation contribution scope. No new provider or runtime capability requires a maintainer scope decision.

Contract and boundary impact

  • Semantic owner and earliest changed stage: English README remains canonical; Greek is an authored translation. Website inventory remains aligned with README editions.
  • Contribution scope fit and linked maintainer decision: documentation-only; advance decision not applicable.
  • CLI and MCP/tool-catalog contract: unchanged.
  • Provider, bridge, target-format, or platform compatibility: unchanged.
  • Evidence, artifact, provenance, or reconstruction contract: unchanged; translated statements preserve the English distinctions and limitations.
  • Target selection, authority, upstream behavior, and cleanup details: not applicable.
  • Generated metadata, package, or installation impact: shared website HTML and gettext source locations refreshed; no package or release metadata changes. Ignored build artifacts are not included.

Expected effects:

  • Documentation or usability only; no target interaction.

Evidence and regression coverage

  • Tests added or updated: existing onboarding consistency test now verifies discovered README editions and includes Greek.
  • Base reproduction or other evidence: source-derived absence of Greek in the original README editions/inventory; existing count assertion would reject the additional edition.
  • User-visible CLI/MCP output: not applicable.
  • Remaining proof gaps: full website verification and manual browser/layout review remain pending. The requester reviewed and approved the Greek README.

Validation performed

  • npm run docs:check — passed, including five onboarding tests.
  • npm run test:local -- tests/conformance/readmeConsistency.test.ts — all five tests passed.
  • npm run check:fast — typecheck and lint passed.
  • node scripts/check-doc-facts.mjs — passed.
  • python scripts/website.py translations check --language el and translations status --language el — passed; 206/1594 website messages translated and 1388 pending.
  • python scripts/website.py check — blocked during asset preparation: CairoSVG is unavailable; documented native Cairo prerequisites have not been established. The translation builder reported 18 Greek English-fallback pages marked noindex before asset preparation failed.
  • python scripts/verify-website.py and python scripts/test-website.py — failed because the completed website/_site build and generated assets are unavailable; these are not passing verification claims.
  • Local source assertions — all nine Greek internal links and 71 local references resolve; heading counts, FAQ count, analysis-table coverage, and shell examples match English.
  • Existing-catalog comparison against Git HEAD — all 18 catalogs preserve translations, comments, flags, metadata, and entry order; source references alone changed.
  • Targeted formatter check — Greek README and changed metadata/test sources formatted. The full formatter still reports pre-existing formatting failures in the Turkish README and scripts/lib/clean-linux-hopper-runtime.mjs, plus an unrelated unstaged accessibility edit in website/public/index.html; none of those unrelated edits are included in this branch commit.

Python checks used polib 1.2.0 installed in an isolated temporary directory, not the ambient Python installation. Node checks ran on the available Node.js 24.15.0, not the pinned development version 24.18.0; rerun on the pinned toolchain before final PR readiness. No unrelated toolchain software was upgraded.

Compatibility, safety, and release

  • Breaking changes or migration steps: none.
  • Real Hopper/Ghidra or OS coverage: not applicable; no provider behavior changes. The requester reviewed the local Greek content; automated website generation remains blocked by Cairo.
  • Package or release metadata impact: none.
  • Security, privacy, process, or containment review: commands, technical identifiers, target-execution caveats, data-policy caveats, and licensing restrictions preserved. No target execution added.

Before merge

  • This PR addresses a concrete problem or an agreed enhancement.
  • Material scope and authority questions are resolved, and any required maintainer scope decision covers the final diff.
  • The PR has one focused outcome and the title follows type(scope): outcome.
  • Related issue is linked, or the reason for not linking one is stated above.
  • Tests cover changed observable behavior and meaningful failure paths.
  • Owning docs, contracts, and generated metadata are updated where needed.
  • User-visible CLI/MCP changes include representative output. (Not applicable: documentation only.)
  • I checked the final diff for secrets, unrelated cleanup, and unsupported claims.

The PR is intentionally opened as a draft because the complete website check could not run without CairoSVG/native Cairo.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/2985 **Author:** [@pirrozani](https://github.com/pirrozani) **Created:** 10/13/2026 **Status:** ✅ Merged **Merged:** 10/13/2026 **Merged by:** [@morluto](https://github.com/morluto) **Base:** `main` ← **Head:** `docs/greek-readme` --- ### 📝 Commits (2) - [`db192be`](https://github.com/morluto/rea/commit/db192be429563db7dbcb08542c4ed7c9f146af92) docs(i18n): add Greek translations - [`975ea9b`](https://github.com/morluto/rea/commit/975ea9bc7b10ad79552752bee606c504311d2367) docs(website): improve Greek homepage wording ### 📊 Changes **61 files changed** (+46094 additions, -33266 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+1 -0) 📝 `docs/readme/README_ar.md` (+1 -0) 📝 `docs/readme/README_de.md` (+1 -0) ➕ `docs/readme/README_el.md` (+302 -0) 📝 `docs/readme/README_es.md` (+1 -0) 📝 `docs/readme/README_fa.md` (+1 -0) 📝 `docs/readme/README_fr.md` (+1 -0) 📝 `docs/readme/README_id.md` (+1 -0) 📝 `docs/readme/README_it.md` (+1 -0) 📝 `docs/readme/README_ja.md` (+1 -0) 📝 `docs/readme/README_ko.md` (+1 -0) 📝 `docs/readme/README_pl.md` (+1 -0) 📝 `docs/readme/README_pt-BR.md` (+1 -0) 📝 `docs/readme/README_ru.md` (+1 -0) 📝 `docs/readme/README_th.md` (+1 -0) 📝 `docs/readme/README_tr.md` (+1 -0) 📝 `docs/readme/README_uk.md` (+1 -0) 📝 `docs/readme/README_vi.md` (+1 -0) 📝 `docs/readme/README_zh-TW.md` (+1 -0) 📝 `docs/readme/README_zh.md` (+1 -0) _...and 41 more files_ </details> ### 📄 Description ## Summary Add a complete Greek README, make it discoverable from every README edition, and begin the Greek website translation. Fixes #2984. ## Problem and expected behavior REA's existing 18 translated README editions do not include Greek. Greek-speaking readers should have the same setup instructions, analysis coverage, limitations, troubleshooting, and licensing guidance as readers of the current English README. ## Change and scope - Translate the current English README into `docs/readme/README_el.md`. - Link to Greek from the English README and all existing translated READMEs. - Register `el` in the website language inventory and add a gettext catalog with 206 translated messages. Incomplete Greek pages keep the existing labeled, nonindexable English fallback. - Regenerate shared website selectors and gettext source locations. Confirm that the 18 existing catalogs retain all translated text, comments, flags, metadata, and entry order. - Replace the onboarding test's fixed edition count with equality against discovered README editions, and assert Greek coverage. This is within the documentation contribution scope. No new provider or runtime capability requires a maintainer scope decision. ## Contract and boundary impact - Semantic owner and earliest changed stage: English README remains canonical; Greek is an authored translation. Website inventory remains aligned with README editions. - Contribution scope fit and linked maintainer decision: documentation-only; advance decision not applicable. - CLI and MCP/tool-catalog contract: unchanged. - Provider, bridge, target-format, or platform compatibility: unchanged. - Evidence, artifact, provenance, or reconstruction contract: unchanged; translated statements preserve the English distinctions and limitations. - Target selection, authority, upstream behavior, and cleanup details: not applicable. - Generated metadata, package, or installation impact: shared website HTML and gettext source locations refreshed; no package or release metadata changes. Ignored build artifacts are not included. Expected effects: - [x] Documentation or usability only; no target interaction. ## Evidence and regression coverage - Tests added or updated: existing onboarding consistency test now verifies discovered README editions and includes Greek. - Base reproduction or other evidence: source-derived absence of Greek in the original README editions/inventory; existing count assertion would reject the additional edition. - User-visible CLI/MCP output: not applicable. - Remaining proof gaps: full website verification and manual browser/layout review remain pending. The requester reviewed and approved the Greek README. ## Validation performed - `npm run docs:check` — passed, including five onboarding tests. - `npm run test:local -- tests/conformance/readmeConsistency.test.ts` — all five tests passed. - `npm run check:fast` — typecheck and lint passed. - `node scripts/check-doc-facts.mjs` — passed. - `python scripts/website.py translations check --language el` and `translations status --language el` — passed; 206/1594 website messages translated and 1388 pending. - `python scripts/website.py check` — blocked during asset preparation: CairoSVG is unavailable; documented native Cairo prerequisites have not been established. The translation builder reported 18 Greek English-fallback pages marked noindex before asset preparation failed. - `python scripts/verify-website.py` and `python scripts/test-website.py` — failed because the completed `website/_site` build and generated assets are unavailable; these are not passing verification claims. - Local source assertions — all nine Greek internal links and 71 local references resolve; heading counts, FAQ count, analysis-table coverage, and shell examples match English. - Existing-catalog comparison against Git HEAD — all 18 catalogs preserve translations, comments, flags, metadata, and entry order; source references alone changed. - Targeted formatter check — Greek README and changed metadata/test sources formatted. The full formatter still reports pre-existing formatting failures in the Turkish README and `scripts/lib/clean-linux-hopper-runtime.mjs`, plus an unrelated unstaged accessibility edit in `website/public/index.html`; none of those unrelated edits are included in this branch commit. Python checks used polib 1.2.0 installed in an isolated temporary directory, not the ambient Python installation. Node checks ran on the available Node.js 24.15.0, not the pinned development version 24.18.0; rerun on the pinned toolchain before final PR readiness. No unrelated toolchain software was upgraded. ## Compatibility, safety, and release - Breaking changes or migration steps: none. - Real Hopper/Ghidra or OS coverage: not applicable; no provider behavior changes. The requester reviewed the local Greek content; automated website generation remains blocked by Cairo. - Package or release metadata impact: none. - Security, privacy, process, or containment review: commands, technical identifiers, target-execution caveats, data-policy caveats, and licensing restrictions preserved. No target execution added. ## Before merge - [x] This PR addresses a concrete problem or an agreed enhancement. - [x] Material scope and authority questions are resolved, and any required maintainer scope decision covers the final diff. - [x] The PR has one focused outcome and the title follows `type(scope): outcome`. - [x] Related issue is linked, or the reason for not linking one is stated above. - [x] Tests cover changed observable behavior and meaningful failure paths. - [x] Owning docs, contracts, and generated metadata are updated where needed. - [x] User-visible CLI/MCP changes include representative output. (Not applicable: documentation only.) - [x] I checked the final diff for secrets, unrelated cleanup, and unsupported claims. The PR is intentionally opened as a draft because the complete website check could not run without CairoSVG/native Cairo. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-31 01:07:25 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#5538
No description provided.