towerops/lib/towerops_web/controllers/api
Graham McIntire 3b0961dfc0 refactor(webhooks): enqueue Oban jobs immediately, ACK fast
All 4 webhook controllers now verify the signature, insert an Oban job,
and return immediately. Previously, Stripe and PagerDuty did DB queries +
writes inline; Gaiia ran upserts; Agent Release broadcast to all connected
WebSockets — all in the request path.

New workers:
- StripeWebhookWorker — delegates to WebhookProcessor.process/1
- GaiiaWebhookWorker — delegates to Webhooks.process_event/3
- PagerdutyWebhookWorker — resolve/acknowledge alerts by dedup key
- AgentReleaseWebhookWorker — broadcast mass update to agents

Also fix: log error when resolve_alert fails in agent_channel (was silently
discarded, causing "Resolving stuck device_down alert" to repeat in logs).
2026-05-10 17:18:23 -05:00
..
v1 refactor(webhooks): enqueue Oban jobs immediately, ACK fast 2026-05-10 17:18:23 -05:00
account_data_controller.ex dialyzer: fix all unmatched_return warnings (154 → 0) 2026-04-21 10:03:55 -05:00
error_helpers.ex perf: disable Req retry for faster error tests 2026-03-10 16:19:31 -05:00
mobile_auth_controller.ex fix: return raw session token instead of hash in mobile QR login (#42) 2026-03-16 13:59:52 -05:00
mobile_controller.ex tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00