UI/документация: крошки, метрики узлов в stats, правки навигации и подвала
- Документация: хлебные крошки; секции H2 в одной карточке; заголовок вкладки от H1 - Навигация: активна только текущая пилюля (Панель без постоянного home-стиля) - GET /api/v1/stats: cluster_resources (docker stats CPU/RAM/I/O по узлам kind) - Панель: блок ресурсов в карточке статистики; убраны строки подвала про api_routes/clusters - Удалён app/docs/README.md; крошки app/docs → api_routes.md; README корня обновлён
This commit is contained in:
@@ -26,6 +26,7 @@ from core.cluster_lifecycle import (
|
||||
stop_kind_cluster_containers,
|
||||
validate_cluster_name,
|
||||
)
|
||||
from core.container_resource_stats import collect_kind_clusters_resource_stats
|
||||
from core.job_store import (
|
||||
JobRecord,
|
||||
end_job_tracking,
|
||||
@@ -103,12 +104,16 @@ def _stats_sync() -> StatsResponse:
|
||||
jobs = job_store.snapshot_all()
|
||||
failed = sum(1 for j in jobs if j.status == "failed")
|
||||
|
||||
res_blocks, res_err = collect_kind_clusters_resource_stats()
|
||||
|
||||
return StatsResponse(
|
||||
kind_clusters_count=len(kind_names),
|
||||
local_cluster_dirs_count=len(subdirs),
|
||||
total_workers_from_meta=total_workers if counted else None,
|
||||
jobs_total=len(jobs),
|
||||
jobs_recent_failed=failed,
|
||||
cluster_resources=res_blocks,
|
||||
cluster_resources_error=res_err,
|
||||
)
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user