diff --git a/CHANGELOG.txt b/CHANGELOG.txt index db92c7c8..4dd27cae 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,4 +1,57 @@ 2026-02-13 +feat: command center dashboard with unified insights and contextual enrichment + - Stage 1: Unified insight system (schema + workers) + - Migration: add source, site_id, agent_token_id columns to preseem_insights + - Extended Insight schema with source field (preseem, snmp, gaiia, system) and new types + - Extended Insights context with source filter, count_active_by_urgency/1, site_id dedup + - New DeviceHealthInsightWorker: generates snmp_cpu_high, snmp_memory_high, device_poll_gap insights + - New SystemInsightWorker: generates agent_offline insights, auto-resolves when agent returns + - New GaiiaInsightWorker: generates reconciliation_finding insights from Gaiia reconciliation + - Oban cron config for all three workers + - Files: priv/repo/migrations/*_add_source_to_preseem_insights.exs, + lib/towerops/preseem/insight.ex, lib/towerops/preseem/insights.ex, + lib/towerops/workers/device_health_insight_worker.ex, + lib/towerops/workers/system_insight_worker.ex, + lib/towerops/workers/gaiia_insight_worker.ex, config/runtime.exs + - Stage 2: Dashboard context + health score + - New Towerops.Dashboard context aggregating data from Alerts, Devices, Sites, Gaiia, Insights + - Health score computation (weighted: uptime 50%, response 25%, alerts 25%) + - Site summaries with device counts, alerts, subscriber/MRR data + - Gaiia subscriber totals (get_org_subscriber_totals/1, get_site_subscriber_summary/1) + - Files: lib/towerops/dashboard.ex, lib/towerops/gaiia.ex + - Stage 3: Command center dashboard LiveView rewrite + - Health overview section: health score, active alerts, device counts (up/down/unknown), + subscribers/MRR (conditional), insights by urgency + - Two-column layout: alert feed (20 alerts) with acknowledge buttons and Gaiia impact badges, + insight feed with source filter pills (All/Preseem/SNMP/Gaiia/System) and dismiss buttons + - Site health grid: responsive cards with device counts, down indicators, subscriber data + - URL state management for insight source filter via push_patch/handle_params + - Real-time PubSub updates for alert new/resolved events + - Preserves empty state onboarding when no devices exist + - Files: lib/towerops_web/live/dashboard_live.ex, lib/towerops_web/live/dashboard_live.html.heex + - Stage 4: Site detail enrichment + - Metrics bar on site show page: device count, down count, alert count badges + - Conditional subscriber/MRR badges when Gaiia network site is mapped + - Added count_site_active_alerts/1 to Alerts context + - Extended Dashboard.get_site_summary/1 with alert_count + - Files: lib/towerops_web/live/site_live/show.ex, lib/towerops_web/live/site_live/show.html.heex, + lib/towerops/alerts.ex, lib/towerops/dashboard.ex + - Stage 5: Alert and device list enrichment + - Alert list: subscriber count and MRR context inline with site name links + - Device list: subscriber badge on site headers when Gaiia network site is mapped + - Batch-loads site subscriber data for efficient display + - Files: lib/towerops_web/live/alert_live/index.ex, lib/towerops_web/live/alert_live/index.html.heex, + lib/towerops_web/live/device_live/index.ex, lib/towerops_web/live/device_live/index.html.heex + - Tests: test/towerops/dashboard_test.exs, test/towerops/preseem/insight_test.exs, + test/towerops/preseem/insights_test.exs, test/towerops/gaiia_test.exs, + test/towerops/workers/device_health_insight_worker_test.exs, + test/towerops/workers/system_insight_worker_test.exs, + test/towerops/workers/gaiia_insight_worker_test.exs, + test/towerops_web/live/dashboard_live_test.exs, + test/towerops_web/live/site_live_test.exs, + test/towerops_web/live/alert_live_test.exs, + test/towerops_web/live/device_live/index_test.exs + feat: complete gaiia integration (stages 3-7) - Stage 3: Webhook listener for real-time Gaiia events - POST /api/v1/webhooks/gaiia/:organization_id diff --git a/priv/static/changelog.txt b/priv/static/changelog.txt index 00b9f464..9643a65c 100644 --- a/priv/static/changelog.txt +++ b/priv/static/changelog.txt @@ -4,6 +4,14 @@ Devices Tested & Working * Cambium ePMP 2026-02-13 +* Command center dashboard - unified view of network health, alerts, insights, and site status +* Network health score showing overall operational health at a glance +* Unified insight feed combining alerts from SNMP, Gaiia, and system sources with source filtering +* Automated insights for device health thresholds, poll gaps, offline agents, and Gaiia reconciliation +* Site health grid on dashboard showing per-site device counts, status, and subscriber data +* Metrics bar on site pages showing device count, alerts, and subscriber context +* Subscriber and revenue context shown alongside alerts and device lists when Gaiia is connected +* Real-time dashboard updates when alerts are triggered or resolved * Gaiia billing integration - connect subscriber and billing data from Gaiia * Real-time webhook sync keeps Gaiia data up to date as changes happen * Subscriber context on device pages - see linked accounts, billing plans, and network site info