Model selection is global, not per-session — causes confusing cross-session model changes
- Langage dominant
- Shell
- Étoiles
- 11.2k
- Forks
- 1.9k
- Merge moyen
- 14 h 16 min
- PR mergées (30 j)
- 6
Description
### Describe the bug
When using /model to change the model in one session, it updates the global ~/.copilot/config.json, which causes
all other active sessions to silently switch models. This is unexpected and confusing.
### Affected version
Version 0.0.411
### Steps to reproduce the behavior
1. Open Session A (e.g., ee685757...) — model shows claude-sonnet-4.5
2. Open Session B (e.g., 738952fd...) — run /model and select gpt-5-mini
3. Return to Session A — UI now shows gpt-5-mini (high) even though no model change was made in that session
4. No session.model_change event is logged in Session A's events.jsonl, confirming the change originated
externally
Evidence from session logs:
- Session B (738952fd) has a session.model_change event for gpt-5-mini at 2026-02-18T18:10:20Z
- Session A (ee685757) has no such event — the model changed in the UI without any user action in that session
### Expected behavior
Model selection should be per-session. Changing the model in one session should not affect
other active sessions. A global default is fine for new sessions, but running sessions should maintain their own
model selection.
- Store model selection per-session (e.g., in workspace.yaml) and fall back to config.json only when no
session-level override exists
- Alternatively, at minimum, log a session.model_change event and display a notification when the model changes
due to an external config update, so the user understands what happened
### Additional context
_No response_
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.