towerops/lib/towerops_web
Graham McIntire 7a57f7c9d2
fix: resolve critical sensor discovery pipeline data loss
Critical fixes to sensor discovery and display pipeline:

- Fix float value rejection: Change is_integer guards to is_number in
  vendor.ex, dynamic.ex to accept decimal sensor values (temperature,
  counters, etc.)
- Fix scale factor calculation: Rewrite base.ex divisor calculation
  using pure integer arithmetic to prevent rounding errors
- Add missing sensor type support: Current, power, fan, load, and
  signal quality sensor categories now filtered and assigned in UI
- Refactor resolve_snmp_community to reduce cyclomatic complexity

Impact:
- Sensors with float values (DHCP leases, connection counts, precise
  temperatures) no longer silently dropped before database
- ENTITY-SENSOR-MIB divisors calculated correctly without float errors
- UI coverage increased from ~35% to ~60% of discovered sensor types

Files modified:
- lib/towerops/snmp/profiles/vendors/vendor.ex
- lib/towerops/snmp/profiles/dynamic.ex
- lib/towerops/snmp/profiles/base.ex
- lib/towerops_web/live/device_live/show.ex
- lib/towerops/devices.ex

Documentation: SENSOR_PIPELINE_FIXES.md
2026-02-09 08:32:24 -06:00
..
channels fix: resolve critical sensor discovery pipeline data loss 2026-02-09 08:32:24 -06:00
components UI improvements 2026-02-05 14:57:11 -06:00
controllers fix: prevent site assignment when sites are disabled for org 2026-02-08 13:24:48 -06:00
helpers more tests and fixes 2026-02-07 11:50:18 -06:00
live fix: resolve critical sensor discovery pipeline data loss 2026-02-09 08:32:24 -06:00
plugs security: add session inactivity timeout and comprehensive security documentation 2026-02-08 10:47:44 -06:00
endpoint.ex fix: improve agent polling and SNMP testing 2026-02-05 12:34:28 -06:00
gettext.ex init 2025-12-21 11:10:43 -06:00
gettext_helpers.ex feat: migrate email templates to gettext (Phase 2 - Emails) 2026-02-02 09:48:30 -06:00
permissions.ex handle mikrotik ssh 2026-02-02 16:42:18 -06:00
plug_exceptions.ex handle exceptions gracefully on api endpoints 2026-02-04 12:18:14 -06:00
router.ex feat: create MonitoringLive base structure with PubSub subscription 2026-02-06 18:27:40 -06:00
telemetry.ex fix: add Oban config to dev.exs and replace Exq telemetry with Oban 2026-01-24 16:39:45 -06:00
user_auth.ex fix: always redirect to /devices when stopping impersonation 2026-02-08 14:01:15 -06:00