Jordan introduced new expiring infractions a while ago, slightly before GT5's release if I'm remembering right. Whether or not an infraction is permanent or expiring is usually based on the severity of the action. It makes "time out" periods a lot easier to manage, that's for sure.
Also, infractions can be reversed; though more often than not, this is used when we've accidentally selected the wrong option (a warning instead of an infraction, or vice-versa).
retroactively expiring individual user's infractions is not a can of worms I'd like to open.