I feel like it could be re-randomized to ensure full connectivity (treating boxes as empty space) from the player to every target, and to have enough boxes for the targets.
and, if you want to add some quality of life, you can make all the targets "push-onto-able" this means having at least one direction with 2 empty spaces.