I don't follow. Yes, Host::Base.find(id of a managed Host)) will return a managed host, that's fine. But unless we add a specific exception for find_by_name to app/model/host.rb, the only place we can change it is in method_missing, and we can't redirect _all_ missing methods to Host::Base as it has very little of the Managed Host logic. So, are you suggesting I should add find_by_name explicitly to host.rb?