I think this is a good change. It is true that these properties can be undefined - in fact they are even set to undefined explicitly. So the typings are not correct as they stand.

I agree that this would break compilations in many projects. That being said, it is actually a real problem and the errors will be easy to fix. We could probably write a migration that marked these properties with `!` or `?` but I worry this could then hide the problem.

I would like to see the results of a presubmit.