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:
@@ -10,6 +10,8 @@ namespace dag_ui {
|
||||
|
||||
// --- Modelo de datos (mirror JSON shape de apps/dag_engine) ---
|
||||
|
||||
struct DagRunRow; // fwd
|
||||
|
||||
struct DagInfo {
|
||||
std::string name;
|
||||
std::string description;
|
||||
@@ -24,6 +26,9 @@ struct DagInfo {
|
||||
std::string last_run_status;
|
||||
std::string last_run_started_at;
|
||||
std::string last_run_finished_at;
|
||||
// last_runs[] (max 5, most recent first). Empty if no runs yet.
|
||||
// Populated from /api/dags `last_runs` array.
|
||||
std::vector<std::string> last_runs_status; // parallel: status of each (size <= 5)
|
||||
};
|
||||
|
||||
struct DagRunRow {
|
||||
|
||||
Reference in New Issue
Block a user