Merge requests for confidential issues no longer works for newly forked projects
According to https://docs.gitlab.com/ee/user/project/issues/confidential_issues.html#merge-requests-for-confidential-issues, we introduced merge requests for confidential issues in GitLab 12.1. In GitLab 12.6, in https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20466, we changed the behavior to remove a fork from the fork network when the visibility decreased. This breaks merge requests for confidential issues because this feature makes an API call that requests forks that have: 1. Merge requests enabled 1. User has an access level of developer 1. The forked project has to be **Private** For example, @clefelhocz1 forked `gitlab-com/www/gitlab-com`, a public project. Then he changed the visibility to `Private` so that it would come up in the list of private forks. However, the dropdown for the list of private forks came up empty. We checked that `https://gitlab.com/api/v4/projects/gitlab-com%2Fwww-gitlab-com/forks?with_merge_requests_enabled=true&min_access_level=30&visibility=private` came up empty. We confirmed that the project is no longer a fork: ```ruby [ gprd ] production> proj = Project.find_by_full_path('clefelhocz1/www-gitlab-com') => #<Project id:20784253 clefelhocz1/www-gitlab-com>> [ gprd ] production> proj.forked? => nil ``` However, since I forked this project before this 12.6, I can still create merge requests for confidential issues. from: @clefelhocz1 Steps to reproduce: 1. Open a confidential issue 1. Click Create confidential merge request button 1. Since you can't select a project click "fork this project" 1. Select namespace (I chose mine) for forking repo 1. Once project is created, select settings->General->Visibility and set it to "Private" 1. Return to confidential issue, reload page and see that the project is still not available to select for a confidential MR. /cc: @jramsay
issue