You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(app): show reasoning support for V2 models with thinking variants - #56084
In V2, the model catalog exposes thinking options in variants, but the app's legacy provider adapter always sets capabilities.reasoning to false. The model tooltip therefore says "No reasoning" for models with High/Medium reasoning options.
The adapter now reports reasoning when a model has a non-none variant or a compatibility.reasoningField. A model with no such signal (including none-only) still reports unsupported. This only changes the UI metadata mapping; it does not modify model requests.
How did you verify your code works?
Reproduced the bug against the unmodified adapter: 3 expected failures in 5 isolated Bun tests.
Added a regression test in utils.test.ts; git diff --check passes.
Full app suite and typecheck were not run because this sparse checkout lacks the complete monorepo dependencies. Isolated tests run the actual adapter with a stub for Solid's unwrap of plain arrays.
Screenshots / recordings
Not captured: no patched desktop app build was available for a genuine before/after screenshot. The regression tests show the actual label data before and after the change.
Thanks for tracking this down and for the focused tests, @Furox-Art!
I think this duplicates #55100, which is still active. Its latest commit makes the same change to normalizeProviderList in packages/app/src/runtime/server/global-sync/utils.ts: when the catalog doesn't say, it treats the model as supporting reasoning if compatibility.reasoningField is set or any variant exists. It also passes the catalog's reasoning flag through from core.
Your handling of a none-only variant list, which shouldn't count as reasoning support, looks like a useful refinement that #55100 doesn't have yet. It would be great to raise it there, along with your test cases, in a review or comment.
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
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.
Issue for this PR
Fixes #53520. Related: #50257, #55906.
Type of change
What does this PR do?
In V2, the model catalog exposes thinking options in
variants, but the app's legacy provider adapter always setscapabilities.reasoningtofalse. The model tooltip therefore says "No reasoning" for models with High/Medium reasoning options.The adapter now reports reasoning when a model has a non-
nonevariant or acompatibility.reasoningField. A model with no such signal (includingnone-only) still reports unsupported. This only changes the UI metadata mapping; it does not modify model requests.How did you verify your code works?
utils.test.ts;git diff --checkpasses.unwrapof plain arrays.Screenshots / recordings
Not captured: no patched desktop app build was available for a genuine before/after screenshot. The regression tests show the actual label data before and after the change.
Checklist