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 |
||
|---|---|---|
| .. | ||
| channels | ||
| components | ||
| controllers | ||
| helpers | ||
| live | ||
| plugs | ||
| endpoint.ex | ||
| gettext.ex | ||
| gettext_helpers.ex | ||
| permissions.ex | ||
| plug_exceptions.ex | ||
| router.ex | ||
| telemetry.ex | ||
| user_auth.ex | ||