Add Labels as a facet in Advanced Search
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.
Problem to Solve
Labels are a common way users filter down lists of Issues/MRs/Epics, but it is not currently possible to do this from the global search results page.
Proposal
Add Labels as an available facet in Advanced Search. See designs below for link to Figma specs and interaction details.
Details to solve
1. Aggregations
The proposed solution is that we only display label options that are based on the results that come back from the search utilizing Elasticsearch aggregations. Since aggregations have yet to be used in Global Search, we will need to perform some testing to ensure it is performant. Additionally, Basic searches won't be able to handle aggregations well, and we need to understand what sort of an impact it would be on performance to provide options based on the results of the search (discussion here).
Proposed solution:
- Testing needs done to determine whether aggregations will be performant on Advanced/Elasticsearch.
- We need to investigate whether or not we can get simulate aggregations for Basic search as well.
2. Duplicate Labels
How do we want to handle duplicate labels within results, which can occur at the group level as well as once we implement multiple project selection? Today, on the issue list filter within a Group issue list, we show all labels and do not combine ones that are the same. Example can be seen below. Since a user isn't able to obtain details about which Project each label comes from, it becomes difficult to discern which label is for which project (unless there is a known color difference).
Proposed solution:
One possible way to indicate what project a label is associated to without having it exposed all the time would be to utilize the title
attribute (design here). You can see a similar example below where we use the title
attribute to show full paths for project paths within our Projects dropdown.
Project title attribute example
Duplicate labels in Group issue list
/cc @JohnMcGuire