docs: update changelogs for command center dashboard feature

This commit is contained in:
Graham McIntire 2026-02-13 14:56:01 -06:00
parent e000529654
commit a6d5563b41
No known key found for this signature in database
2 changed files with 61 additions and 0 deletions

View file

@ -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

View file

@ -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