With a PSFEx model that has no POLDEG1 (constant PSF), PSFExInterpolator.interpsfex returns one 2D basis image rather than one PSF per requested position; callers assume the per-position shape. The committed configs use PSFVAR_DEGREES 2, so the path is not exercised, but a degree-0 run would crash or silently reuse one image. Either broadcast to the per-position array or refuse degree-0 models with a clear error. Found while writing the psf-gate-drops-epoch contract (#875).
With a PSFEx model that has no
POLDEG1(constant PSF),PSFExInterpolator.interpsfexreturns one 2D basis image rather than one PSF per requested position; callers assume the per-position shape. The committed configs usePSFVAR_DEGREES 2, so the path is not exercised, but a degree-0 run would crash or silently reuse one image. Either broadcast to the per-position array or refuse degree-0 models with a clear error. Found while writing thepsf-gate-drops-epochcontract (#875).