The change in #2270 accidentally broke how we access module types. module<Impl>::TYPE always points to the module superclass and it thus accesses its empty TYPE field. This mainly broke legacy action handling. Ref #2270