>>28217293Probably not a popular opinion, but I always felt attack Types have a different philosophy from body Type, which is why weaknesses and resistances don't always match up. (i.e. Fairy resists Bug attacks but Fairy attacks aren't SE against Bugs).
(Pic related is which types matchups ARE symmetrical)
In that case, I would consider the types to be a bit more philosophical: Flying is SE against Fighting because the high ground is better in a fight, Flying is SE against Grass because birds dwell and heavily influence plant ecosystems, Bug, Dark and Ghost are SE against Psychic because people are afraid of those things, etc.
Might just be game flow, though. They put Normal types in the earlygame because they are neutral to Grass/Fire/Water, then they introduce Fire > Bug > Grass early, and Flying acts as a gateway for the Flying>Fighting>Rock trio, etc.