{
 "ocl_version": "0.1.0",
 "name": "Llangrove Road",
 "slug": "llangrove-road",
 "confidence": "A",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 46.19168229077353,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 451.0,
   "end_distance_m": 453.0,
   "start_elevation_m": 60.009040605044746,
   "end_elevation_m": 60.932874250860216,
   "min_gradient_pct": -20.327126110764482
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 40.37879067387659,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 442.0,
   "end_distance_m": 445.0,
   "start_elevation_m": 57.629825224764275,
   "end_elevation_m": 58.84118894498057,
   "min_gradient_pct": -15.591597759009327
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 37.131551056102836,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 441.0,
   "end_distance_m": 446.0,
   "start_elevation_m": 57.326509644496085,
   "end_elevation_m": 59.18308719730123,
   "min_gradient_pct": -12.682238244191524
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 30.32777259666467,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 439.0,
   "end_distance_m": 449.0,
   "start_elevation_m": 56.84633385230718,
   "end_elevation_m": 59.87911111197365,
   "min_gradient_pct": -5.408459142498998
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 26.05645673533818,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 433.0,
   "end_distance_m": 453.0,
   "start_elevation_m": 55.72158290379258,
   "end_elevation_m": 60.932874250860216,
   "min_gradient_pct": -1.419822297438813
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 23.79630316537893,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 428.0,
   "end_distance_m": 453.0,
   "start_elevation_m": 54.983798459515484,
   "end_elevation_m": 60.932874250860216,
   "min_gradient_pct": -0.42754141212532204
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 19.803690673630186,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 429.0,
   "end_distance_m": 479.0,
   "start_elevation_m": 54.97844359449757,
   "end_elevation_m": 64.88028893131266,
   "min_gradient_pct": 3.3006752980833416
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 16.570108706704637,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 411.0,
   "end_distance_m": 511.0,
   "start_elevation_m": 52.42363022797526,
   "end_elevation_m": 68.9937389346799,
   "min_gradient_pct": 3.851955067417858
  }
 ],
 "shape": {
  "ascent_concentration": 0.408,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 172.0,
  "shape_class": "sustained"
 },
 "length_m": 898.0000000000153,
 "start_elevation_m": 24.98622396240146,
 "end_elevation_m": 99.79891933278854,
 "endpoint_gain_m": 74.81269537038708,
 "overall_gradient_pct": 8.331035119196637,
 "accumulated_ascent_m": 76.10044488864398,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 37.131551056102836,
   "start_distance_m": 441.0,
   "end_distance_m": 446.0,
   "midpoint_distance_m": 443.5,
   "start_elevation_m": 57.326509644496085,
   "end_elevation_m": 59.18308719730123,
   "start_xy": [
    354602.52427638386,
    217782.14413826965
   ],
   "end_xy": [
    354598.33782185416,
    217784.87792656996
   ]
  },
  "max_10m": {
   "gradient_pct": 30.32777259666467,
   "start_distance_m": 439.0,
   "end_distance_m": 449.0,
   "midpoint_distance_m": 444.0,
   "start_elevation_m": 56.84633385230718,
   "end_elevation_m": 59.87911111197365,
   "start_xy": [
    354604.19885819574,
    217781.05062294952
   ],
   "end_xy": [
    354595.8259491364,
    217786.51819955013
   ]
  },
  "max_20m": {
   "gradient_pct": 26.05645673533818,
   "start_distance_m": 433.0,
   "end_distance_m": 453.0,
   "midpoint_distance_m": 443.0,
   "start_elevation_m": 55.72158290379258,
   "end_elevation_m": 60.932874250860216,
   "start_xy": [
    354609.2226036314,
    217777.77007698917
   ],
   "end_xy": [
    354592.4114947462,
    217788.59974193526
   ]
  },
  "max_25m": {
   "gradient_pct": 23.79630316537893,
   "start_distance_m": 428.0,
   "end_distance_m": 453.0,
   "midpoint_distance_m": 440.5,
   "start_elevation_m": 54.983798459515484,
   "end_elevation_m": 60.932874250860216,
   "start_xy": [
    354613.409058161,
    217775.03628868886
   ],
   "end_xy": [
    354592.4114947462,
    217788.59974193526
   ]
  },
  "max_50m": {
   "gradient_pct": 19.803690673630186,
   "start_distance_m": 429.0,
   "end_distance_m": 479.0,
   "midpoint_distance_m": 454.0,
   "start_elevation_m": 54.97844359449757,
   "end_elevation_m": 64.88028893131266,
   "start_xy": [
    354612.5717672551,
    217775.5830463489
   ],
   "end_xy": [
    354569.9781249745,
    217801.74295009335
   ]
  },
  "max_100m": {
   "gradient_pct": 16.570108706704637,
   "start_distance_m": 411.0,
   "end_distance_m": 511.0,
   "midpoint_distance_m": 461.0,
   "start_elevation_m": 52.42363022797526,
   "end_elevation_m": 68.9937389346799,
   "start_xy": [
    354627.64300356194,
    217765.7414084678
   ],
   "end_xy": [
    354542.36782371707,
    217817.91920628794
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -12.682238244191524,
   "start_distance_m": 556.0,
   "end_distance_m": 561.0,
   "midpoint_distance_m": 558.5,
   "start_elevation_m": 74.22946419882756,
   "end_elevation_m": 73.59535228661798,
   "start_xy": [
    354503.5408375738,
    217840.6670665616
   ],
   "end_xy": [
    354499.2267280023,
    217843.194606592
   ]
  },
  "min_10m": {
   "gradient_pct": -5.408459142498998,
   "start_distance_m": 556.0,
   "end_distance_m": 566.0,
   "midpoint_distance_m": 561.0,
   "start_elevation_m": 74.22946419882756,
   "end_elevation_m": 73.68861828457766,
   "start_xy": [
    354503.5408375738,
    217840.6670665616
   ],
   "end_xy": [
    354494.91261843086,
    217845.72214662243
   ]
  },
  "min_20m": {
   "gradient_pct": -1.419822297438813,
   "start_distance_m": 546.0,
   "end_distance_m": 566.0,
   "midpoint_distance_m": 556.0,
   "start_elevation_m": 73.97258274406542,
   "end_elevation_m": 73.68861828457766,
   "start_xy": [
    354512.1690567167,
    217835.6119865008
   ],
   "end_xy": [
    354494.91261843086,
    217845.72214662243
   ]
  },
  "min_25m": {
   "gradient_pct": -0.42754141212532204,
   "start_distance_m": 545.0,
   "end_distance_m": 570.0,
   "midpoint_distance_m": 557.5,
   "start_elevation_m": 73.89460714037736,
   "end_elevation_m": 73.78772178734603,
   "start_xy": [
    354513.03187863104,
    217835.1064784947
   ],
   "end_xy": [
    354491.46133077366,
    217847.74417864674
   ]
  },
  "min_50m": {
   "gradient_pct": 3.3006752980833416,
   "start_distance_m": 17.0,
   "end_distance_m": 67.0,
   "midpoint_distance_m": 42.0,
   "start_elevation_m": 25.663684616178916,
   "end_elevation_m": 27.314022265220586,
   "start_xy": [
    354995.78268476325,
    217638.5948544172
   ],
   "end_xy": [
    354949.3461230624,
    217657.12365943604
   ]
  },
  "min_100m": {
   "gradient_pct": 3.851955067417858,
   "start_distance_m": 0.0,
   "end_distance_m": 100.0,
   "midpoint_distance_m": 50.0,
   "start_elevation_m": 24.98622396240146,
   "end_elevation_m": 28.83817902981932,
   "start_xy": [
    355010.916,
    217630.85
   ],
   "end_xy": [
    354918.15774247324,
    217667.8622213574
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 46.19168229077353,
   "start_distance_m": 451.0,
   "end_distance_m": 453.0,
   "midpoint_distance_m": 452.0,
   "start_elevation_m": 60.009040605044746,
   "end_elevation_m": 60.932874250860216,
   "start_xy": [
    354594.1371385748,
    217787.5887259231
   ],
   "end_xy": [
    354592.4114947462,
    217788.59974193526
   ]
  },
  "max_3m": {
   "gradient_pct": 40.37879067387659,
   "start_distance_m": 442.0,
   "end_distance_m": 445.0,
   "midpoint_distance_m": 443.5,
   "start_elevation_m": 57.629825224764275,
   "end_elevation_m": 58.84118894498057,
   "start_xy": [
    354601.6869854779,
    217782.6908959297
   ],
   "end_xy": [
    354599.1751127601,
    217784.3311689099
   ]
  }
 },
 "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.022,
   "obstruction_max_height_m": 8.92,
   "flagged_windows_m": []
  },
  "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/england/bulk_dtm_1m/SO5015.tif",
   "data/cache/england/bulk_dtm_1m/SO5515.tif"
  ],
  "calculated_at": "2026-08-19T17:20:18+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "data/cache/pbf/england-2026-08-12.osm.pbf",
  "osm_snapshot": "2026-08-12T20:21:46Z",
  "elevation_provider": "Environment Agency",
  "elevation_dataset": "EA LIDAR Composite DTM 1m (2022)",
  "elevation_licence": "Open Government Licence v3 \u2014 \u00a9 Environment Agency",
  "elevation_coverage_id": "13787b9a-26a4-4775-8523-806d13af58fc__Lidar_Composite_Elevation_DTM_1m",
  "elevation_tile_ids": [
   "SO5015.tif",
   "SO5515.tif"
  ],
  "route_summit_trim_m": 181.0,
  "route_summit_trim_loss_m": 4.1,
  "climb_origin": "discovered",
  "notes": "Coarse pass: max 12.2% over 200 m (Terrain 50), gain 54.3 m over 810 m way. EXTENDED by graph walk: +3 segment(s) at base, +0 at top (stop: base=no_descending_continuation, top=no_ascending_continuation; min_avg=2.0%). Review before adopting. ADOPTED (England launch slice 2026-08-16): clean-steep.",
  "license": "ODbL-1.0",
  "license_url": "https://howsteep.org/licensing.html"
 },
 "area": {
  "place": "Whitchurch",
  "county": "County of Herefordshire"
 }
}