Duplicate of 121934, which has gone unassigned and unresolved for a month now.
Also, in order for multiple armor stands not to bunch up, you have to use /execute at @e[type=armor_stand] run tp @e[type=armor_stand,distance=0] ~ ~1 ~
I've tried /kill @e[distance=0.1..], which seems to have the behavior you're looking for.
I can confirm 'success' always returns 1, unless part of the block detection cuboid goes outside loaded chunks.