I would simplify this to
```ruby
host.reports.order("reported_at DESC").any? do |report|
  fail('...') if report_failed?(report)
  report_change?(report)
end
```