ebac3f50f4
- dem.py: apply 45s median filter before hysteresis to suppress SRTM tile-boundary steps that were accumulating through the 5m threshold; raise DEM hysteresis threshold from 5m to 10m - dem.py: back up elevation_m as elevation_m_original in timeseries before the first DEM overwrite, so original sensor data is preserved - dem.py: add recalculate_elevation_hysteresis() — recomputes gain/loss from original recorded elevation (reads elevation_m_original if a DEM run already replaced elevation_m) using source-aware thresholds (5m barometric, 10m GPS/unknown); does not touch the elevation array - edit/server.py, serve/server.py: split /recalculate-elevation into two endpoints: /recalculate-elevation/dem and /recalculate-elevation/hysteresis - EditDrawer.svelte: replace single DEM button with two side-by-side buttons — "Recalculate (hysteresis)" (fast, offline) and "Recalculate (DEM)" (SRTM lookup)