Season 7 should have been about taking Kings Landing
And Season 8 should have been about the battle with the dead.
The writers messed this up - you must have the battle of Kings Landing before the battle with the dead, because if you lose the battle of the dead there is no battle for Kings Landing - when ep3 is the battle with the dead, and ep 5 is the battle of KL, we already knew that Jon would defeat the dead, no real drama there.
That whole idea of bringing a "dead" person to show Cersei was beyond bad writing - a logically flawed storyline.
Also, Dany had 3 dragons, Cersei didn't have any Scorpions, only that old one in the basement. She could have easily taken KL and used the Lannister army to help fight the dead.
In Season1 ep1 we first learn of the blue eyed "dead" - and the show should have ended with the defeat of the dead.
Dany should have been Queen, and Jon King of the North.