GitOps vs GitLab CI/CD workflow

Hi there

derived from the documentation, Connecting a Kubernetes cluster with GitLab | GitLab), one can select between push-based (=CI/CD workflow) or pull-based (=GitOps workflow) approach.

I prefer the push-based approach. Following the documentation related to the push-based approach there is an hint
“You do not need to have a runner in the cluster with the agent.”

However, without a runner in Kubernetes (beside the agent), jobs in the pipeline remain in pending state with message “This job is stuck because you don’t have any active runners online…”
When I add a runner in Kubernetes and assign it to the project the chain is working.
Back to my question, what exactly does that mean “You do not need to have a runner in the cluster with the agent.”

Any help would be appreciated.

Thank you