Skip to content

[Bug]: Model picker assigns duplicate keyboard shortcuts #4432

Description

@colonelpanic8

Description

The model picker can display the same keyboard shortcut for two different models. In the observed list, both GPT-5.6-Sol and GPT-5.6-Luna are labeled Ctrl+2, while GPT-5.6-Terra is labeled Ctrl+3.

Steps to reproduce

  1. Open the model picker.
  2. Inspect the shortcut labels beside GPT-5.6-Sol and GPT-5.6-Luna.

Actual behavior

Both models are assigned/displayed as Ctrl+2, so the shortcut mapping is ambiguous and at least one model cannot be selected by the shortcut shown for it.

Expected behavior

Each shortcut-enabled model should receive a unique shortcut that corresponds to its displayed position/order.

Additional context

Observed in the collapsed mobile/narrow layout, though the issue appears to be shortcut assignment rather than menu clipping.

Activity

  1. colonelpanic8 commented on Jul 27, 2026

    @colonelpanic8
    ContributorAuthor

    Reproduced the stale shortcut-label behavior and verified the fix in #4433 at 2b107b9f8a50dd7999e94a55f61509bdc7a1ed57.

    Using the same isolated web environment at a 390×844 viewport:

    • Before (unfixed checkout): filtering the live model list to opus leaves cached rows with their old full-list shortcuts (Ctrl+2 through Ctrl+6) instead of reassigning them from the filtered positions.
    • After (PR head): the same flow refreshes every row to unique positional shortcuts Ctrl+1 through Ctrl+5.

    Before — stale cached labels

    Unfixed model picker showing stale shortcut labels after filtering

    After — fixed positional labels

    PR 4433 model picker showing refreshed unique positional shortcut labels

    Focused regression test also passes:

    vp test run apps/web/src/components/chat/ModelPickerContent.test.tsx
    Test Files  1 passed (1)
    Tests       1 passed (1)
    
  2. t3-code commented on Aug 10, 2026

    @t3-code
    Contributor

    Closing as fixed by #5400: model picker shortcut labels no longer duplicate.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions