REST API: MR update returns 200 when assigning Guest user, no assignees applied
# **Summary**
When updating a merge request via the REST API (`PUT /projects/:id/merge_requests/:merge_request_iid`) and assigning members, if the assignee list contains a user who only has the _Guest_ role in the target project, GitLab Enterprise Edition returns `200 OK` but does not assign anyone from the list.
---
# **Steps to reproduce**
1. Use GitLab Enterprise Edition `v18.2.4-ee`.
2. Create a merge request in a project.
3. Send a `PUT` request to the MR endpoint, including an `assignee_ids` list that contains at least one user who has the _Guest_ role in the target project.
4. Observe the response.
---
# **Expected behavior**
* GitLab should reject the request with a proper error code (e.g., `400` or `403`), indicating that one or more assignees cannot be assigned due to insufficient permissions.
---
# **Actual behavior**
* The API responds with `200 OK`.
* No assignee from the provided list is applied to the merge request.
* In the Web UI, such a user cannot even be selected as assignee (they are correctly shown as “cannot merge”), which is the expected behavior.
---
# **Additional notes**
* When the affected user’s role is changed from _Guest_ to _Developer_, the exact same API request works correctly and the assignees are applied as expected.
* This suggests the UI performs proper validation, but the REST API does not return an appropriate error when invalid assignees are included.
issue