Multi-language support for the AI-powered translation pipeline
_This issue, including all initial posts in discussion threads and questions below, was generated exclusively with the help of GitLab Duo. See _[_how this issue was created_](#note_3136806103)_._
## Background
The [AI-powered translation pipeline](https://gitlab.com/gitlab-com/localization/tech-docs-ai-powered-translation) currently translates GitLab tech docs from English to Japanese. The entire stack — `script.py`, prompts, style guide, and automated post-processing fixes — was built for this single language pair.
We want to add support for new target languages (Korean and French are the first candidates). [!91](https://gitlab.com/gitlab-com/localization/tech-docs-ai-powered-translation/-/merge_requests/91) started this work by adding Korean prompt files and a style guide, but `script.py` itself has not been updated yet.
This issue is a place to collect open questions and planning threads for the work ahead. Each discussion thread below covers one area. The goal is to figure out what needs to change, what the right approach is, and what order to do things in — not to prescribe solutions. If something isn't covered by the existing threads, please add a new one.
### Next steps
Once the discussion threads below have enough input to move forward, we'll need to turn the answers into a scoped plan with time estimates for each work area. This includes the `script.py` refactoring, per-language content (prompts, style guides, post-processing rules), test coverage, QA checker updates, and CI pipeline configuration.
### What's Japanese-specific today
For reference, here's a rough inventory of what's currently hardcoded for Japanese in `script.py`:
- Character detection patterns (`JAPANESE_CHARACTER_PATTERN`, spacing regexes)
- The UI labels PO file URL (`locale/ja/gitlab.po`)
- The glossary language pair (`"en-us", "ja-jp"`)
- All of `fix_typographical_issues()` (katakana standardization, CJK spacing removal, full-width character replacements)
- Several standalone functions: `remove_katakana_middle_dots()`, `replace_standalone_japanese_tags_with_tag_names()`, `JAPANESE_TRANSLATION_IN_PARENTHESES_PATTERN`
- The prompt and style guide file paths (hardcoded to `translate-prompt.txt`, `post-edit-prompt.txt`, `style-guide.md`)
### Related work
- [!91 - Draft: Add multi language support + Korean](https://gitlab.com/gitlab-com/localization/tech-docs-ai-powered-translation/-/merge_requests/91) — adds Korean prompts, style guide, and `TARGET_LANGUAGE` env var, but does not modify `script.py`
- [Tests for translated documentation](https://docs.gitlab.com/development/documentation/testing/#tests-for-translated-documentation) — CI pipeline jobs that validate translated Markdown with Vale and markdownlint before merge
- [Tech Docs MR QA Checker](https://gitlab.com/gitlab-com/localization/tech-docs-mr-qa-checker) — post-translation formatting checker, also currently Japanese-specific
- [gitlab-documentation-styles](https://gitlab.com/gitlab-org/technical-writing/gitlab-documentation-styles) — shared Vale/markdownlint rules used in CI pipelines for translated docs
issue