Besides technical reaosns, it could be to avoid bait-and-switch schemes, where a lot of engagement is built around one headline, and then it's changed to something with a completely different meaning.
I think it twitter's case it was architectural. By treating tweets as immutable the could publish them on a pipeline and not worry about duplicate copies around the system being out of sync.