towerops/lib/towerops_web/live
Graham McIntire d0946c3cd0
refactor: simplify job architecture from Oban coordinators to direct workers
Removes unnecessary two-layer architecture (Oban Coordinator → GenServer)
in favor of direct Oban workers that perform the actual work.

Changes:
- Replace DevicePollerCoordinator + PollerWorker with DevicePollerWorker
- Replace DeviceMonitorCoordinator + DeviceMonitor with DeviceMonitorWorker
- Simplify Monitoring.Supervisor (removed Registries, DynamicSupervisors)
- Remove all Exq dependencies (workers, supervisor, mix deps)
- Convert DiscoveryWorker from Exq to Oban pattern
- Update Devices context to auto-start/stop monitoring and polling
- Update all LiveView callers to use new Oban enqueue pattern
- Fix all tests to use Oban.Job struct instead of raw IDs

Benefits:
- Simpler codebase (~850 lines removed)
- Better reliability (Oban handles retries, failures)
- Lower memory (no persistent GenServers)
- Better observability (work visible in Oban dashboard)
- Cluster-wide coordination via PostgreSQL
- Extensive PubSub usage for real-time events

Files deleted:
- lib/towerops/workers/device_monitor_coordinator.ex
- lib/towerops/workers/device_poller_coordinator.ex
- lib/towerops/snmp/poller_worker.ex
- lib/towerops/monitoring/device_monitor.ex
- lib/towerops/workers/monitor_worker.ex
- lib/towerops/workers/poll_worker.ex
- lib/towerops/exq_supervisor.ex
- All related test files

Files created:
- lib/towerops/workers/device_poller_worker.ex
- lib/towerops/workers/device_monitor_worker.ex

All 3,686 tests passing.
2026-01-24 16:36:57 -06:00
..
admin more dark mode 2026-01-20 17:23:11 -06:00
agent_live improve cloud poller display 2026-01-24 13:33:01 -06:00
alert_live more dark mode 2026-01-20 17:23:11 -06:00
device_live refactor: simplify job architecture from Oban coordinators to direct workers 2026-01-24 16:36:57 -06:00
graph_live arp 2026-01-23 08:40:57 -06:00
org more dark mode 2026-01-20 17:23:11 -06:00
org_live more dark mode 2026-01-20 17:23:11 -06:00
site_live refactor: simplify job architecture from Oban coordinators to direct workers 2026-01-24 16:36:57 -06:00
dashboard_live.ex rename equipment to device 2026-01-17 14:48:46 -06:00
dashboard_live.html.heex more dark mode 2026-01-20 17:23:11 -06:00
mobile_qr_live.ex more dark mode 2026-01-20 17:23:11 -06:00
user_settings_live.ex more dark mode 2026-01-20 17:23:11 -06:00