diff --git a/console/src/deploy.ts b/console/src/deploy.ts index 261986f..f3f8593 100644 --- a/console/src/deploy.ts +++ b/console/src/deploy.ts @@ -191,6 +191,10 @@ export function initDeployPanel(deps: DeployPanelDeps): DeployPanelHandle | null k8sNamespaceOptions.innerHTML = res.namespaces .map((n) => ``) .join(""); + // studio#119: a prior failed attempt (e.g. before switching context) + // can leave its error text on screen — clear it once a load actually + // succeeds, otherwise a stale error outlives the state it described. + setStatus(identityStatusEl, ""); } catch (e) { // Non-fatal: the namespace field is a free-text input either way (list_ // namespaces failing just means no autocomplete suggestions). @@ -238,6 +242,11 @@ export function initDeployPanel(deps: DeployPanelDeps): DeployPanelHandle | null opts.push(``); } k8sContextSel.innerHTML = opts.join(""); + // studio#119: same staleness fix as loadK8sNamespaces — the + // loadK8sNamespaces() call below will overwrite this with its own + // result once it resolves, but clear here too so a stale error doesn't + // linger for the gap between the two if that call is slow. + setStatus(identityStatusEl, ""); } catch (e) { setStatus(identityStatusEl, `k8s context list unavailable: ${errText(e)}`, "err"); }