Still, this is very interesting, if nothing else it seems like a proof by example that it is possible to fix Haskell's tooling.
By the way, can I suggest prefixing the error codes with something hx-specific, e.g. instead of E0012, maybe HX0012? Makes things more googlable. (Like you can google for SC2154 and get https://www.shellcheck.net/wiki/SC2154 )
jjgreen•3h ago