The argument I've always heard for this was issues with code, not the event. If for a period of time you have a bug in your code, with event sourcing, you can fix the bug and replay all the events to correct current projections of state.
One - bake whatever happens into your system permanently, like 99% of all apps, and disallow corrections.
Two - keep the events around so that you can check and re-check your corrections before you check in new code or data.