{
 "ocl_version": "0.1.0",
 "name": "Lower Harper's Road",
 "slug": "lower-harper-s-road",
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 41.492145562332894,
   "diagnostic": true,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 1372.0,
   "end_distance_m": 1374.0,
   "start_elevation_m": 258.7711074022827,
   "end_elevation_m": 259.6009503135294,
   "min_gradient_pct": -73.7779509751661,
   "suppressed_max_gradient_pct": 77.98018152680584,
   "suppressed_location_m": [
    1479.0,
    1481.0
   ]
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 38.35276106997867,
   "diagnostic": true,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 1422.0,
   "end_distance_m": 1425.0,
   "start_elevation_m": 270.94944345400364,
   "end_elevation_m": 272.100026286103,
   "min_gradient_pct": -62.704734841155606,
   "suppressed_max_gradient_pct": 62.94969057716079,
   "suppressed_location_m": [
    1478.0,
    1481.0
   ]
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 33.845509485386174,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 1420.0,
   "end_distance_m": 1425.0,
   "start_elevation_m": 270.4077508118337,
   "end_elevation_m": 272.100026286103,
   "min_gradient_pct": -39.5949778365582,
   "suppressed_max_gradient_pct": 44.82095090285384,
   "suppressed_location_m": [
    1476.0,
    1481.0
   ]
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 28.36551975319935,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 1415.0,
   "end_distance_m": 1425.0,
   "start_elevation_m": 269.26347431078307,
   "end_elevation_m": 272.100026286103,
   "min_gradient_pct": -18.226680859527846,
   "suppressed_max_gradient_pct": 32.35326324045559,
   "suppressed_location_m": [
    1471.0,
    1481.0
   ]
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 26.845398333964283,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure"
   ],
   "start_distance_m": 1437.0,
   "end_distance_m": 1457.0,
   "start_elevation_m": 273.95633886849197,
   "end_elevation_m": 279.3254185352848,
   "min_gradient_pct": -7.629694336486779
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 26.057555622403243,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure"
   ],
   "start_distance_m": 1401.0,
   "end_distance_m": 1426.0,
   "start_elevation_m": 265.80067357593066,
   "end_elevation_m": 272.31506248153147,
   "min_gradient_pct": -5.507058310620664
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 24.687247094701206,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure"
   ],
   "start_distance_m": 1379.0,
   "end_distance_m": 1429.0,
   "start_elevation_m": 260.44603336033094,
   "end_elevation_m": 272.78965690768155,
   "min_gradient_pct": -1.705657669617949
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 23.411919268010593,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded"
   ],
   "start_distance_m": 1363.0,
   "end_distance_m": 1463.0,
   "start_elevation_m": 257.1539883449568,
   "end_elevation_m": 280.5659076129674,
   "min_gradient_pct": -0.10394010006814369,
   "suppressed_max_gradient_pct": 24.277135722162825,
   "suppressed_location_m": [
    1381.0,
    1481.0
   ]
  }
 ],
 "length_m": 1502.1625414000582,
 "start_elevation_m": 174.2509359263606,
 "end_elevation_m": 287.9051223901358,
 "endpoint_gain_m": 113.65418646377518,
 "overall_gradient_pct": 7.566037850860416,
 "accumulated_ascent_m": 117.75710740958152,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 33.845509485386174,
   "start_distance_m": 1420.0,
   "end_distance_m": 1425.0,
   "midpoint_distance_m": 1422.5,
   "start_elevation_m": 270.4077508118337,
   "end_elevation_m": 272.100026286103,
   "start_xy": [
    326670.2239945665,
    204521.77770955444
   ],
   "end_xy": [
    326667.5497700267,
    204525.9712835469
   ]
  },
  "max_10m": {
   "gradient_pct": 28.36551975319935,
   "start_distance_m": 1415.0,
   "end_distance_m": 1425.0,
   "midpoint_distance_m": 1420.0,
   "start_elevation_m": 269.26347431078307,
   "end_elevation_m": 272.100026286103,
   "start_xy": [
    326673.73063653085,
    204518.25306066425
   ],
   "end_xy": [
    326667.5497700267,
    204525.9712835469
   ]
  },
  "max_20m": {
   "gradient_pct": 26.845398333964283,
   "start_distance_m": 1437.0,
   "end_distance_m": 1457.0,
   "midpoint_distance_m": 1447.0,
   "start_elevation_m": 273.95633886849197,
   "end_elevation_m": 279.3254185352848,
   "start_xy": [
    326661.40459731553,
    204536.2750813652
   ],
   "end_xy": [
    326647.76144897676,
    204549.81553033137
   ]
  },
  "max_25m": {
   "gradient_pct": 26.057555622403243,
   "start_distance_m": 1401.0,
   "end_distance_m": 1426.0,
   "midpoint_distance_m": 1413.5,
   "start_elevation_m": 265.80067357593066,
   "end_elevation_m": 272.31506248153147,
   "start_xy": [
    326686.28432073514,
    204512.23119201988
   ],
   "end_xy": [
    326667.0637969462,
    204526.84482963808
   ]
  },
  "max_50m": {
   "gradient_pct": 24.687247094701206,
   "start_distance_m": 1379.0,
   "end_distance_m": 1429.0,
   "midpoint_distance_m": 1404.0,
   "start_elevation_m": 260.44603336033094,
   "end_elevation_m": 272.78965690768155,
   "start_xy": [
    326698.7290301967,
    204495.4021595787
   ],
   "end_xy": [
    326665.55818501185,
    204529.4396577062
   ]
  },
  "max_100m": {
   "gradient_pct": 23.411919268010593,
   "start_distance_m": 1363.0,
   "end_distance_m": 1463.0,
   "midpoint_distance_m": 1413.0,
   "start_elevation_m": 257.1539883449568,
   "end_elevation_m": 280.5659076129674,
   "start_xy": [
    326702.8771784545,
    204480.25930698132
   ],
   "end_xy": [
    326641.9702472428,
    204551.33468953802
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -39.5949778365582,
   "start_distance_m": 574.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 576.5,
   "start_elevation_m": 185.88720725371547,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327099.71878898947,
    203892.78196838713
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  },
  "min_10m": {
   "gradient_pct": -18.226680859527846,
   "start_distance_m": 569.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 574.0,
   "start_elevation_m": 185.73012644784035,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327100.4178443423,
    203887.83107739524
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  },
  "min_20m": {
   "gradient_pct": -7.629694336486779,
   "start_distance_m": 559.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 569.0,
   "start_elevation_m": 185.43339722918492,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327101.815955048,
    203877.92929541145
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  },
  "min_25m": {
   "gradient_pct": -5.507058310620664,
   "start_distance_m": 554.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 566.5,
   "start_elevation_m": 185.28422293954273,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327102.5150104009,
    203872.97840441955
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  },
  "min_50m": {
   "gradient_pct": -1.705657669617949,
   "start_distance_m": 529.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 554.0,
   "start_elevation_m": 184.76028719669654,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327103.7488734,
    203848.0392892097
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  },
  "min_100m": {
   "gradient_pct": -0.10394010006814369,
   "start_distance_m": 479.0,
   "end_distance_m": 579.0,
   "midpoint_distance_m": 529.0,
   "start_elevation_m": 184.0113984619557,
   "end_elevation_m": 183.90745836188756,
   "start_xy": [
    327099.0429946435,
    203798.62925129957
   ],
   "end_xy": [
    327098.4501485391,
    203897.59370477588
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 41.492145562332894,
   "start_distance_m": 1372.0,
   "end_distance_m": 1374.0,
   "midpoint_distance_m": 1373.0,
   "start_elevation_m": 258.7711074022827,
   "end_elevation_m": 259.6009503135294,
   "start_xy": [
    326701.90575346135,
    204489.16449741248
   ],
   "end_xy": [
    326700.9981182429,
    204490.9466866028
   ]
  },
  "max_3m": {
   "gradient_pct": 38.35276106997867,
   "start_distance_m": 1422.0,
   "end_distance_m": 1425.0,
   "midpoint_distance_m": 1423.5,
   "start_elevation_m": 270.94944345400364,
   "end_elevation_m": 272.100026286103,
   "start_xy": [
    326668.97947086784,
    204523.3433278871
   ],
   "end_xy": [
    326667.5497700267,
    204525.9712835469
   ]
  }
 },
 "diagnostic_note": "Windows <=3 m are at raster-noise scale (1-sigma raster noise alone is roughly +/-7 pp at 2 m and +/-5 pp at 3 m on a 1 m DTM). Diagnostic use only: never a headline or ranking value.",
 "quality_summary": {
  "overhead_obstruction": {
   "obstruction_threshold_m": 2.0,
   "obstructed_fraction": 0.188,
   "obstruction_max_height_m": 17.39,
   "flagged_windows_m": [
    20,
    25,
    50,
    100
   ]
  },
  "structure_suppression": {
   "masked_fraction": 0.017,
   "windows_resited": [
    2.0,
    3.0,
    5.0,
    10.0,
    100.0
   ],
   "windows_unresolved": []
  },
  "excluded_ranges_m": [
   [
    574.0,
    580.0
   ],
   [
    584.0,
    589.0
   ],
   [
    1337.0,
    1342.0
   ],
   [
    1477.0,
    1483.0
   ]
  ],
  "review": [],
  "extent": [
   "may_continue_beyond_end"
  ]
 },
 "provenance": {
  "analysis_version": "0.1.0",
  "sample_interval_m": 1.0,
  "interpolation": "bilinear",
  "smoothing": "none",
  "gradient_windows_m": [
   5.0,
   10.0,
   20.0,
   25.0,
   50.0,
   100.0
  ],
  "diagnostic_windows_m": [
   2.0,
   3.0
  ],
  "elevation_crs": "EPSG:27700",
  "elevation_resolution_m": 1.0,
  "elevation_tiles": [
   "data/cache/wales/dtm_1m/wg_del_10_326203_20210227dtm.tif",
   "data/cache/wales/dtm_1m/wg_del_10_326204_20210227dtm.tif",
   "data/cache/wales/dtm_1m/wg_del_10_327203_20210227dtm.tif",
   "data/cache/wales/dtm_1m/wg_del_10_327204_20210227dtm.tif"
  ],
  "calculated_at": "2026-08-12T09:10:50+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "data/cache/pbf/wales-2026-08-11.osm.pbf",
  "osm_snapshot": "2026-08-10T20:21:40Z",
  "elevation_provider": "Welsh Government",
  "elevation_dataset": "Welsh Government LiDAR 1m DTM (2020-2023)",
  "elevation_licence": "Open Government Licence v3 \u2014 \u00a9 Crown copyright Welsh Government",
  "elevation_catalogue_layer": "geonode:welsh_government_lidar_tile_catalogue_2020_2023",
  "elevation_tile_ids": [
   "wg_del_10_326203_20210227dtm.tif",
   "wg_del_10_326204_20210227dtm.tif",
   "wg_del_10_327203_20210227dtm.tif",
   "wg_del_10_327204_20210227dtm.tif"
  ],
  "elevation_capture_dates": [
   "27-02-2021"
  ],
  "climb_origin": "discovered",
  "notes": "Coarse pass: max 9.8% over 200 m (Terrain 50), gain 30.3 m over 345 m way. EXTENDED by graph walk: +2 segment(s) at base, +5 at top (stop: base=no_descending_continuation, top=no_ascending_continuation; min_avg=2.0%). Review before adopting. DEDUPE: absorbed 3 overlapping proposal(s): discovered-lane-51-7347-3-0633, harper-s-road, vicarage-lane ROAD-REVIEW: way 867687343: unnamed service way; way 867687343: service way, surface untagged ADOPTED (notable slice 2026-08-11): qualified-steep."
 },
 "area": {
  "place": "Victoria Village",
  "county": "Torfaen - Torfaen"
 },
 "reported_claims": [],
 "confidence": "B",
 "shape": {
  "ascent_concentration": 0.513,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 143.0,
  "shape_class": "stepped"
 }
}