This happens over sparse image mosaics that are not fully covering their bounding box.
By specification, the returned area must be the intersection between the requested area, and the bounds declared in DescribeCoverage.
However, if the mosaic is sparse the requested area might intersect only a subset of the images and leave a empty data area on a side, in this case the mosaic won't return pixels in that portion, and the WCS machinery won't pad it either, returning less data than expected.
In the picture:
- In blue, requested area
- In red, area currently returned
- In salmon, area that GeoServer should be returning by specification