feat: drill-down filters on overview and outdated agent version highlight

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-10 09:21:21 +10:00
parent e65daa8c3b
commit f9d56621f6
14 changed files with 595 additions and 36 deletions
+21 -1
View File
@@ -1,4 +1,4 @@
from datetime import datetime
from datetime import datetime, timedelta, timezone
@@ -156,6 +156,10 @@ def list_problems(
hostname: str | None = Query(None),
created_within_hours: int | None = Query(None, ge=1, le=8760),
resolved_within_hours: int | None = Query(None, ge=1, le=8760),
db: Session = Depends(get_db),
_user: str = Depends(get_current_user),
@@ -194,6 +198,22 @@ def list_problems(
count_stmt = count_stmt.where(Host.hostname.ilike(like) | Host.display_name.ilike(like))
if created_within_hours is not None:
since = datetime.now(timezone.utc) - timedelta(hours=created_within_hours)
stmt = stmt.where(Problem.created_at >= since)
count_stmt = count_stmt.where(Problem.created_at >= since)
if resolved_within_hours is not None:
since = datetime.now(timezone.utc) - timedelta(hours=resolved_within_hours)
stmt = stmt.where(Problem.status == "resolved", Problem.updated_at >= since)
count_stmt = count_stmt.where(Problem.status == "resolved", Problem.updated_at >= since)
total = db.scalar(count_stmt) or 0