From c5df96a025a99ab0f6011ffb2260fb2a0f1c8f4e Mon Sep 17 00:00:00 2001 From: Micha Date: Sun, 5 Apr 2026 21:10:07 +0000 Subject: [PATCH] feat: add AdGuard + Scrutiny models --- apps/dashboard/backend/app/models/sources.py | 24 ++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/apps/dashboard/backend/app/models/sources.py b/apps/dashboard/backend/app/models/sources.py index 2afb434..89369df 100644 --- a/apps/dashboard/backend/app/models/sources.py +++ b/apps/dashboard/backend/app/models/sources.py @@ -83,3 +83,27 @@ class HomeAssistantSnapshot(APIModel): version: str | None = None response_time_ms: int | None = None last_checked: datetime | None = None + + +class AdGuardSnapshot(APIModel): + source_name: str = "adguard" + source_status: SourceStatus = "offline" + total_queries: int = 0 + blocked_queries: int = 0 + blocked_percent: float = 0.0 + avg_processing_ms: float = 0.0 + + +class ScrutinyDevice(APIModel): + name: str + model: str + status: str = "unknown" # "passed" | "failed" | "unknown" + + +class ScrutinySnapshot(APIModel): + source_name: str = "scrutiny" + source_status: SourceStatus = "offline" + overall_status: str = "offline" + devices: list[ScrutinyDevice] = Field(default_factory=list) + failed_count: int = 0 + total_count: int = 0