Wow, some of these changes are pretty bold (eliminating ListT), and I would have off the top of my head guessed higher breakage levels than their estimate in some cases. E.g. does removing * as "type" break basically every GADT-syntax type definition everywhere?
It would be great if the entries in the list each included a very brief rationale for the change. Yes I can see there is a linked document for each one, but that is a lot more reading, when in many cases a one-liner is probably enough.