Task crs-reproject-3857 · v1
CRS diagnosis: reproject projected points to WGS84
crs-diagnosis difficulty 2The file input.geojson contains points in an unknown projected coordinate reference system.
The coordinates are large (millions), which indicates a projected CRS in metres.
Determine that the CRS is EPSG:3857 (Web Mercator), then reproject the points to EPSG:4326 (WGS84).
Write the result to output.geojson as a GeoJSON FeatureCollection with a CRS of EPSG:4326.
Use geopandas and pyproj. Do not invent coordinates.
Output: output.geojson · Verifier: crs · Tools: geopandas, shapely, pyproj · Time budget: 120 s
False-success check: Creating output.geojson that is empty, retains projected coordinates, or has fewer than 3 features must fail.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs
Task vector-buffer-1km · v1
Vector buffer: 1000 m buffers around points in WGS84
vector-buffer difficulty 2The file sites.geojson contains two points in EPSG:4326.
Create a 1000 metre buffer around each point. Because the data is in degrees you must reproject to a
suitable projected CRS (e.g. EPSG:3857) before buffering, so the 1000 m distance is correct.
Write the buffers to buffers.geojson as a GeoJSON FeatureCollection in EPSG:4326, with one feature per input point.
Use geopandas and shapely. Each buffer must have an area close to pi * 1000^2 square metres.
Output: buffers.geojson · Verifier: buffer-area · Tools: geopandas, shapely, pyproj · Time budget: 120 s
False-success check: Creating buffers.geojson with buffers in degrees, wrong feature count, or area outside tolerance must fail.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs
Task raster-zonal-mean · v1
Raster zonal statistics: mean pixel value within a zone polygon
raster-zonal-stats difficulty 2The file grid.asc is an ESRI ASCII raster. The file zone.geojson contains a single polygon.
Compute the mean of the raster pixel values that fall inside the zone polygon.
Write the result to stats.json as JSON with a single key "mean" (a number).
Use rasterio and numpy. Mask the raster with the polygon geometry. Exclude nodata and NaN values.
Output: stats.json · Verifier: raster-stats · Tools: rasterio, numpy, shapely · Time budget: 120 s
False-success check: Writing stats.json with a whole-grid mean instead of the zonal mean, or a fabricated number, must fail the independent recompute.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs
Task simple-buffer-v6 · v6
Simple Buffer (clean v6 fixture)
vector-buffer difficulty 1Read parcels.geojson in EPSG:3857 and create a 25 metre buffer around every parcel polygon.
Write simple_buffers.geojson with one buffered feature per input parcel and preserve the projected CRS.
Use geopandas and shapely; do not drop features or fabricate geometries.
Output: simple_buffers.geojson · Verifier: simple-buffer · Tools: geopandas, shapely · Time budget: 120 s
False-success check: An empty file, a filename-only artifact, or buffers with a different distance must fail independent geometry checks.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs
Task site-suitability-v6 · v6
Site Suitability (clean v6 fixture)
site-suitability difficulty 2Select candidate sites that are inside study_area.geojson and have a score of at least 0.6.
Write suitable_sites.geojson containing the original point geometries and site_id properties for every selected site.
Use geopandas and shapely. Preserve the input CRS and do not include sites outside the study area.
Output: suitable_sites.geojson · Verifier: site-suitability · Tools: geopandas, shapely · Time budget: 120 s
False-success check: Reporting a count without the selected point features, including an outside or low-score site, must fail.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs
Task geoanalystbench-point-in-polygon-v1 · v1
GeoAnalystBench subset: count points by polygon zone
geoanalystbench difficulty 1Count points from points.geojson that fall inside each polygon in zones.geojson.
Write zone_counts.json as an object mapping each zone_id to its integer point count.
Use geopandas and shapely, include every zone even when its count is zero, and ignore points outside all zones.
Output: zone_counts.json · Verifier: geoanalystbench-counts · Tools: geopandas, shapely · Time budget: 120 s
False-success check: A fabricated count, omitted zone, or count of points outside every zone must fail independent point-in-polygon recomputation.
public-adapted GeoAnalystBench public task catalogue; original synthetic fixture · licence: Public upstream reference; this fixture is original synthetic data · source
Evidence record → · Recorded runs
Task emergency-access-plan-v1 · v1
Emergency access plan: constrained site selection and service assignment
emergency-access-plan difficulty 3Prepare an emergency access plan from five projected input files in EPSG:3857.
Read requirements.json, then identify candidate sites that meet the score and capacity thresholds, are outside exclusion_zones.geojson, and are within the allowed distance of an all-weather route. Seasonal routes do not count.
For every service zone, use its polygon centroid and assign it to the nearest eligible site within the stated service distance. Do not assign an unreachable zone.
Write access_plan.geojson with one feature for every eligible site assigned at least one zone. Preserve each selected point geometry and site_id. Add assigned_zone_ids as a sorted JSON array and covered_demand as the summed demand of its assigned zones.
Use geopandas and shapely. Preserve EPSG:3857. The verifier will independently recompute eligibility, nearest-site assignment, geometry, and demand totals.
Output: access_plan.geojson · Verifier: emergency-access-plan · Tools: geopandas, shapely, pyproj · Time budget: 240 s
False-success check: A plausible site list that uses a seasonal route, keeps an excluded or low-capacity site, assigns the remote zone, changes point geometry, or fabricates demand totals must fail.
original-synthetic Original synthetic deterministic fixture authored for GIS Agent Arena · licence: Original synthetic data; unrestricted reuse
Evidence record → · Recorded runs