Skip to content

Desktop 0.184.0: new sessions reset custom-model default to auto (custom models missing from picker) #40

Description

@hrmesquita

Versions: Desktop 0.184.0, bundled droid CLI 0.227.0, macOS 27.0 (arm64). Worked on Desktop 0.183.2.

What happens After updating to 0.184.0, my custom models (customModels in ~/.factory/settings.json, provider anthropic, local baseUrl) show up briefly in the desktop model picker and then disappear. New sessions start on auto instead of my sessionDefaultSettings.model (a custom: id).

Expected New sessions use my custom default model, and custom models stay in the picker.

Evidence

The config is valid. droid exec --help lists all 14 custom models, and droid.list_models (includeDisabled) returns all of them with disabled: false.
The daemon log shows the desktop UI sending two settings updates within ~8 ms at session creation. The first one is correct and the second overwrites it:
UpdateSessionSettings received modelId: "custom:Claude-Opus-5-5-Claude"
UpdateSessionSettings received modelId: "auto", reasoningEffort: "none"
[Model-Router] Model transition source: "manual", previousModelId: "custom", modelId: "auto"
Earlier update attempts with the custom id fail with MetaError: No active session found for ID (handleUpdateSessionSettings).
The pre-initialized session cached in desktop localStorage (factory:pre-init-sessions-by-machine-id) is stored with modelId: "auto", so the problem comes back after every restart.
Suspected cause: The new-session defaults resolver seems to run with a model list built before the local daemon's defaults arrive. That list has only feature-flag built-ins plus cloud-account customModels, so it has none of the local ones. The first-enabled missing-model strategy then picks auto. The same session goes through a race where a correct update fails with "No active session found".

Repro

Define custom models only in local ~/.factory/settings.json and set sessionDefaultSettings.model to one of them.
Launch Desktop 0.184.0 and start a new local session.
The session model becomes auto, and the custom models disappear from the picker.

Activity

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