Skip to content

refactor(model picker): adopt upstream environment favorites, drop the starred group #50

Open

Description

@nohat

Decided 2026-10-14 (docs/fork/README.md, Decisions): model preferences follow upstream.

Upstream moved favorites and hidden models to environment settings (pingdotgg#16816, f845895271) and added per-project providers (8ac6846a0b). On the bf8ffe81a6 sync these caused 9 of 15 conflicted files (mobile ThreadSettingsSheet, ThreadSettingsRows.shared, thread-settings-sheet-state.test, modelOptions, mobile-preferences, ThreadComposer; server OrchestratorMcpService; web ModelPickerContent; contracts settings.ts).

Work:

  • Remove the cross-provider starred group (collectStarredModels, starredHeader/starredModel catalog items) in favor of upstream's favorites tab and @favorites filter.
  • Keep commit-on-dismiss (resolveDismissAction, resolveModelPickerCommit) and its guard.
  • Move modelCostDisplay out of ClientSettingsSchema/ClientSettingsPatch in packages/contracts/src/settings.ts into a fork-owned client key, so the shared contract stops conflicting. Mobile keeps its device-local preference. State the effect on existing stored settings (old key ignored or migrated).
  • Update docs/fork/patches.tsv guards (model-picker-selection, model-cost-display, mobile-model-pricing).

Done: the fork delta in these files shrinks; guards pass; iPad and web picker show prices and favorites from upstream's store.

Supersedes the starred-group half of #9.

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions