Red Hat bringing CentOS in-house (well before IBM entered the picture) was IMO one of the first in a string of expedient decisions that were... unfortunate. When I was at Red Hat I loudly argued against some of the ways things were handled but I also understand why various actions were taken when they were.
I'd also argue that CentOS classic was mostly bug for bug compatible but probably close enough for most. It shared sources but did use a different (complex) build system as I understand it.
That closeness allowed CentOS to be a drop-in replacement for RHEL for thousands of installations and exotic hardware combinations. Unfortunately, we don't have this capability anymore. Rocky bears most of that load now.
Despite being a debian/ubuntu guy, I usually used CentOS for production deployments because it would be easy and seamless to upgrade to RHEL when I hit the big leagues.
Not anymore. I just use the latest ubuntu LTS and call it a day.
IBM/RedHat was soo predictably short sighted on this.
So you say "it would be easy and seamless", but did you ever actually do it and upgrade to RHEL? Because most people throw that out as a supposed sales pipeline that was lost, but the real life metrics indicate that almost never happened.
The free LTS/distro and pay for support if you feel like it never really worked financially. Maybe Canonical is profitable at this point. It's not Red Hat (or SUSE for that matter.)