towerops/lib/towerops_web/controllers/api
Graham McIntire ea91dae0e6 fix: 6 medium-severity bugs (M2, M8, M9, M10, M11, M16)
- M2: get_user_by_email/1 uses lower(email) = lower(?) so User@Example.com
  and user@example.com resolve to the same account; closes a lookalike-
  registration / password-reset confusion risk.
- M8: webhook auth plug no longer echoes "Webhook authentication not
  configured" — the misconfiguration is logged server-side and the caller
  gets a generic Internal server error so endpoints can't be probed.
- M9: coverages controller logs the underlying KMZ build error and
  returns a generic "Failed to build KMZ" string — filesystem paths and
  zip internals no longer leak.
- M10: account-data controller no longer crashes with MatchError when an
  org has zero or multiple memberships; defaults to "member" and treats
  any owner membership as owner.
- M11: ActivityController switches to a hard whitelist
  (Atom.to_string/1 comparison) instead of String.to_existing_atom/1;
  unknown filter types are dropped silently and the atom table can't be
  grown from API input.
- M16: title-tracking MutationObserver is stored on `this` so destroyed()
  actually disconnects it — fixes a memory leak per LV navigation.
2026-05-12 11:38:13 -05:00
..
v1 fix: 6 medium-severity bugs (M2, M8, M9, M10, M11, M16) 2026-05-12 11:38:13 -05:00
account_data_controller.ex fix: 6 medium-severity bugs (M2, M8, M9, M10, M11, M16) 2026-05-12 11:38:13 -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: 3 more high-severity bugs (H19, H20, H25) 2026-05-12 11:32:20 -05:00
mobile_controller.ex fix: 10 high-severity bugs from code audit (H1-H5, H14-H16, H27, H30) 2026-05-12 10:55:01 -05:00
param_filter.ex fix: 5 more high-severity bugs (H6, H8, H17, H18) 2026-05-12 11:04:31 -05:00