Support session-scoped model configuration in the Sessions model picker
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.4k
- PR merge metrics
- PR metrics pending
Description
Repro:
1. Create an automation and set thinking level to A on any model
2. Open new session page, set thinking level to B
3. Run the automation
4. Notice the thinking level on the run is set to B
----
While migrating the new chat input widget into the automation dialog, I noticed that changing the reasoning effort or context size in the automation dialog also changes it in the regular New Chat widget, even before saving the automation.
The automation configuration itself is persisted and restored correctly by the provider. However, the Sessions `ModelPicker` does not provide `delegate.modelConfiguration`, causing `ModelPickerWidget` to fall back to the global `ILanguageModelsService`.
We need the Sessions model picker to support provider/session-scoped model configuration so that:
- Configuration is read from the session supplied to `NewChatInputWidget`.
- Picker changes update only that session draft.
- Providers can restore persisted model configuration into a session.
- Separate New Chat inputs do not affect one another.
- The global configuration remains a fallback when no scoped access is available.
- Reasoning effort and context size remain correct when an automation is edited or executed.
An investigation snapshot that captures and forwards provider-owned model configuration is available here:
- Branch: https://github.com/benvillalobos/vscode/tree/bv/automation-model-configuration-spike
- Commit: https://github.com/benvillalobos/vscode/commit/47b1788942b
That snapshot does not yet implement the required session-scoped `IModelConfigurationAccess`; it is intended as a place to resume the investigation.
Contributor guide
Assessment
This issue has not been assessed yet.