module Alchemy
  module Solidus
    module AlchemyUserExtension
      def spree_roles
        if admin?
          ::Spree::Role.where(name: 'admin')
        else
          ::Spree::Role.none
        end
      end
    end
  end
end

module Alchemy
  module Solidus
    module AlchemyUserExtension
      def self.included(klass)
        klass.include Spree::UserMethods
      end

      def spree_roles
        if admin?
          ::Spree::Role.where(name: 'admin')
        else
          ::Spree::Role.none
        end
      end
    end
  end
end

Include Spree::UserMethods in Alchemy::User extension
Include Spree::UserMethods in Alchemy::User extension

Without that the Alchemy::User is no proper Spree.user_class
