towerops/lib/towerops
mayor 0a978746e1
Fix all Credo issues
Resolves 26 Credo warnings/issues:

Code Readability (2 issues):
- Break long line in mac_address.ex (line 316 > 120 chars)
- Break long @spec in agents.ex (line 332 > 120 chars)

Refactoring Opportunities (2 issues):
- Reduce cyclomatic complexity in device_live/form.ex
  - Extract helper functions to simplify SNMPv3 credential resolution
  - Split logic into smaller, focused functions
- Reduce nesting depth in snmp_oid.ex
  - Extract nested logic into separate helper functions

Warnings (22 issues):
- Fix comparison warning in validator.ex
  - Split validate_sensor_value/1 into separate clauses for int/float
  - Add credo directive for valid NaN check (value != value)
- Replace 21 expensive length/1 checks with Enum.empty?/1
  - Change assertions from `assert length(list) >= 1` to `refute Enum.empty?(list)`
  - Change assertions from `assert length(list) > 0` to `refute Enum.empty?(list)`
  - Affected files: device_poller_worker_test.exs, mib_test.exs,
    snmp_tokenizer_test.exs, parser_test.exs, error_test.exs, compiler_test.exs

All tests passing (5578 tests, 0 failures).
Credo now reports: "found no issues"
2026-02-06 10:31:09 -06:00
..
accounts add device count to superadmin 2026-02-06 09:32:13 -06:00
admin feat: add audit logging to grant_sudo_mode/1 2026-02-01 14:09:40 -06:00
agent Fix all Credo issues 2026-02-06 10:31:09 -06:00
agents Add comprehensive typespecs to agent-related modules 2026-02-06 09:33:44 -06:00
alerts feat: add Meraki/FortiWLC vendors, remove AlertNotifier temporarily 2026-01-22 10:40:44 -06:00
api_tokens refactor: use API token auth for profile imports instead of session cookies 2026-01-18 09:30:21 -06:00
contexts help update 2026-02-04 17:56:48 -06:00
devices fix nil firmware comparison 2026-02-05 13:47:56 -06:00
ecto_types Fix all Credo issues 2026-02-06 10:31:09 -06:00
geoip remove Mix.env and support ip database import 2026-01-28 13:08:06 -06:00
mobile_sessions Fix datetime truncation for mobile session schemas 2026-01-15 16:17:05 -06:00
monitoring refactor: convert periodic workers to Oban Cron for better resilience 2026-01-24 16:56:28 -06:00
organizations fix device count 2026-02-05 15:04:34 -06:00
profiles fix: handle nil sys_descr in profile matching 2026-02-04 18:22:12 -06:00
proto fix: improve agent polling and SNMP testing 2026-02-05 12:34:28 -06:00
settings remote agent/cloud improvements 2026-01-24 09:16:41 -06:00
sites tcp snmp test 2026-02-04 17:28:14 -06:00
snmp Add strict typespecs to all Oban worker perform/1 functions 2026-02-06 09:50:51 -06:00
workers Add strict typespecs to all Oban worker perform/1 functions 2026-02-06 09:50:51 -06:00
accounts.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
admin.ex add device count to superadmin 2026-02-06 09:32:13 -06:00
agents.ex Fix all Credo issues 2026-02-06 10:31:09 -06:00
alerts.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
api_tokens.ex fix my-data page 2026-01-30 16:47:11 -06:00
application.ex fix: improve agent polling and SNMP testing 2026-02-05 12:34:28 -06:00
devices.ex fix mistaken poller ids 2026-02-05 13:57:15 -06:00
geoip.ex remove Mix.env and support ip database import 2026-01-28 13:08:06 -06:00
honeybadger_filter.ex filter more honeybadger alerts, format dates to users time zone, email template cleanup 2026-02-01 09:27:42 -06:00
log_filter.ex Add comprehensive Dialyzer type specifications 2026-01-17 10:52:02 -06:00
logger_filters.ex refactor: filter harmless Oban shutdown messages during deployments 2026-01-25 08:38:33 -06:00
mailer.ex moduledocs 2026-01-17 15:08:49 -06:00
mobile_sessions.ex credo cleanup 2026-01-17 15:00:52 -06:00
monitoring.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
organizations.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
profiles.ex add universoal import 2026-01-18 16:59:34 -06:00
redis_health_check.ex fix: remove to_charlist conversion for Redix host option 2026-01-24 17:49:57 -06: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
result.ex more tests 2026-02-03 13:20:33 -06:00
settings.ex remote agent/cloud improvements 2026-01-24 09:16:41 -06:00
sites.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
snmp.ex more dialyzer specs 2026-02-05 13:11:18 -06:00
vault.ex add mikrotik device handling 2026-02-01 16:42:39 -06:00