Definitely. Here's the output _with_ the above change:

    irb(main):004:0> Host.new(:name => "foo", :type => "Host::Discovered").type
    => "Host::Discovered"

But with the original version of the file:

    irb(main):006:0> Host.new(:name => "foo", :type => "Host::Discovered").type
    RuntimeError: Invalid type Host::Discovered
    from /home/greg/github/foreman/lib/foreman/sti.rb:10:in `new'
    from /home/greg/github/foreman/app/models/host.rb:11:in `send'
    from /home/greg/github/foreman/app/models/host.rb:11:in `method_missing'

I think it might be because of eager-loading in the development Rails environment - no Host::Discovered object has yet been loaded, so the type doesn't exist yet.... thoughts?