Add whisper docker dependency controls to dashboard

This commit is contained in:
William Valentin
2026-02-22 19:48:27 -08:00
parent 453eb264df
commit abaa9be3f1
9 changed files with 501 additions and 8 deletions
+38 -1
View File
@@ -408,13 +408,50 @@ Return status for docker-compose managed dependencies (currently includes local
"state": "running",
"health": "healthy",
"statusText": "Up 4 minutes (healthy)",
"containerName": "flynn-whisper-server-1"
"containerName": "flynn-whisper-server-1",
"availableActions": ["restart", "stop", "update"]
}
]
}
}
```
#### `system.dockerDependencyControl`
Control a docker-compose dependency (`start`, `restart`, `stop`, `update`).
- `update` for `whisper` pulls the latest image and runs `docker compose up -d` to reconcile.
**Request:**
```json
{
"id": 14,
"method": "system.dockerDependencyControl",
"params": {
"dependency": "whisper",
"action": "restart"
}
}
```
**Response:**
```json
{
"id": 14,
"result": {
"dependency": "whisper",
"action": "restart",
"status": {
"id": "whisper",
"state": "running",
"health": "healthy",
"statusText": "running (healthy)"
},
"message": "Restarted whisper-server container."
}
}
```
#### `system.localBackendControl`
Control a local backend daemon (`start`, `restart`, `stop`, `update`).
+18
View File
@@ -3,6 +3,24 @@
"updated_at": "2026-02-23",
"description": "Tracks the status of all Flynn plans and implementation phases",
"plans": {
"dashboard-docker-dependency-controls": {
"status": "completed",
"date": "2026-02-23",
"updated": "2026-02-23",
"summary": "Added daemon-style Start/Restart/Stop/Update controls for Docker Dependencies in Live Ops Dashboard. Introduced `system.dockerDependencyControl` RPC, docker compose control handlers for Whisper service lifecycle + image update, and dashboard action wiring with status feedback.",
"files_modified": [
"src/gateway/handlers/dockerDependencies.ts",
"src/gateway/handlers/dockerDependencies.test.ts",
"src/gateway/handlers/system.ts",
"src/gateway/handlers/handlers.test.ts",
"src/gateway/server.ts",
"src/gateway/ui/pages/dashboard.js",
"src/gateway/ui/pages/dashboard.test.ts",
"docs/api/PROTOCOL.md",
"docs/plans/state.json"
],
"test_status": "pnpm test:run src/gateway/handlers/dockerDependencies.test.ts src/gateway/handlers/handlers.test.ts src/gateway/ui/pages/dashboard.test.ts + pnpm typecheck passing"
},
"dashboard-docker-dependencies-profile-aware-detection": {
"status": "completed",
"date": "2026-02-23",