From ee277a457e08bccd88cfaa335291cd3a87354cc5 Mon Sep 17 00:00:00 2001 From: Graham McIntire Date: Fri, 13 Feb 2026 13:29:54 -0600 Subject: [PATCH] update changelogs for gaiia integration --- CHANGELOG.txt | 26 ++++++++++++++++++++++++++ priv/static/changelog.txt | 9 +++++++++ 2 files changed, 35 insertions(+) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index b965f431..db92c7c8 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,4 +1,30 @@ 2026-02-13 +feat: complete gaiia integration (stages 3-7) + - Stage 3: Webhook listener for real-time Gaiia events + - POST /api/v1/webhooks/gaiia/:organization_id + - HMAC-SHA256 per-org signature verification + - Handles account.*, billing_subscription.*, inventory_item.* events + - Files: lib/towerops/gaiia/webhooks.ex, lib/towerops_web/controllers/api/v1/gaiia_webhook_controller.ex + - Stage 4: Subscriber-aware device pages + - Gaiia tab on device detail showing inventory item, subscriber, billing subscriptions + - IP address mismatch indicator between Towerops and Gaiia + - Files: lib/towerops_web/live/device_live/show.ex, show.html.heex + - Stage 5: Outage impact analysis + - Two-layer analysis: device-level (inventory→subscriber) and site-level (network site→all subscribers) + - Impact auto-computed on device_down alerts, stored as JSONB on alert record + - Subscriber count and MRR badges on alert list page + - Files: lib/towerops/gaiia/impact_analysis.ex, lib/towerops/alerts.ex, lib/towerops/alerts/alert.ex + - Migration: add gaiia_impact column to alerts table + - Stage 6: Write-back actions (Towerops → Gaiia) + - Ticket creation from alerts via createExternalTicket mutation + - Subscriber notes during outages via createNote mutation + - Inventory item updates (IP, serial, MAC) via updateInventoryItem mutation + - Files: lib/towerops/gaiia/actions.ex, lib/towerops/gaiia/client.ex (mutations added) + - Stage 7: Inventory reconciliation + - Detects ghost devices, untracked devices, data mismatches, missing mappings + - Dedicated LiveView page with summary cards and tabbed discrepancy tables + - Files: lib/towerops/gaiia/reconciliation.ex, lib/towerops_web/live/org/gaiia_reconciliation_live.ex + fix: prevent agent channel graceful shutdowns from being logged as exceptions - Changed Phoenix Channel stop reasons to use {:shutdown, reason} tuple instead of bare atoms to signal graceful termination diff --git a/priv/static/changelog.txt b/priv/static/changelog.txt index a7b2c315..00b9f464 100644 --- a/priv/static/changelog.txt +++ b/priv/static/changelog.txt @@ -3,6 +3,15 @@ Devices Tested & Working * Ubiquiti AC, LTU, AirFiber * Cambium ePMP +2026-02-13 +* 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 +* Outage impact analysis - alerts now show affected subscriber count and revenue at risk +* Write-back actions - create Gaiia tickets from alerts, add subscriber notes during outages +* Inventory reconciliation - compare Gaiia inventory against discovered devices to find discrepancies +* Entity mapping UI for linking Gaiia network sites and inventory items to Towerops entities + 2026-02-12 * Infrastructure as Code support - manage sites and devices using Terraform * New unified monitoring checks system combining SNMP auto-discovery with manual service checks