The rung that reads every spot of a frame passes SIZE_MAX as the per-image cap, and the
accumulated cloud reserved max_spots_per_image * images - which overflows and throws
length_error out of vector::reserve, killing the run. The count held is already tracked
exactly, so reserve that.