Skip to content

backlog: track reaction-prompt-i18n#39

Merged
vladmesh merged 1 commit into
mainfrom
chore/backlog-reaction-prompt-i18n
Jul 16, 2026
Merged

backlog: track reaction-prompt-i18n#39
vladmesh merged 1 commit into
mainfrom
chore/backlog-reaction-prompt-i18n

Conversation

@vladmesh

Copy link
Copy Markdown
Owner

Files the one finding from sprint 024's full docs review that was not already tracked.

The opportunity-attack reaction modal is entirely English under DND_LANGUAGE=ru ("Melee attack against Wolf"). Verified end to end:

  • round.py:446 builds ReactionOption.description as an f-string outside gettext (round.py imports no i18n at all)
  • reaction_to_dict (transport_payloads.py:109) passes option.description through raw, unlike the adjacent line 52 which wraps _(definition.description)
  • ReactionPrompt.tsx:32 renders it as-is

Wrapping _() at the transport layer will not work: the target name is already interpolated, so the msgid won't match. The fix is either to build the string through _() with a placeholder at construction time, or to pass a template plus params and assemble on the client by i18n key (the approach sprint 024 used for item props).

Filed as should rather than could like its sibling movement-log-i18n: this isn't a log line, it's the entire text of an interactive modal that blocks the player's turn.

Found by /update-docs during sprint 024 closure, not by E2E — no scenario covers this modal's language. Docs-only change.

The opportunity-attack reaction modal is entirely English under
DND_LANGUAGE=ru. round.py:446 builds ReactionOption.description as an
f-string outside gettext, reaction_to_dict passes it through raw (unlike
the adjacent action description, which is wrapped in _()), and
ReactionPrompt.tsx renders it as-is.

Found by the full docs review while closing sprint 024, not by E2E — no
scenario covers the language of this modal.
@vladmesh
vladmesh enabled auto-merge July 16, 2026 17:37
@vladmesh
vladmesh merged commit ea297cb into main Jul 16, 2026
4 checks passed
@vladmesh
vladmesh deleted the chore/backlog-reaction-prompt-i18n branch July 16, 2026 17:38
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.

1 participant