towerops/test
Graham McIntire 6e4b07026f feat(coverage): tree-canopy clutter via LANDFIRE EVH
Closes the last clutter source. NLOS heatmaps now see trees as
obstacles in addition to buildings:

- New Towerops.Coverages.TreeCanopy module fetches an AAIGrid of
  canopy heights for the coverage bbox via the same /vsicurl/
  + Lidar.Reader pipeline used for terrain. Source defaults to
  the public LANDFIRE 2022 EVH COG (~30 m, all CONUS) and is
  override-able via :tree_canopy_url.
- EVH cells are integer codes; decode_evh maps the canopy range
  (101..199 → height-100 m), the herbaceous range (11..29 →
  (code-10) * 0.1 m), and zeroes everything else.
- Profile.sample/5 takes a :canopy grid alongside :clutter and
  uses max(building_height, canopy_height) so a tree poking above
  a one-storey roof still shadows.
- CoverageWorker fetches the canopy grid once per job (best
  effort — failures log + continue with nil) and threads it
  through the env map. LOS keeps clutter empty + canopy nil
  (height-above-clutter view); NLOS gets both.
- Tests: tree_canopy_test for the disabled / override paths;
  test_helper disables the LANDFIRE fetch by default so the
  rest of the suite doesn't stream remote bytes.
2026-05-06 16:54:59 -05:00
..
assets fix/traffic-graph-rendering-and-polarity (#130) 2026-03-23 15:24:44 -05:00
integration routeros fixes and latency rounding 2026-02-09 17:30:06 -06:00
mix/tasks tests: raise coverage to 70% via helper promotion + new unit/property tests 2026-04-24 09:49:06 -05:00
snmpkit fix(ci): enable Debian non-free repo for snmp-mibs-downloader; loosen flaky timing assertion to 500ms 2026-04-17 17:24:15 -05:00
support feat: end-to-end /coverage compute pipeline + antenna catalog + cnHeat-style form 2026-05-06 14:32:38 -05:00
towerops feat(coverage): tree-canopy clutter via LANDFIRE EVH 2026-05-06 16:54:59 -05:00
towerops_web test: cover live view event handlers, invitation query, fix flaky timeout test 2026-05-05 11:13:01 -05:00
test_helper.exs feat(coverage): tree-canopy clutter via LANDFIRE EVH 2026-05-06 16:54:59 -05:00
towerops_native_test.exs fix: resolve typing violation and ETS cache race in tests 2026-02-14 12:32:43 -06:00