prop/lib/microwaveprop/rover
Graham McIntire 140351c0f6
feat(rover-locations): add /rover-locations page with CRUD
New globally-shared list of rover-friendly (or off-limits) parking
spots. Anyone can view; logged-in users can add new locations and
edit/delete their own. Each location stores lat/lon, free-text notes,
and a status enum (:ideal | :off_limits).

  * Microwaveprop.Rover.Location schema + migration
  * Rover.list_locations/0, create_location/2, update_location/3,
    delete_location/2 (mutations require User; ownership-scoped)
  * /rover-locations LiveView in the public live_session — Add button
    is disabled for anonymous visitors, Edit/Delete buttons render
    only on the user's own entries
  * Tests for context + LiveView covering anonymous read, owner-only
    edit/delete, and form submission
2026-04-26 13:08:27 -05:00
..
aggregator.ex feat(rover): pure scoring math (link margin, aggregator, drive time) 2026-04-25 16:26:33 -05:00
candidate_detail.ex feat(canopy): add tree-canopy height layer for path obstruction analysis 2026-04-26 12:51:48 -05:00
compute.ex feat(rover): add canopy clutter penalty + Canopy.BulkFetch downloader 2026-04-26 12:57:50 -05:00
drive_time.ex feat(rover): show aim heading + path lines for each fixed station 2026-04-25 18:10:15 -05:00
elevation.ex feat(rover): score per-station terrain clearance from SRTM path samples 2026-04-25 17:29:29 -05:00
fixed_station.ex feat(rover): FixedStation schema with grid-derived lat/lon 2026-04-25 16:26:33 -05:00
hilltop.ex feat(rover): snap top candidates to SRTM hilltops + add hillshade overlay 2026-04-26 09:12:24 -05:00
link_margin.ex feat(rover): pure scoring math (link margin, aggregator, drive time) 2026-04-25 16:26:33 -05:00
location.ex feat(rover-locations): add /rover-locations page with CRUD 2026-04-26 13:08:27 -05:00
path_terrain.ex feat(canopy): add tree-canopy height layer for path obstruction analysis 2026-04-26 12:51:48 -05:00
prominence.ex feat(rover): prefer broad hilltops near roads as ideal candidates 2026-04-25 17:45:48 -05:00
road_proximity.ex fix(rover): bound Overpass with hard 8s deadline + 6h ETS cache by bbox 2026-04-26 09:25:08 -05:00