Since their introduction in Mailman 2.1.4, header_filter_rules have always been processed before any other tests except the legacy spam filters in mm_cfg.py KNOWN_SPAMMERS.
Perhaps you are confusing header_filter_rules with the legacy bounce_matching_headers which are not tested until after membership and moderation.
Since their introduction in Mailman 2.1.4, header_filter_rules have always been processed before any other tests except the legacy spam filters in mm_cfg.py KNOWN_SPAMMERS.
Perhaps you are confusing header_filter_rules with the legacy bounce_ matching_ headers which are not tested until after membership and moderation.