The delay of your nuke is strange as the animation starts, seemingly w/o you having given any order for launching it. At least it doesn't show any order when pressing shift.
When you do successfully launch the nuke a couple seconds later, the order to do so is does show up as expected when pressing shift.
Watching the replay again, it turns out you did give an order though. At ~21:30 you give the order to nuke one of your opponent's hives. This order gets cancelled a couple seconds later though, as the hive upgrades and is, according to the nuke, now a new unit.
At 22:30 the nuke strangely still remembers that an order for a nuke was given early, starts the animation, and only then figures out that it doesn't have a target, so it doesn't launch anything.
It's quite easily reproducible in a test game: Just target an unfinished nuke on a building that gets upgraded before the missile is finished and the opening animation will play without any nuke being fired. Exactly what happened in your game.
Velanoe's second nuke gets canceled at 94% without anything suspicious happening. It looks like he just accidentally pressed the stop button. You'd have to dig into the replay to find out for sure though.
Summary:
- Launching a nuke gets cancelled if the building they are targeted gets upgraded or stops existing. => Always target nukes on the ground.
- Velanoe just pressed the stop button on accident, I think.
For the devs:
- if possible, we probably want to change the nuke behavior, so that they still shoot the place where the building they were originally targeting was, should it stop existing.
Alternatively, we want to cancel the order completely so that no animation plays at all and you can at least give a new order w/o having to wait for the useless animation to finish