Thanks for the updates. Unfortunately, most of the changes discussed in #2126 §3 are still missing. Sorry, if my explanations weren't detailed enough … I tried to clarify what's missing in some comments. The filter that comes closest to what is needed here is the Filters.dice, maybe have a look at that :) If you have questions, feel free to reach out on TG.
Finally, recalling @Poolitzer s idea, I think it would be good to add an attribute Filters.groups (plural) for both super- and normal groups to chat_type
PS: Just writing down a thought as "fyi": I had the idea that one could also make the chat-type filters attriubtes of Filters.chat, which filters for specific chat ids. That would have the benefit that we don't have a Filters.chat_type which admittetly has a small use case. However, Filters.chat is already quite complex and I fear that users might get confused about what it acutally filters for. Keeping filtering for ids and types separate is probably better.