Enable explicit_mr_work_item_relations by default
What does this MR do and why?
This MR turns on the explicit_mr_work_item_relations feature flag for all users, by default.
This MR also moves the flag file from config/feature_flags/wip/ to config/feature_flags/beta/, and changes the flag type from wip to beta. A wip flag cannot have default_enabled: true. The Feature::Definition#validate_default_enabled! check raises an error for this case, and the Danger feature flag check fails the pipeline. The flag documentation says a wip flag must move to gitlab_com_derisk or beta before anyone enables it by default. This feature already has user documentation, so beta is the correct type.
Rollout status
The flag has never been enabled for the whole instance. The rollout process asks for a global rollout on production, before anyone sets default_enabled: true. Please confirm that the global rollout is done. If it is not done, please agree to do it before this MR merges.
References
- Feature issue: #601590 (closed)
- Backend work item: #601174 (closed)
- Frontend work item: #601588 (closed)
- Merge request that added the flag: !238648 (merged)
Screenshots or screen recordings
This MR changes no UI code. It only changes which users can see the existing user interface.
| Before | After |
|---|---|
How to set up and validate locally
- Check out this branch.
- Confirm the flag file is now at
config/feature_flags/beta/explicit_mr_work_item_relations.yml. - Start your GDK. Do not run any
Feature.enablecommand. - Open a Rails console.
- Run
Feature.enabled?(:explicit_mr_work_item_relations, Project.first). - Confirm the command returns
true. - Open a merge request page in the GDK.
- Find the Work items widget in the merge request sidebar.
- Link a work item with a Closes or Relates to relationship.
- Confirm the link works.
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.