Conversation
Hardcoded English steer/queue/interrupt bubbles ignored display.language. Route them through t() and add catalog keys for every locale.
Author
|
Closing: too thin. A one-family i18n PR for busy-ack only, while sibling user-facing English strings stay hardcoded, reads as spam. Will come back with the remaining static surface in one PR if we reopen. |
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
display.languagealready translates approval prompts and a handful of gateway slash replies. Busy-input acknowledgements (⏩ Steered into current run…, queue, interrupt, redirect) were still hardcoded English ingateway/run.py, so ako(or any non-English) install kept posting English bubbles.This wires those strings through
t()and addsgateway.busy_ack.*keys to every locale catalog.What changed
gateway/run.py— steer / redirect / queue / subagent-queue / compression-queue / interrupt copy, plus the optional status fragments (N min elapsed,iteration a/b,running: tool)locales/*.yaml— catalog parity for allSUPPORTED_LANGUAGESagent/i18n.pyscope noteHERMES_LANGUAGE=koEnglish wording is unchanged when
display.languageisen.Related
Complementary to #26024 / #26150 (
display.busy_ack_templates). Templates would let an install rewrite the copy; this is the official i18n path sodisplay.language: kojust works.Test plan
./scripts/run_tests.sh tests/agent/test_i18n.py tests/gateway/test_busy_session_ack.py tests/gateway/test_subagent_protection_30170.py(54 passed)display.language: ko, message a busy Slack/Telegram session in steer mode, confirm the Korean bubbleenand confirm the existing English string