fix: invalidate model metadata cache after OpenCode restart (#1065)

After OpenCode restarts (via 'Reload Opencode' or server reconnection),
the UI's cached model metadata (context windows, pricing, etc.) was
never refreshed — the cache was fetched once at boot and reused forever.
This meant new/updated models from providers were invisible until a full
page reload.

Add invalidateModelMetadataCache action to useConfigStore that clears
the metadata cache and resets the in-flight tracker. Call it from
performConfigRefresh before re-loading providers.
This commit is contained in:
Shyamalan Kannan
2026-04-30 12:25:42 +03:00
committed by GitHub
parent 897c435d14
commit fa71954ef1
2 changed files with 10 additions and 0 deletions
+4
View File
@@ -612,6 +612,10 @@ async function performConfigRefresh(options: {
useConfigStore.setState({ directoryScoped: {} });
}
if (refreshProviders) {
useConfigStore.getState().invalidateModelMetadataCache();
}
const sdkRefreshTasks: Promise<void>[] = [];
for (const directory of directoriesToRefresh) {
if (refreshProviders) {