Show approval status in merge request search list

What does this MR do and why?

This merge request adds the approval badge to each row of the search list. Approval data loads in a separate query, so a timeout fetching approvals cannot stop the merge request list from rendering. The main query reads the result back through client-side fields, matching how the project and group merge request list pages already work.

It also adds an EE query variant that returns the required and outstanding approval counts.

References

Split from !252201 (closed)

Part of a stack:

  1. !252305 (merged) - feature flag and backend enablement
  2. !252306 (merged) - Vue search list
  3. !252307 (merged) - remaining filter tokens
  4. !252308 (merged) - row details
  5. !252309 (merged) - (this merge request) approval status

Screenshots or screen recordings

Before After

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.

Edited by Phil Hughes

Merge request reports

Loading
Loading