When it was an open source project, yes. You are correct. Ever since GitLab went commercial, it's been behind a paywall. Apparently you can run runners on self-managed CE so I'm going to look into that.
(GitLab employee but familiar with this because I use it personally as well)
You can always connect your own runners to GitLab, whether SaaS or self-hosted, and whether free/CE or premium/ultimate/EE. GitLab SaaS also comes with free use of the central runners up to a quota. I'm not sure about the history here but as far as I know this has always been the case.
Circa 2013? I remember vividly implementing gitlab at a certain cable company I worked at because they were too cheap for GitHub. I remember sometime in 2012 some merging of worlds of GitLab CI and GitLab.com, it was around that timeframe until 2015 or so when the unofficial runner because official and CI and Repos were merged? You work there, ask the oldest grey beard if this was the case. I could very well be mistaken and have false memory.
you might be right, especially in that time period new features were often EE only initially and then merged into CE. When CICD was first created it was its own software project basically, but it may have required APIs that weren't merged into CE yet. To be totally honest I forgot that CICD was around that early on.
GitLab is still an open source project (the core of it is MIT licensed) and using your own runners has always been an option. Also, free accounts on the SaaS version get free CI/CD minutes as well.
On Gitlab.com you need to input a valid credit card once in order to validate your account, but you can still get 400 minutes on shared runners for free.
This is used to combat abuse and crypto miners, they don't actually charge the card.
You can also connect your own private runner to either the saas or self-hosted gitlab-ce for free, you just have to provide your own runner.