else if?, else es para todo lo demás por lo tanto no debería condicional, solo el else pelado. En este caso es else if.

o podrias dejarlo asi

```
can :manage, all if user.has_role?(:admin)
can :read, all if user.has_role?(:guest)
```

ahí puedes ver.