Because Russia was stocking up on foreign valuta for exactly the current scenario.
Close advisors to Zelensky have been aware of the incoming invasion since at least 2017. But they could not act, because sounding the alarm would cause mass evacuations. This would have clogged their infrastructure, which would prevent their army from being able to act quickly and basically lose them the war before it had even begun.
It is not a very strong example of a prediction. At most it shows he is well informed.
Many reasons, waiting for people to forget about the crimean invasion, waiting for people to be distracted, waiting for an especially cold winter that would cause europe more harm if they instituted sanctions, waiting for his health to deteriorate.
Because he was waiting for Trump to pull the US out of NATO. Which Putin wanted him to do, and Trump talked endlessly about doing, but kept waiting and waiting. Trump knows it's good to have a powerful man need you to do something, it's not so good to have already done it. Of course, you can only make them wait for so long, which was why Trump made it clear he would do that at the start of his second term.
People don't want to believe this because they hate Trump. But there's no denying he was unpredictable and that's not something you want from the most powerful man in the world if you are trying to destabilize the world. There's no way Putin invades with Trump in power.
Close advisors to Zelensky have been aware of the incoming invasion since at least 2017. But they could not act, because sounding the alarm would cause mass evacuations. This would have clogged their infrastructure, which would prevent their army from being able to act quickly and basically lose them the war before it had even begun.
It is not a very strong example of a prediction. At most it shows he is well informed.