CI/CD "only" for jobs does not work

Summary

With .gitlab-ci.yml in the master branch only: option does not allow for jobs to be run automatically or manually on different branches than the one .gitlab-ci.yml is pushed - in this case the master branch.

Steps to reproduce

Create .gitlab-ci.yml in master branch and try to define job to run only: for some different branch. except: will work, but this is not what I am looking for. I have tested a lot of different variations(refs, no refs, top of the job, bottom of the job) of the documentation here: https://docs.gitlab.com/ee/ci/yaml/#onlyexcept-basic

https://docs.gitlab.com/ee/ci/environments.html#configuring-manual-deployments

Example Project

I can't really, because it is private repo that I am not allowed to share.

What is the current bug behavior?

It is simply ignored - if only: is defined in the job it does not run for the specified branch or for master.

What is the expected correct behavior?

To run the job if there is something pushed to the branch defined in only:

Relevant logs and/or screenshots

Output of checks

This bug happens on GitLab.com

Results of GitLab environment info

Results of GitLab application Check

Possible fixes