Problem
Title::userCan(), Title::getUserPermissionsErrors(), and User::isAlowed() accept an $action parameter, which is the result of Action::getRestriction() not Action::getName(). Therefore, the parameter name / documentation implies that it accepts the name of an action, when in reality it accepts a user right.
Solution
Change the parameter name (and documentation) to be $right or $restriction or $permission to better indicate what the method(s) accept.