microsoft / microsoft/amplifier
Resume banner shows saved session model while routing matrix silently routes to a different provider
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 3.1k
- Forks
- 261
- Avg merge
- 3h 28m
- Merged PRs (30d)
- 13
Description
Summary
amplifier resume <session-id> displays the saved session's model/provider in the banner (e.g., "Model: gpt-5.6-sol"), but the actual routing decision is made at resume time by the routing matrix, silently overriding the saved provider without warning. This creates a UX mismatch and masked a cross-provider incompatibility (see companion issue).
Repro
- Create a session with OpenAI provider (e.g., gpt-5.6-sol)
- Resume it while routing-matrix "balanced" is active
- Banner displays:
Model: gpt-5.6-sol(from saved metadata) - Actual request routing:
anthropic/claude-fable-5(from routing matrix decision) - User is misled about which provider will run
Real example:
- Session ID:
3aaf5712-7e3c-4d70-9b6e-a1743b84e745(project: iago) - Saved model: gpt-5.6-sol (OpenAI)
- Routing decision at resume: anthropic/claude-fable-5
- Banner showed: "Model: gpt-5.6-sol" (misleading)
- In this case, the silent cross-provider switch also triggered a hard failure in provider-anthropic (see companion issue: Cross-provider resume: thinking blocks with null signature passed to Anthropic API cause invalid_request_error)
Impact
- User confusion: Users expect the model shown in the banner to be what actually runs
- Silent provider substitution: No warning when routing overrides the saved session's provider, hiding potential incompatibilities
- Debugging friction: When errors occur, the user's mental model doesn't match reality (especially painful if the error is provider-specific, like the thinking-block validation error)
Ask
Either:
- The banner should reflect the model that will actually be used after routing resolution, OR
- Resume should honor/pin the saved provider-model pair, OR
- At minimum, warn the user that routing is overriding their saved session's provider
Triage note: This may belong in amplifier-bundle-routing-matrix if the intended design is that resume should pin to the saved provider.
🤖 Generated with Amplifier
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the resume command's banner construction and the routing-matrix decision described in the reproduction steps. Compare the saved session metadata with the provider selected at resume time, then determine which behavior is intended: reflect the resolved model, pin the saved provider-model pair, or warn about the override. Done means the banner and actual routing no longer mislead users.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100