Skip to content

fix(desktop): expose full model titles - #48767

Open
tt-a1i wants to merge 1 commit into
NousResearch:mainfrom
tt-a1i:codex/desktop-model-title-tooltips
Open

fix(desktop): expose full model titles#48767
tt-a1i wants to merge 1 commit into
NousResearch:mainfrom
tt-a1i:codex/desktop-model-title-tooltips

Conversation

@tt-a1i

@tt-a1i tt-a1i commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • keep the composer model pill's accessible label action-oriented while using its title for the full provider/model value
  • expose StatusbarItem and StatusbarMenuItem titles on rendered controls so truncated labels remain inspectable
  • add desktop UI regression tests for model pill titles and statusbar title passthrough

Fixes #47975

Tests

  • npm run test:ui -- src/app/chat/composer/model-pill.test.tsx src/app/shell/statusbar-controls.test.tsx
  • npx eslint src/app/chat/composer/model-pill.tsx src/app/chat/composer/model-pill.test.tsx src/app/shell/statusbar-controls.tsx src/app/shell/statusbar-controls.test.tsx
  • npm run typecheck
  • git diff --check

Review

  • Subagent review found the live model pill aria-label was state-like; fixed to keep aria-label action-oriented and title value-focused.
  • Subagent review requested menu/link/nested menu item title coverage; added tests and passthrough.

@alt-glitch alt-glitch added type/bug Something isn't working comp/tui Terminal UI (ui-tui/ + tui_gateway/) P3 Low — cosmetic, nice to have labels Jun 19, 2026

@tonydwb tonydwb left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review Summary

Verdict: Approved

Fix to expose full model titles in the desktop UI. 181 additions across 4 files, addressing a UX clarity issue where truncated model names could cause confusion. Well-scoped change. No security or quality concerns.


Reviewed by Hermes Agent

@alt-glitch alt-glitch added comp/desktop Electron desktop app (apps/desktop/*) and removed comp/tui Terminal UI (ui-tui/ + tui_gateway/) labels Jun 26, 2026

@teknium1 teknium1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the focused regression coverage. The underlying fallback and submenu gaps are still present, but current main has moved to the themed Tip convention.

Problems

  • Current main already wraps top-level statusbar controls in Tip (apps/desktop/src/app/shell/statusbar-controls.tsx:119-128,177-218) after da73223f4; the PR's native title assertions no longer describe that UI contract.
  • The actionable remaining model gap is the fallback at apps/desktop/src/app/chat/composer/model-pill.tsx:76-89, whose tooltip still says only “Open model picker” rather than the available full provider/model value.
  • Generated submenu controls still discard menuItem.title at apps/desktop/src/app/shell/statusbar-controls.tsx:142-170, despite current producers setting it in use-statusbar-items.tsx:321-338.

Suggested changes

  • Adapt the model fallback and submenu passthrough onto current main, preserving Tip for top-level controls and updating tests for tooltip behavior rather than native title attributes.

Automated hermes-sweeper review.

disabled={disabled}
onClick={() => setModelPickerOpen(true)}
title={copy.openModelPicker}
title={title}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Current main uses the themed Tip component rather than native title attributes. Please adapt this fallback onto the current Tip wrapper while preserving the action-oriented aria-label; the fallback Tip is the remaining path that still omits the full model value.

@@ -125,13 +127,15 @@ function StatusbarItemView({ item, navigate }: { item: StatusbarItem; navigate:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Top-level statusbar controls are now covered by Tip on current main. Keep the useful menu-child passthrough, but update the test expectations so they validate the current themed-tooltip contract for the existing top-level branches.

@teknium1 teknium1 added the sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users label Jul 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/desktop Electron desktop app (apps/desktop/*) P3 Low — cosmetic, nice to have sweeper:blast-contained Sweeper blast radius: contained — one narrow path / opt-in / few users type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Desktop][Windows] Long model names truncated with ellipsis in model status/picker bar

4 participants