Some project members are not included in the new assignees dropdown

This is a follow up issue for #328374 (closed) - it seems we have again absolutely the same problem.

I cannot assign people which are members of added groups. In my case, I cannot assign @klarapechalova to https://gitlab.com/gooutnet/issuetracker/-/issues/35337 even though it worked on friday.

Once the person is tagged in the comments, it starts working again.

UPDATE: the problem is that MembersFinder used to find all members which are visible by the current user doesn't take into account current user's membership inheritance (details in : #331122 (comment 577090906))

This is reproducible locally with similar steps reported in #331122 (comment 576982702):

  • create a private project group/project and group group/sgroup
  • add userX to group/sgroup members
  • add userY to group
  • log in as userY and go to an issue in group/project
  • after clicking on assignees list, userX is missing

The reason is that the current query to get all possible assignees filters out members which are not visible to userY - because public_or_visible_to_user method skips membership inheritance, it doesn't recognize that userY can actually see members in group/sgroup because it inherits access from group.

Edited May 19, 2021 by Jan Provaznik
Assignee Loading
Time tracking Loading