Update ProjectPolicy to use max_member_access_for_user for lookup_access_level

What does this MR do and why?

GroupPolicy and ProjectPolicy currently call different methods for looking up access levels, which causes inconsistent admin handling so this MR standardizes ProjectPolicy to use max_member_access_for_user (same as GroupPolicy) so we have a consistent method signature and can consolidate this code in the future.

** Note that this made tests fail that assume admins cannot perform certain actions but admins can already add themselves as owners anyway so admins should logically have owner-level access so these are incorrect test assumptions I have fixed them in this MR **

References

https://gitlab.com/gitlab-org/gitlab/-/work_items/583655

Screenshots or screen recordings

Before After

How to set up and validate locally

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.

Edited by Diane Russel

Merge request reports

Loading