geo-l2-nyc-park-symdiff

Analyst notes

Description

This task tests a multi-step geometric-ops chain on two polygon layers stored in a single GeoPackage. The agent has to compute a symmetric difference, cluster the resulting patches into connected components so that adjacent gain/loss pairs from a single shifted park merge into one group, classify each group by which side(s) contributed, and emit a label anchor that is guaranteed to fall inside the group's geometry. The hidden gotcha is that the input GeoPackage is in a projected metric CRS (NY State Plane) while GeoJSON output must be WGS84 by RFC 7946, so the agent has to do area math in the projected CRS but reproject before writing.

Approach

  1. Open the GeoPackage and read both park layers, noting that they share a projected metric CRS.
  2. Compute the symmetric difference between the two layers and break it into connected components, with a small buffer-merge if needed to bridge sub-metre topology gaps along shifted-park boundaries.
  3. Classify each component by which side contributed to it (`parks_official`, `parks_osm`, or `both`) and collect each component into a single MultiPolygon.
  4. Compute a label-anchor point per group using a representative-point method that is guaranteed to lie inside the geometry, not a plain centroid.
  5. Reproject both feature collections to WGS84 and write them as GeoJSON with the `source` column and matching row order across the two files.

Pitfalls

Inputs

nameformatcrsgeometryfeatures
nyc_parks gpkg EPSG:6539 MultiPolygon 1,380

Expected outputs

nameformatcrsgeometryfeatures
parks_disagreement.geojson geojson EPSG:4326 MultiPolygon 46
park_label_anchors.geojson geojson EPSG:4326 Point 46

Map

Recent runs task v3

adapterstartedscorestepsdurationcoststatus
openrouter-gemma4-26b-basic 2026-06-18T07:32:32Z pending pending
openrouter-deepseek-v4-flash-basic 2026-06-18T03:08:04Z 0.00 17 5:37 1.08¢ done
openrouter-deepseek-v4-flash-detailed 2026-06-17T22:01:33Z 0.00 10 1:20 0.44¢ done
openrouter-gemma4-26b-detailed 2026-06-17T19:47:47Z 0.00 8 1:14 0.40¢ done
openrouter-deepseek-v4-flash-basic 2026-06-16T21:43:55Z 0.20 25 11:39 2.50¢ done