Add ability to associate feature flag with contextual issue
Problem to solve
Our feature flag list interface is nice, but it may be unclear what a feature flag was just by reading the name. Typically this will be an operations person coming in and looking for a feature flag and wanting to understand what they are looking at.
From the issue side, we can make it clear what the status of the associated feature flag is for that feature.
The combination of these two would make it easy to understand what feature flags are for and what the status of an issue is as it relates to feature flags.
Target audience
- Sidney, Systems Administrator, https://design.gitlab.com/research/personas#persona-sidney
- Product Manager (or others who are setting or need to know the state of feature flags)
Further details
Future phases: Once we connect between the feature flag and the associated issue we can further enhance the transparency by adding the environment on which the feature flag is enabled and later on the % rollout. After that we can enable the user to click on the feature flag from the issue to change its settings and vice versa, the environment will list the associated flags within it (already exists) and a list of the related issues that can be clickable as well.
Proposal
Allow users to be able to map a given feature flag to a change that introduced it. This could be linked to from various places where we show the feature flag (issue, mr, epic), adding important context.
UX Proposal
Associate a feature flag on issues by mentioning
- Feature flags can be mentioned/linked in the description and comments to add relationship
- Mentions can be made using a link to the feature flag
- References across projects can be made with links and should be displayed with shortened links(ie gitlab-ce^89012)
Feature Flag Detail screen
Add section for related issues
- Issues can be added by using the '+'
- If there are no related issues, still show the component (empty state)
Future Issues
Mentions with auto-complete: #212772
- Mentions can be made using the
^
symbol - Issues can be added by mentioning/linking in the feature flag description-
- When editing description/comment entering
^
should bring up an autocomplete list with available feature flags.
Description | Mockup |
---|---|
Feature flag details |
TODOs
-
1 for the widget -
1 for state management (loading the mentions) -
1 for related feature flags box on the issue side -
1 for the table (I think we only need a table for the linking widget - I think mentions may work with the existing db schema, but I'm not 100% sure) -
1 for CRUD operations for the widget -
documentation
What does success look like, and how can we measure that?
Amount of clicks from issue to feature flag and vice vera