fix(console): show 'per-user' for idle pool MCP servers, not 'connecting'

oauth_user/oauth_obo servers hold no cluster-level session — they connect per-user on demand — so the admin status pill rendered 'connecting'/'idle', which reads as broken, when zero warm users is the normal resting state. Render 'per-user' for pool-backed servers instead.
This commit is contained in:
Patrick Buckley
2026-07-12 17:13:34 -07:00
parent b3cd91f1a0
commit d6ccc5ed17
+8
View File
@@ -4738,6 +4738,10 @@ function _renderMcpServers(items) {
let dotClass = "mcp-status-dot disabled";
let rowClass = "mcp-row-disabled";
let statusText = "disabled";
// Pool-backed (oauth_user/oauth_obo) servers hold NO cluster-level session —
// they connect per-user on demand — so "connecting"/"idle" reads as broken
// when the resting state (zero warm users) is normal.
const isPool = s.auth_type === "oauth_user" || s.auth_type === "oauth_obo";
if (!s.enabled) {
statusText = "disabled";
} else if (anyConnected) {
@@ -4748,6 +4752,10 @@ function _renderMcpServers(items) {
dotClass = "mcp-status-dot error";
rowClass = "mcp-row-error";
statusText = "error";
} else if (isPool) {
dotClass = "mcp-status-dot disabled";
rowClass = "mcp-row-disabled";
statusText = "per-user";
} else if (s.enabled && s.source !== "config" && nodeIds.length === 0) {
dotClass = "mcp-status-dot connecting";
rowClass = "mcp-row-disabled";