Differentiate better between fork and non fork merge requests
Problem to solve
As a developer, I want to know if I am looking at a merge request originating from a fork project, so I more easily discover if a merge request is ready for merging or to expect additional tests from needing to run first probably invalidating a merge request from merging as the merge request has not been tested for those yet.
A forked merge request pipeline is often limited in its access to for example ci variables for security reasons. This means certain tests and jobs that have been setup to make sure the code is mergable can often not be run.
#217451 (closed) will implement a feature to make it possible to run this code on the parent project as a normal pipeline. However, it is not easy to currently discover if you are looking at a forked merge request, that potentially has pipelines run by a project member or not.
Intended users
User experience goal
When first looking at the merge request we want to make it very easy to recognize you are in a merge request originating from a forked project including what that means for this merge request.
Proposal
Merge request title bar improvement:
Text Mockup (Figma document) | Badge Mockup |
---|---|
![]() |
![]() |
Merge request widget "request" section:
Badge mockup (Figma document) | Icon mockup |
---|---|
![]() |
![]() |
Merge request widget "merge" section (Clearer additional alerts and info):
Old | New (Figma document) |
---|---|
![]() |
![]() |