Reconstruct previously got nil for each missing shard and allocated a
fresh 1MB buffer per chunk — thousands of allocations on a 1GB volume.
klauspost/reedsolomon reuses cap when len==0, so handing it a 0-len
slice with the existing capacity avoids the allocation while still
signaling "missing".