Nil error on ActiveRecord::save!

Not really but you can test stuff before trying to save it: unless self.user.nil?

You can't access user.errors to find the validation that failed if
user doesn't first exist.

Thanks, but as I said in my post, the user does exists (I have
the user object as shown by ruby-debugger).

There should be a backtrace in the logs/console when your error
occurs. That should guide you on your way.