Ahh, I see where you are coming from.
Ideal world!
I don't live in ideal world!
I have dumb oafs working for me.
Myself included.
I trust no modal commands if there is not a compelling reason to trust them.
i haven't been presented any compelling reasons yet.

I can't presume that whatever the machine was doing last left in in absolute, or G0.
Could have been something run real quick in another vise in MDI.
Then starting mid program on the programmed part.
Unless there is a demonstrable reason why having G0 and G90 in the G53 Z0. is bad, I don't see the harm.

And I want Z home before any XY motion. There's often 2 parts, and a 4th axis in my machine.
Z home clears them all, always.
So, on my machines, z goes home.

Hand programming, I do things differently.
But 99% of my programming comes out of Mastercam.
It's no skin off my nose for it to post extra, redundant lines.
I'm still tempted to add it after the Toolchange! I see opportunity for an accident without it. (tool on the wrong side of a different part/4th axis/etc... and starts mid program with the called tool already in the spindle.)

If it was there, it would just be a line that did nothing 99.999% of the time... And that's OK. That one time it stops a crash would make a lot of redundancies worth it.

My rudimentary post editing skills make it a lot easier to have a "generic" line that gets dropped in places.
With more post coding skill I'm sure it's possible to have it do more specific tasks at different times
But, I don't have those skills, nor do I have an issue with there being redundancies in my programs..