feat(models): prompt for reasoning level on DEFAULT assignments for all providers - #4387
Closed
jason931225 wants to merge 1 commit into
Closed
feat(models): prompt for reasoning level on DEFAULT assignments for all providers#4387jason931225 wants to merge 1 commit into
jason931225 wants to merge 1 commit into
Conversation
…ll providers The model selector only opened the reasoning menu for the DEFAULT target when the model's provider was openai/openai-codex. Assigning an Anthropic reasoning model (e.g. claude-fable-5) to DEFAULT committed immediately with a bare selector, so there was no way to pin an explicit effort from the picker: the assignment silently inherited defaultThinkingLevel and re-picking stripped any hand-configured :level suffix from modelRoles.default. requiresExplicitThinkingChoice now returns true for the DEFAULT target whenever the model is reasoning-capable, matching the existing role-agent behavior. The selector-controller already composes the :level suffix and applies session.setThinkingLevel for default assignments, and session startup already honors an explicit suffix on the remembered default (explicitThinkingLevel), so the choice persists across restarts with no further changes. Non-reasoning models and temporary (role-less) model switches keep their current no-prompt behavior.
Owner
|
Superseded by dev-targeted PR #4390, which preserves @jason931225 credit and cherry-picks contributor commit |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The model selector's reasoning menu only opened for the DEFAULT target when the model's provider was
openai/openai-codex(requiresExplicitThinkingChoiceinmodel-selector.ts). Picking an Anthropic reasoning model (e.g.claude-fable-5) for DEFAULT committed immediately with a bare selector:defaultThinkingLeveland rendered as(inherit).:xhighsuffix frommodelRoles.default, so a carefully set default effort silently reverted.Role-agent targets (executor/architect/planner/critic) already prompt for every reasoning model; DEFAULT was the odd one out.
Change
requiresExplicitThinkingChoicenow returnstruefor the DEFAULT target whenever the model is reasoning-capable, regardless of provider. Everything downstream already works unchanged::levelsuffix intomodelRoles.defaultand appliessession.setThinkingLevelfor default assignments,explicitThinkingLevel), so the pinned effort survives restarts.Non-reasoning models and temporary (role-less) model switches keep their current no-prompt behavior.
Tests
model-selector-role-badge-thinking.test.ts:xhighemitsthinkingLevel: xhighDEFAULT (low)badge) instead of expecting an instant commitmodel-selector-batch-thinking.test.ts: comment updated — Anthropic reasoning models now require an explicit choice on DEFAULT toobun teston the touched suites: 108 pass / 0 fail (role-badge-thinking, batch-thinking, action-menu-role-binding, controller-batch, profiles, profiles-redteam, agent-session-role-thinking, role-thinking-helper-propagation, status-line-thinking). Biome andtsc --noEmitclean on touched files.