Skip to content

Display custom role names on projects dashboard

What does this MR do and why?

This MR enhances the project dashboard to display custom role names instead of generic access level labels (Guest, Developer, Maintainer, etc.) when users have custom roles assigned.

  • Adds a new humanAccess field to the maxAccessLevel GraphQL type that returns the custom role name when available
  • Implements role resolution logic that prioritizes direct project memberships over inherited group memberships

References

Screenshots or screen recordings

Before After
Screenshot_2025-09-18_at_7.35.53_PM Screenshot_2025-09-18_at_6.01.51_PM

How to set up and validate locally

Scenario 1

  1. Create a custom role and assign it to a user in a project.
  2. Navigate to http://gdk.test:3000/dashboard/projects
  3. Confirm that the custom role is correctly displayed.

Scenario 2

  1. Create a custom role and assign it to a user in a group.
  2. Navigate to http://gdk.test:3000/dashboard/projects
  3. Confirm that the custom role is correctly displayed.

Scenario 3

  1. Keep the user as a member at both the group and project levels.
  2. Navigate to http://gdk.test:3000/dashboard/projects
  3. Verify that the direct project membership role takes precedence and is visible.

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.

Related to #474430

Edited by Ayush Billore

Merge request reports

Loading