ERA5 (ERA5)
Upstream: Copernicus Climate Data Store (CDS) via cdsapi. Retrieval uses the CDS API (not presigned HTTP URLs from coldcast.download.download_requests()).
Transport: coldcast.sources.era5.download() calls cdsapi.Client().retrieve() into output_dir.
Auth: ~/.cdsapirc with CDS URL and API key.
CLI: coldcast download era5 [--run-info-netcdf …]
Settings: Under the unified ECMWF block, product key ERA5 — num_days_back, delay_days, variables_surface_level, grid, hours. A legacy top-level ERA5 block is still read if present. Geographic extent: merge of top-level bounding_box and the product’s bounding_box or bbox (CDS sequence or lon_min / lon_max / lat_min / lat_max); nested keys override the global defaults per coordinate.
Code: coldcast.sources.era5