I agree. In my current game, the reasons for several battles have gone awry---the enemy civ lost a crucial number of players, lost a wonder due to counter-building by another civ, or the civ jumped ahead to Gunpowder (gaining a 20X strength advantage). Those made the war fruitless, by eliminating the object of the war.
I think instead there should be a very short timer (say 4 hours) with the Defense minister and the King each having the option to forestall the attack and additional number of hours to let more people insert their forces into the battle. Also the King and Defense minister should have the option of canceling a war, if they both agree to do so by a vote.
4 hours is way to short. It use to be 10, and I think 10-12 hours is a good number for the start of war. That will usually be enough time for active players (who sleep or work) to have time for real-life stuff before getting on-line and seeing the war.
If it was 4 hours - well I would like that as a single-player civ since I would stalk the "biggest" civs, see what times their players play - and start & win wars while all the "best" players slept. (of course they would take it right back as I slept - so I guess I wouldn't like that part of it.)
Anyway - 20 hours is WAY too long (which I think is still 24-26 hours with the still broken timer that can't count to 20 hours). 10-12 hours (REAL HOURS) would be perfect in my opinion.