Skip to content

[Bug]: Claude account labels 'System default' and 'Claude account' are not translatable #30101

Open

Description

@smwbev

Operating system

macOS

Orca version

v1.4.229

Details

Short summary: getClaudeAccountLabel (src/renderer/src/lib/claude-account-label.ts) returns two literals without translate(): 'System default' when the account id is null, and 'Claude account' when the account is not found or has no email. The sentences around the label are in the catalog, so in any other language the sentence is translated and the account name inside it stays English.

Where the label shows up:

How to reproduce:

  1. Pick a UI language other than English.
  2. In Settings → AI Provider Accounts, switch Claude from the system default login to an added account.
  3. The toast description starts with "System default → " while the rest of it is translated.

Possible fix: wrap both returns, for example translate('accounts.claude.systemDefault', 'System default') and translate('accounts.claude.unnamedAccount', 'Claude account'). The neighbouring claude-account-switch-sessions.ts already imports translate from @/i18n/i18n. I can send the PR if you want it.

Checked on main at 6fcc183ab9.

Three earlier spots, still on main. I left these as comments on merged PRs, where they are easy to miss:

  • SeveredTerminalDaemonBanner.tsx:45: terminal.severedDaemonBanner.count has one English form, so a single terminal reads "1 running terminals" (#28021).
  • auto.components.NativeChatResumeOnRestartModal.dontAskAgainHint still says "Settings → Experimental → Chat UI", but feat(settings): move Chat UI's chat settings from Experimental to the Chat page #28050 moved that switch to Settings → Chat → Behavior (#28050).
  • WslHostsSection.tsx:122 appends status.detail as is, so a host row can show a raw reason code such as guest-unanswered (#27934).

The fourth, the ~/.ssh/config already in sync toast in SshPane.tsx, is covered by #28568.

Activity

  1. AmethystLiang commented on Oct 18, 2026

    @AmethystLiang
    Contributor

    looking into it

  2. smwbev commented on Oct 19, 2026

    @smwbev
    ContributorAuthor

    Three more strings of the same kind, in case they help while this is being looked at. Checked on main at 2b6077807a; all three are also in v1.4.230.

    • src/renderer/src/components/sidebar/use-worktree-context-menu-model.tsx:207–214: the workspace context menu builds Sleep, Sleep N Workspaces, Delete N Workspaces and Delete Selected from English literals, with the plural s glued on. Sleep is in every workspace's context menu, so it stays English in every language.
    • src/shared/execution-host-health.ts:33–51: getExecutionHostHealthLabel returns the host health labels as literals (Local, Connected, Connecting, Update needed, Re-pair needed, Disconnected, Needs attention), and sidebar-host-options.ts:211 adds Mixed. They show in the host picker and the sidebar host menu.
    • src/shared/protocol-compat.ts:61–63: describeRuntimeCompatBlock returns an English sentence ("This Orca client is too old for the selected server. Update Orca on this machine. …"). The host details in Settings, the connect toast, the host picker, HostSectionHeaderMenu and the automation target check show it as is.

    The last two live in src/shared, so the translation would go at the renderer call sites rather than in the shared module.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

os:macosIssues affecting macOS

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions