🧪 Spike: Add Severity Levels to GitLab Detective Check Results in Web Viewer
GitLab Detective checks currently either "pass" or "do not pass". The impact of the checks that did not pass can vary in impact.
Quoting @bcarranza on Slack:
When we say "this check did not pass" -- how sure should we be that the customer will have A Problem as a result? I think that checking for unsupported operating systems is a good example of what I am trying to inquire about here. If one of those checks does not pass, that "just" means you are using an old operating system. That feels very different from a check that involves data loss not passing.
As we increase the number of checks (#27), it might be good to introduce a notion of severity to each check. This will help folks to prioritize the results of a report generated by GitLab Detective. Some of the checks that did not pass will need attention sooner than others.
✍️ Proposed Approach
For this issue, @e_munn and I discussed just mocking up the requisite changes to the Web viewer (#16, !103 (merged)) to support severity. This work and feedback from customers will help to inform the next steps.
🎚️ Severity Levels
Elif and I discussed that we should use the severity applied to the issue that a particular check is about by default.
- We should also have the ability to set a severity in the check file. This is helpful to override the default severity. This is also good for situations where there is no corresponding issue or when the corresponding issue doesn't have a severity.
Proposed Web Viewer Mock-up Requirements:
These are considerations. We don't need to implement them all in the first pass.
- Display severity for each check result
- Visual differentiation between severity levels (consider color coding, icons, or badges)
- Ability to filter/sort checks by severity
- Clear legend explaining what each severity level means
- Severity should be prominent but not overwhelming in the UI
✅ Acceptance Criteria
-
Mock-up shows severity indicators for individual check results -
Mock-up demonstrates how severity levels are visually distinguished -
Mock-up includes filtering/sorting by severity -
Design follows existing GitLab UI patterns and accessibility standards -
Mock-up shows how severity information helps users prioritize actions
Additional Considerations
- Accessibility (not relying solely on color)
- Future scalability as we add more checks