diff --git a/docs/pilot-2.2-heartbeat-reports.md b/docs/pilot-2.2-heartbeat-reports.md
index 01c80a5..06e52a6 100644
--- a/docs/pilot-2.2-heartbeat-reports.md
+++ b/docs/pilot-2.2-heartbeat-reports.md
@@ -14,7 +14,9 @@ SAC отображает их в **События** и на **Dashboard / Хос
## UI SAC
- **Dashboard:** счётчики heartbeat/отчётов за 24 ч, хосты с устаревшим heartbeat.
-- **Хосты:** колонки *Агент* (`online` / `stale` / `unknown`), время последнего heartbeat и отчёта.
+- **Хосты:** колонки *Агент* (`online` / `stale` / `unknown`), время последнего heartbeat и отчёта (ссылка на **Отчёты** по hostname).
+- **Отчёты** (`/reports`): список `report.daily.*` по узлам; клик по строке — карточка с метриками и полным текстом (HTML/`report_body` в `details`).
+- Старые события без `details.report_body` показывают подсказку обновить агент.
---
diff --git a/frontend/src/App.vue b/frontend/src/App.vue
index 02981c8..ff40a33 100644
--- a/frontend/src/App.vue
+++ b/frontend/src/App.vue
@@ -4,6 +4,7 @@
{{ appTitle }}DashboardСобытия
+ ОтчётыПроблемыХосты
diff --git a/frontend/src/components/ReportBodyCard.vue b/frontend/src/components/ReportBodyCard.vue
new file mode 100644
index 0000000..db4c6de
--- /dev/null
+++ b/frontend/src/components/ReportBodyCard.vue
@@ -0,0 +1,77 @@
+
+
+
+
+
{{ item.value }}
+
{{ item.label }}
+
+
+
+
+
+
{{ plainBody }}
+
+
{{ summary }}
+
+
+ Полный текст отчёта не сохранён (старая версия агента). Обновите ssh-monitor и дождитесь следующего
+ ежедневного отчёта.
+