Yeah this is a major pain. The reason for this being the way it is is that the compiler is not designed to continue when it encounters a type error. This is because it wouldn’t be able to type check after the type error in a “honest” way.
Good news is we’ve actually prototyped a way of making this work, by having a mode in the compiler that the editor can use, where we tell the type checker to pretend that the type error didn’t happen, and pretend it type checked successfully. This solves this issue for the editor, while letting the regular compile mode work as it does now (strict).
I fully agree this is terrible and that it’d be a huge QoL improvement to fix this. With a little luck it’s something we’ll be able to land before v12 ships, and if not we can hopefully land it close after.