Skip to content

feat(generation): first-class output-language support for generated docs#756

Merged
RaghavChamadiya merged 1 commit into
mainfrom
feat/wiki-output-language
Jul 10, 2026
Merged

feat(generation): first-class output-language support for generated docs#756
RaghavChamadiya merged 1 commit into
mainfrom
feat/wiki-output-language

Conversation

@RaghavChamadiya

Copy link
Copy Markdown
Member

What

Promotes the config-only wiki output-language setting (#99) to a first-class option.

  • repowise init --language <code>: choose from 15 languages (en, ru, es, fr, de, zh, ja, ko, it, pt, nl, pl, tr, ar, hi). Prose is generated in that language; code, file paths, and symbol names stay untranslated.
  • Advanced interactive init now asks for the output language (English default) and shows it in the config summary.
  • The choice persists to .repowise/config.yaml (single-repo and workspace init), so repowise update regenerates changed pages in the same language.
  • Paths that silently defaulted to English now honor the configured language: workspace generate, the server regenerate job, and the pipeline orchestrator fallback config. PageGenerator also falls back to config.language when the argument is omitted, so future callers cannot repeat that bug.
  • The language map moved to a dependency-free leaf module (generation/languages.py) so the CLI validates the flag at startup without importing the page-generator stack.

Docs

README (one line in the Docs layer row), CLI reference, user guide, CONFIG.md, changelog. Changing the language later does not retranslate existing pages; re-run init --force --language <code>.

Testing

  • All 2173 unit tests pass; added a test that PageGenerator picks the language up from GenerationConfig when the arg is omitted, and updated the advanced-config keys test.
  • Verified end-to-end: indexed a real repo with --language hi (openai / gpt-5.4-nano); generated pages come out in Hindi with code and symbol names untranslated, and language: hi lands in config.yaml.

Promote the config-only language setting (#99) to a first-class option:

- `repowise init --language <code>` (15 languages), validated via the new
  dependency-free `generation.languages` leaf module
- advanced interactive init asks for the output language (English default)
  and shows it in the config summary
- the choice persists to `.repowise/config.yaml` (single-repo and
  workspace init) so `update` regenerates changed pages in the same
  language
- honor the configured language in paths that silently defaulted to
  English: workspace `generate`, the server regenerate job, and the
  pipeline orchestrator fallback config; `PageGenerator` now falls back
  to `config.language` when the arg is omitted
- docs: README one-liner, CLI reference, user guide, CONFIG.md, changelog
@repowise-bot

repowise-bot Bot commented Jul 10, 2026

Copy link
Copy Markdown

✅ Health: 7.7 (unchanged)

📋 At a glance
5 hotspots touched · 5 new findings introduced · 5 co-change pairs left out · 5 files with recent fix history. Scoped to packages.

⚠️ Change risk: moderate (riskier than 35% of this repo's commits · raw 8.1/10)
This change's risk is driven by:

  • more lines added than baseline
  • more scattered than baseline

🩹 Review priority (files here with the most recent bug-fix history — defects cluster, so review these first)

🔎 More signals (2)

🔥 Hotspots touched (5)

  • .../init_cmd/command.py — 15 commits/90d, 1 dependents · primary owner: Raghav Chamadiya (92%)
  • .../generation/__init__.py — 2 commits/90d, 13 dependents · primary owner: Raghav Chamadiya (100%)
  • .../pipeline/orchestrator.py — 33 commits/90d, 14 dependents · primary owner: Raghav Chamadiya (75%)
2 more
  • .../init_cmd/workspace.py — 9 commits/90d, 2 dependents · primary owner: Raghav Chamadiya (99%)
  • .../commands/workspace_cmd.py — 12 commits/90d, 7 dependents · primary owner: Raghav Chamadiya (98%)

🔗 Hidden coupling (2 files)

  • .../pipeline/orchestrator.py co-changes with these files (not in this PR):
    • .../pipeline/persist.py (11× — 🟡 notable)
    • .../persistence/models.py (9× — 🟢 routine)
    • .../persistence/test_models.py (7× — 🟢 routine)
    • .../generation/models.py (6× — 🟢 routine)
  • .../init_cmd/command.py co-changes with docs/CLI_REFERENCE.md (8× — 🟢 routine) — not in this PR.

📊 Full report · ⭐ Star Repowise · 📥 Install bot · Last updated 2026-07-10 14:38 UTC
Silence on a single PR with [skip repowise] in the title · Per-repo toggle on repowise.dev/settings?tab=bot

@RaghavChamadiya RaghavChamadiya merged commit a020233 into main Jul 10, 2026
4 of 7 checks passed
@RaghavChamadiya RaghavChamadiya deleted the feat/wiki-output-language branch July 10, 2026 14:45
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