Page MenuHomePhabricator

UserGroupManager/PermissionManager cyclic dependency
Open, MediumPublic

Description

After Autopromote logic is moved into UserGroupManager, it would require PermissionManager in order to find out if the user is a bot. PermissionManager would depend on UserGroupManager for getting user groups for permission verification.

I propose to split group permission methods into GroupPermissionLookup service, separate from PermissionManager. That would allow to break the circular dependency.

Event Timeline

Pchelolo created this task.Jun 4 2020, 11:45 PM

UserGroupManager also needs access to PermissionManager's cache reset method, which is currently passed as a callback to avoid such a dependency, but that should be handled separately (eg with a dedicated central caching service)

Pchelolo triaged this task as Medium priority.Jun 15 2020, 3:40 PM
Pchelolo moved this task from Ready to Later on the Platform Team Workboards (Clinic Duty Team) board.
DannyS712 moved this task from Unsorted to Others on the User-DannyS712 board.Jul 1 2020, 7:05 AM