towerops/lib/towerops
Graham McInitre 9d4a5f6d81 refactor: comprehensive simplification and functional programming improvements
- help_live/index.ex: 2,642→173 lines, 15 section modules + sidebar extracted
  MikroTik now real section, dead if false removed
- agent_channel.ex: 2,506→1,751 lines, 3 helper modules extracted
  (heartbeat/subscriptions/job_builder), decode_and_process/4 eliminates
  8 repeated handle_in patterns, guard-based size checks
- antenna_catalog.ex: 1,174→47 lines, 107 specs → priv/antennas/catalog.json
- topology.ex: unbounded query → batched loading (100/batch),
  all guard errors fixed, zero if/case/cond conditionals
- proto: decoder_macros.ex + field_specs.ex infrastructure for
  macro-generated protobuf decoders
2026-07-21 17:03:47 -05:00
..
accounts Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
admin Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
agents Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
alerts Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
api_tokens Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
billing refactor: adopt Towerops.Result helpers in 8 call sites 2026-04-30 14:43:24 -05:00
capacity refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
cn_maestro tests: disable Req retries in test env to eliminate ~7s-per-test delays 2026-04-24 10:04:52 -05:00
config_changes Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
contexts help update 2026-02-04 17:56:48 -06:00
coverages Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
devices Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
ecto_types Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
gaiia Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
geoip Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
integrations Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
job_monitoring more tests and fixes 2026-02-07 11:50:18 -06:00
lidar Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
llm fix: use Keyword.get for API key to respect explicit nil, add ecto.migrate to test alias 2026-07-16 09:31:11 -05:00
maintenance Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
mikrotik Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
mobile_sessions Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
monitoring Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
netbox fix: resolve all Elixir 1.20 type system warnings across project 2026-05-28 14:52:30 -05:00
on_call Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
organizations Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
pagerduty fix: replace remaining Process.sleep calls with receive/timeout patterns 2026-06-02 15:27:23 -05:00
preseem Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
profiles Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
prom_ex feat(metrics): expose Prometheus /metrics via PromEx on :9568 2026-05-08 10:25:25 -05:00
proto refactor: comprehensive simplification and functional programming improvements 2026-07-21 17:03:47 -05:00
rate_limit chore: rate_limit rewrite + on-call redesign plan + handoff_notifications_mode 2026-04-28 12:17:29 -05:00
recommendations/rules fix(insights): raise device overheating thresholds for outdoor equipment 2026-05-11 12:13:09 -05:00
redix fix: reduce health-check probe pressure to stop readiness-flapping downtime 2026-06-08 16:08:31 -05:00
reports Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
security Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
settings Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
sites Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
snmp Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
sonar tests: disable Req retries in test env to eliminate ~7s-per-test delays 2026-04-24 10:04:52 -05:00
splynx tests: disable Req retries in test env to eliminate ~7s-per-test delays 2026-04-24 10:04:52 -05:00
status_pages Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
topology Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
uisp Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
visp fix: humanize raw error strings in integration sync modules 2026-03-12 13:53:28 -05:00
weather Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
workers Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
accounts.ex refactor: apply FP patterns — with-chains + multi-clause over if/case 2026-07-01 18:04:36 -05:00
activity_feed.ex reliability-audit-fixes (#181) 2026-03-26 14:10:36 -05:00
admin.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
agents.ex Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
alerts.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
api_tokens.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
application.ex fix: register NIF compiler, add Nix shell NIF build, make NIF optional at boot 2026-07-16 09:15:53 -05:00
billing.ex Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
capacity.ex refactor: apply FP patterns — with-chains + multi-clause over if/case 2026-07-01 18:04:36 -05:00
config_changes.ex tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
coverages.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
dashboard.ex fix/findings-medium-priority (#188) 2026-03-27 12:31:53 -05:00
devices.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
error_tracker_ignorer.ex Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
gaiia.ex Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
geocoding.ex tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
geoip.ex db-performance-migrations (#234) 2026-04-04 14:22:25 -05:00
http.ex tests: disable Req retries in test env to eliminate ~7s-per-test delays 2026-04-24 10:04:52 -05:00
integrations.ex fix: 3 more bugs (M17, M23, L9) 2026-05-12 11:45:22 -05:00
job_monitoring.ex more tests and fixes 2026-02-07 11:50:18 -06:00
lidar.ex chore(coverage,types): clean dialyzer + new tests + ETH canopy provider 2026-05-07 09:11:17 -05:00
llm.ex feat(insights): LLM-powered insight enrichment 2026-05-09 16:41:48 -05:00
log_filters.ex Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
mailer.ex moduledocs 2026-01-17 15:08:49 -06:00
maintenance.ex refactor(maintenance): use MaintenanceWindowQuery in active_windows_base 2026-04-30 14:26:30 -05:00
mikrotik.ex feat(mikrotik): webhook receiver for MikroTik RouterOS events 2026-05-11 18:02:21 -05:00
mobile_sessions.ex Fix failing tests and clean up code 2026-06-16 14:54:34 -05:00
monitoring.ex credo fixes 2026-06-14 08:27:57 -05:00
numeric.ex refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
on_call.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
organizations.ex refactor: apply FP patterns — with-chains + multi-clause over if/case 2026-07-01 18:04:36 -05:00
postgrex_types.ex feat: add Texas LIDAR DEM catalog with on-demand elevation reads 2026-05-04 13:03:28 -05:00
preseem.ex credo fixes 2026-06-14 08:27:57 -05:00
profiles.ex fix/findings-medium-priority (#188) 2026-03-27 12:31:53 -05:00
prom_ex.ex feat(metrics): expose Prometheus /metrics via PromEx on :9568 2026-05-08 10:25:25 -05:00
query_helpers.ex Fix all mix credo --strict and compiler warnings 2026-06-13 15:45:09 -05:00
rate_limit.ex fix: M20, M21, M22, L14 — archive safety, ETS protection, impersonation expiry, check pagination 2026-05-12 14:22:20 -05:00
redis_health_check.ex fix: reduce health-check probe pressure to stop readiness-flapping downtime 2026-06-08 16:08:31 -05:00
release.ex fix dialyzer things 2026-01-03 12:56:40 -06:00
repo.ex moduledocs 2026-01-17 15:08:49 -06:00
reports.ex fix: resolve all Elixir 1.20 type system warnings across project 2026-05-28 14:52:30 -05:00
result.ex refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
rf_links.ex fix: make sidebar sticky with header and resolve all credo issues (#32) 2026-03-15 18:19:09 -05:00
schema.ex Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
search.ex fix: 10 high-severity bugs from code audit (H1-H5, H14-H16, H27, H30) 2026-05-12 10:55:01 -05:00
settings.ex fix settings doctests with undefined function refs 2026-06-16 11:13:15 -05:00
sites.ex fix: 10 high-severity bugs from code audit (H1-H5, H14-H16, H27, H30) 2026-05-12 10:55:01 -05:00
snmp.ex Security hardening + performance fixes across codebase 2026-06-21 17:40:50 -05:00
status_pages.ex refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
sync_log.ex Major codebase cleanup: DRY schemas, remove dead config, consolidate modules 2026-06-16 15:29:22 -05:00
time.ex refactor/dry-improvements (#202) 2026-03-28 10:56:34 -05:00
topology.ex refactor: comprehensive simplification and functional programming improvements 2026-07-21 17:03:47 -05:00
trace.ex tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
unused.ex feat(insights): superuser regenerate button + dialyzer cleanup 2026-05-10 13:41:25 -05:00
url_validator.ex refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
vault.ex fix: M19, L16 — protobuf validation on 6 decode paths, vault ETS docs 2026-05-12 15:46:13 -05:00
weather.ex tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00