feat: 5 puntitos de status en DAG List (R1..R5 columnas Badge)
- data_http: parsea last_runs[] del /api/dags y guarda d.last_runs_status (max 5, mas reciente primero). - tabs.cpp DAG List: 5 columnas R1..R5 con CellRenderer::Badge + BadgeRule por status (success=verde, failed=rojo, running=amarillo, pending/cancelled=gris, "-"=tenue). - main.cpp: g_refresh_pending. WS auto-trigger refresh /api/dags cuando ve un run con status terminal -> last_runs se actualiza sin pulsar nada. - main + tabs: extern "C" dag_list_request_refresh() para el boton Refresh manual. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -94,6 +94,11 @@ static void parse_dag_info(const json& j, DagInfo& d) {
|
||||
d.last_run_started_at = lr.started_at;
|
||||
d.last_run_finished_at = lr.finished_at;
|
||||
}
|
||||
if (j.contains("last_runs") && j["last_runs"].is_array()) {
|
||||
for (auto& r : j["last_runs"]) {
|
||||
d.last_runs_status.push_back(get_str(r, "status"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool list_dags_http(const std::string& api_url, std::vector<DagInfo>& out) {
|
||||
|
||||
Reference in New Issue
Block a user