This is an awesome guide, but with mix dialyzer taking that long I'm curious: are you caching your PLTs? And if so, why not?
I've worked on some pretty huge Elixir apps, and I've seen the dialyzer take that long on the first run, but once the PLTs are cached it usually takes only a minute or two even in GH Actions