Why does this Behaviour tree call the same task in a sequence only once

I have setup the below behaviour tree. When I am in line of sight and at the appropriate range I would expect it to turn to face me, fire three times (fire projectile returns success when the fire animation finishes) then wait 5 seconds. Instead it fires once then waits 5 seconds. If I put waits in between the fire projectiles it ignores them. Even if I structure the tree as per my second one, it only fires once and then waits 5 seconds. What exactly is going on here? I do not understand the behaviour here.