Skip to content

/crew and Settings → Providers name different models for the same seats #1764

Open

Description

@ZeroPoint95

What happened

2026-10-05, dev@f81638787 (dev-20261005-f816387875e5), on a fresh profile with an OpenRouter key and nothing pinned. Found in the v0.7.1 happy-path pass, under the release checklist's "/crew and setup report the same models and limits".

The limits agree everywhere: /crew, /budget, /settings → Spending and the seats row. The models do not. /crew says:

worker   auto · likely glm-5.3-flash
planner  auto · likely claude-opus-5.5
checker  auto · likely claude-opus-5.5

and those are the models do and /task actually use (per codeaf logs). But /settings → Providers, under the same seats, lists worker, checker, careful, repair, shaper, vision and designer all as ~deepseek/deepseek-v4-flash-latest. The shaper row's own description says it "follows the checker seat (/crew)", yet it names a different model from the one /crew says that seat will use.

codeaf models says the same thing as Settings (panel: none — … every call goes to ~deepseek/deepseek-v4-flash-latest), though the crew's calls go elsewhere.

Replication

Deterministic (no model). Not yet written. A tui3 test can render /crew and the Settings Providers tab over one fresh profile and compare the model each shows for the worker and checker seats.

Field. Use a fresh CODEAF_HOME with OPENROUTER_API_KEY. In codeaf chat, open /crew and read the seats. Then open /settings, press → to Providers, and read the roles · … rows. Nothing is spent.

Where

The roles rows on the Settings Providers tab in internal/tui3. The /crew panel's likely resolution. The models command in cmd/codeaf.

The fix

Every surface that names the model a seat or role will use resolves it the same way /crew does. Settings either shows auto · likely glm-5.3-flash for an auto seat or does not name a model for it. codeaf models says the crew's seats are picked per task rather than that every call goes to the chat model.

Acceptance

  • e2e: on a fresh profile, /crew and Settings → Providers name the same model for the worker and checker seats.
  • e2e: codeaf models on that profile does not claim every call goes to the chat model.

Activity

  1. added
    bugSomething the code does that it should not
    area:chatThe v3 surface a person sits in front of (internal/tui3)
    sev:papercutA wording, a hint, a small wrongness that costs a moment
    on Oct 5, 2026
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

    area:chatThe v3 surface a person sits in front of (internal/tui3)bugSomething the code does that it should notsev:papercutA wording, a hint, a small wrongness that costs a moment

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions