Show subgroup projects in the DORA projects comparison visualization
What does this MR do and why?
Updates the DORA projects comparison panel to use the new GraphQL resolver implemented in #507722 (closed). This will allow us to fetch DORA data for all projects in subgroups, while bypassing projects with no DORA data. This will reduce the number of requests required to paginate the data and render the panel, which was causing slow load times in large groups.
References
Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
| Before | After |
|---|---|
![]() |
![]() |
How to set up and validate locally
- Mock DORA metrics for a project within a subgroup
[
[1.month.ago, 5, 1, 5, 2],
[2.month.ago, 10, 3, 3, 3]
].each do |date, deploys, lead_time_for_changes, time_to_restore_service, incidents_count|
Dora::DailyMetrics.create!(
deployment_frequency: deploys,
lead_time_for_changes_in_seconds: lead_time_for_changes * 1.day.to_i,
time_to_restore_service_in_seconds: time_to_restore_service * 1.day.to_i,
incidents_count: incidents_count,
environment: Project.find(PROJECT_ID).default_environment,
date: date
)
end
- Navigate to the Value streams dashboard for the parent group (ex. http://gdk.test:3000/groups/flightjs/-/analytics/dashboards/value_streams_dashboard)
- Find the
Projects by DORA categoriespanel and ensure the subgroup project DOES NOT appear in the list of projects - Enable the
dora_projects_comparison_subgroupsfeature - Reload the panel and ensure the subgroup project DOES appear in the list of projects
Related to #523240 (closed)

