Draft: Map api/client-go MRs to the gitlab-api-client-go roulette key

What does this MR do and why?

Problem: Community MRs on gitlab-org/api/client-go get a review-request note that pings a random available MR coach instead of the project's own reviewers/maintainers (example: this note).

Root cause: SuggestedReviewerService#project_key derives the roulette key from the last URL path segment (client-go), but team members register this project under its gitlab-com/www-gitlab-com projects.yml entry key, gitlab-api-client-go. Three members currently list gitlab-api-client-go: maintainer in their team member files (@fforster, @timofurrer, @PatrickRice), but because no candidate's projects hash contains a client-go key, the service finds no eligible reviewers and falls back to TeamMember.random_available_coach.

Fix: Add 'gitlab-org/api/client-go' => 'gitlab-api-client-go' to PROJECT_KEY_OVERRIDES, following the pattern established for the gitlab-org/charts projects. A new spec covers the mapping.

Screenshots or screen recordings

Before After
project_key('https://gitlab.com/gitlab-org/api/client-go')client-go → no eligible reviewers → random MR coach pinged gitlab-api-client-go → matches the project's registered maintainers

Validation steps

  • New spec in contributors/spec/services/suggested_reviewer_service_spec.rb: "maps api/client-go to the gitlab-api-client-go roulette key" (bin/rspec contributors/spec/services/suggested_reviewer_service_spec.rb).
  • Key-derivation logic verified in isolation with the new override (including trailing-slash handling and the existing charts/monolith cases).
  • I could not run the app's RSpec suite locally before opening this MR; relying on CI for the full run.
  • After deploy, a new MR in gitlab-org/api/client-go should suggest one of the registered gitlab-api-client-go maintainers instead of an MR coach.

Note: other nested projects whose projects.yml key differs from their last path segment would have the same mismatch if team members register them. None others have been reported; they can be added to PROJECT_KEY_OVERRIDES the same way if they surface.

/cc @leetickett-gitlab

Merge request reports

Loading
Loading