gui: add session connection status indicator

- Add colored dot to session rows showing tool server RPC status:
  green=connected, yellow=paused+connected, gray=paused, red=broken
- Remove vestigial agent.connected from model (was never displayed)
- Session-level connected status is the correct granularity
This commit is contained in:
Levi Neely 2026-08-05 08:35:43 +02:00
parent 9f3f962567
commit d01d7c8ad8
2 changed files with 11 additions and 4 deletions

View File

@ -198,7 +198,6 @@ ApplicationWindow {
agentId: agent.id,
level: 1,
state: agent.state || "idle",
connected: agent.connected,
displayName: agent.name,
parentExpanded: wasExpanded,
parentPaused: isPaused
@ -311,7 +310,6 @@ ApplicationWindow {
// Update agent - use state from session/idx directly
var agent = newAgentIds[item.agentId]
sessionTreeModel.setProperty(idx, "state", agent.state || "idle")
sessionTreeModel.setProperty(idx, "connected", agent.connected)
sessionTreeModel.setProperty(idx, "displayName", agent.name)
sessionTreeModel.setProperty(idx, "parentPaused", isPaused)
} else {
@ -346,7 +344,6 @@ ApplicationWindow {
agentId: ag.id,
level: 1,
state: ag.state || "idle",
connected: ag.connected,
displayName: ag.name,
parentExpanded: wasExpanded,
parentPaused: isPaused
@ -1072,6 +1069,17 @@ ApplicationWindow {
}
}
// Connection status indicator (session rows only)
Rectangle {
Layout.preferredWidth: 8
Layout.preferredHeight: 8
Layout.alignment: Qt.AlignVCenter
Layout.rightMargin: 6
radius: 4
color: connectionColor || "gray"
visible: type === "session"
}
// Name area
Item {
Layout.fillWidth: true

View File

@ -301,7 +301,6 @@ void Ollie9pClient::refreshSessions()
av["name"] = agentParts.value(0);
av["id"] = agentId;
av["state"] = agentParts.value(2);
av["connected"] = isConnected;
agents.append(av);
// Check if this is the active agent