Investigation: Code Quality performance with multiple reports
The Code Quality feature currently supports ingesting multiple codequality
artifacts. However, they only are usable in the MR widget, and can't be used in the full pipeline report (#9014 (closed)) or in the diff view (#328257 (closed)).
A previous effort got to the feature-flag rollout stage, but was held back for backend performance reasons. #340525 (comment 752188789)
- This flag controls whether to use REST or GraphQL.
- GraphQL API has better semantics (multiple reports).
- Enabling the flag would allow us to stop using the REST API for frontend features. For example, mapping severities to icons could only be implemented in GraphQL.
The goal of this issue is to investigate the current extent of the performance issues and system design to identify what steps we need to take to unblock the multiple-reports feature. The intended output could also include suggested system designs.
There are at least two internal use cases for this feature (#355051 (comment 877306046), gitlab-docs#1088 (moved)) as well as those tagged onto the existing issues.