Let's say you have an assassin in a tall building. He's well hidden and aiming to take out a guard. He states that he is going to attack the guard with his longbow.
By the rules, combat starts.
The guard wins initiative. The assassin decides to hold his attack. He waits a few moments for "combat" to end, then declares another attack... rinse and repeat until the assassin wins initiative, or someone spots him in the building.
Sure, you could say the assassin has to attack the guard, yet that hardly seems fair. Even the optional speed factor initiative rules which require a preemptive declaration of action allow the player to not take the action.
You could also say the failure to win initiative means the guard spotted him or is suddenly suspicious of his general surroundings, but that severely devalues the assassin's Stealth skill.
The only reason the assassin's player would be motivated to hold his attack is if he was told that the guard was
no longer surprised because the guard can take reactions after his turn is over. The trouble is, that is not a rule!
The problem is in fact
caused by this totally invented 'rule'!
If you adjudicate it properly, using the rule of 'you are surprised if you do not notice a threat' to also mean that you are
not surprised as soon as you
do notice a threat, then there is no problem in this scenario.
The assassin's Stealth beat the guard's Perception, therefore the guard does not notice a threat, therefore is 'surprised'. Initiative is rolled and the guard goes first. He cannot move or take an action, but now he can take reactions.
Does the guard now somehow know that the assassin is there? No!
Has the guard noticed a threat yet? No.
Therefore, the guard is still 'surprised', and the fact that he is able to take reactions is neither here nor there.
Assassins turn. He knows that if the guard is unaware of him then the guard is still surprised, and since the assassin has every reason to believe that he remains undetected then he knows that any hit will be an auto-crit.
There is no reason for the player to metagame an inexplicable 'hold' on his attack!
Back to the action: the assassin shoots! Does the arrow hit? What happens to 'surprise'?
If the arrow hits, the guard now knows that there is a threat. The 80 points of damage and the Sucking Chest Wound with a black-fletched arrow sticking out from it were his main clues! Since he knows there is a threat, he is by default 'not surprised' at that point, and therefore no auto-crit.
If the arrow misses, the guard will know there is a threat if he notices the arrow. Does he notice? That's up to the DM. The DM may decide by fiat that the arrow clatters of the stonework. He may roll randomly. He may call for an opposed Stealth/Perception check. Bottom line, if the guard notices a threat then he is no longer surprised, but if he doesn't notice the arrow hitting a sack of feathers or whatever then he's still unaware of a threat and therefore still surprised.
BTW, if it was a wizard instead of a guard, then although the wizard could use a reaction at this point and could, in theory, cast
shield, he cannot react to an attack he doesn't know about. Just like he can't cast a spell on an enemy he doesn't know about. The wizard can't metagame either.