Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Don't attempt to resolve permissions for invalid roles
This resolves #824. Discord seems to have inconsistencies where a role can be deleted, but there will still be a few users who still have it in their `role_ids`. I was able to find this bug appearing in 11 members of a 10,000 member guild, so it would make sense that this is relatively rare, and it's why we hadn't noticed it previously. Since our permission resolution code is implementation agnostic, it operates on the user's RoleIds collection, which is what Discord sends us directly, and is not vaidated against the member's guild. In our permission resolution code, we make the assumption that Discord will always be telling us the truth with regard to a member's `role_ids`. This PR changes the behavior of permissions resolution to instead verify that the guild was able to return a role before attempting to resolve its permissions.
- Loading branch information