fix(tui): add provider refresh action - #2946
Conversation
🦋 Changeset detectedLatest commit: d3e5bd9 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d3e5bd9ac2
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| } finally { | ||
| reopenProviderManager(host); |
There was a problem hiding this comment.
Keep a dismissed provider dialog closed
If a refresh takes long enough for the user to press Esc, the existing manager restores the editor, but the refresh continues and this unconditional finally mounts a new manager when it completes. This unexpectedly steals focus from the editor or any dialog opened in the meantime and makes Esc appear ineffective; reopen only if the original manager is still active, or disable/cancel dismissal while refreshing.
Useful? React with 👍 / 👎.
Related Issue
Part of #2111
Problem
The
/providercommand advertises refresh support, but the Provider Manager exposes only add and delete actions. Provider and model state also reloads only when a refresh reports model-list changes, so the TUI can retain stale configuration state.What changed
Rrefresh action and visible key hint to Provider Manager.This intentionally leaves models.dev provenance and unsupported-provider discovery out of scope.
Checklist
gen-changesetsskill and added a patch changeset.gen-docsskill; no docs update is needed because this implements refresh behavior already advertised by/provider.