Before submitting
Area
apps/web
Problem or use case
Changing Grok reasoning effort (or other provider options) on an existing thread often fails to reach sendTurn because thread-turn options stay sticky and draft options are empty.
Proposed solution
When per-thread draft has no options, fall back to cross-thread sticky provider options for send. Also drop obsolete Grok Early Access badge.
Why this matters
Composer UI shows the new effort but the server still receives the old one — silent lie.
Smallest useful scope
Options-only sticky fallback. Do not let sticky override thread/project selected model.
Alternatives considered
Force users to start a new thread for option changes — works but fights sticky model UX already used elsewhere.
Risks or tradeoffs
Incorrect activeSelection folding can steal the thread model from sticky — fixed scope is options map only.
Examples or references
PR #5426.
Before submitting
Area
apps/web
Problem or use case
Changing Grok reasoning effort (or other provider options) on an existing thread often fails to reach
sendTurnbecause thread-turn options stay sticky and draft options are empty.Proposed solution
When per-thread draft has no options, fall back to cross-thread sticky provider options for send. Also drop obsolete Grok Early Access badge.
Why this matters
Composer UI shows the new effort but the server still receives the old one — silent lie.
Smallest useful scope
Options-only sticky fallback. Do not let sticky override thread/project selected model.
Alternatives considered
Force users to start a new thread for option changes — works but fights sticky model UX already used elsewhere.
Risks or tradeoffs
Incorrect
activeSelectionfolding can steal the thread model from sticky — fixed scope is options map only.Examples or references
PR #5426.