For questions about badges which have been revoked (maybe even mysteriously) and under what circumstances badges are revoked.
Normal badges are never revoked automatically. Once you earn it, you keep it forever. There are certain exceptions which could cause a manual revocation of badges.
When your account gets merged with another account, the badges get re-awarded, so if you no longer meet the criteria for a certain badge, you won't receive the badge again.
Tag badges are automatically revoked when you no longer qualify for the badge or the tag no longer qualifies to have badges under it.
Sometimes the Stack Exchange development team causes malfunctions which cause the badge to be awarded erroneously, in which case they will revoke those badges.