Why does Hibernate ORM uses DATETIME by default on MySQL instead of TIMESTAMP

What! Okay, thank you, I was not aware of that sillyness on MySQLs part. DATETIME is indeed the “better option” then, even though not ideal (because you have to make sure to always convert to UTC before storing).
But that explains it. Another thing to add to the list of MySQL quirks to randomly bash on.

Closed!