I recommend to raise Exception if Role that is not existing is being added to Subject. My hairs just went gray from debugging. (Everything worked just fine, but not in Capybara tests.) I can write the code for it if authors think it is a good idea.