Skip to content

fix(multi-agent): drop best from the role model values and the frontier default #7990

Closed

Description

@kyle-sexton

Refs: #6916

Agent Brief

Type: Bug
Summary: best stops being a role model value, a frontier alias and an accepted --session-model, per the owner decision on #6916.

Current behavior:
The multi-agent config reference lists best as a role model alias and the frontier default is fable,best; the bundled defaults repeat both; resolve-roles.sh's ALIASES accepts best, which also validates --session-model; the setup skill and the drift-audit workflow's model list name it. The sub-agents docs list only sonnet, opus, haiku, fable and inherit as subagent aliases (https://code.claude.com/docs/en/sub-agents.md, choose a model).

Desired behavior:
best is accepted nowhere: a role model of best and --session-model best are rejected with the resolver's usual unknown-alias error, so a caller omits the session model and the session counts as frontier (an unknown session already does). The frontier default is fable. The config reference and route skill point at sub-agents#choose-a-model and model-config#model-aliases, with as-of dates and recheck triggers, wherever they still restate the alias list or the subagent model fallback; existing pointers stay.

Key interfaces:

  • resolve-roles.sh ALIASES and its --session-model validation.
  • The frontier default and roles.<role>.model values in the bundled defaults and config reference.
  • The drift-audit workflow's MODELS list.

Acceptance criteria:

  • git grep -n -w best -- plugins/multi-agent/reference plugins/multi-agent/scripts/resolve-roles.sh plugins/multi-agent/workflows plugins/multi-agent/skills/setup returns no model-alias use.
  • scripts/run-test-file.sh plugins/multi-agent/scripts/resolve-roles.test.sh passes, including a case where --session-model best is rejected and a case where an omitted session model fans out off frontier.
  • check-skill.sh passes for each edited skill.
  • A multi-agent changelog fragment is added and scripts/check-changelog-fragments.sh passes.

Out of scope:

  • Eval sample text that quotes a past best session.
  • The session-flow orchestrate pointers and the full repo-mode sweep (sibling children).

This was generated by AI during backlog shaping. Split from #6916; the owner approved filing it in an attended backlog-shaping session on 2026-10-18.

Activity

  1. added
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.
    on Oct 18, 2026
  2. added theissue type on Oct 18, 2026
  3. added
    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.
    and removed
    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.
    on Oct 18, 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

    agent-readyFully specified and briefed; eligible for autonomous pickup from the frontier.work-class: scopedA briefed fix or small feature; blast radius bounded by the brief, tests exist.

    Type

    Fields

    No fields configured for Bug.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions