redhat, redhat_8, redhat_8_0 etc. are missing on RHEL 8. (rhel_8 etc. are defined from os-release).
In switching to /etc/os-release as the primary classification source we will break backwards compatibility if we don't provide aliases.
On Red Hat 8 the contents of /etc/os-release result in rhel, rhel_8, and rhel_8_0 classes being defined, but users would instead have expected redhat.
When resolving classes from /etc/os-release, I suggest that we have some aliases for release_id. For example, rhel would also get redhat defined, so we would expect to see rhel, rhel_8, rhel_8_0, redhat, redhat_8, redhat_8_0.
And for suse which has varying capitalization over time, perhaps multiple aliases, SUSE and SuSE.