Right. So maybe we could do the following which I consider more readable (there is no need to coerce to a bool as the `&&` operator already returns one).

```ruby
def local?
  external_source && (external_source[:path] || external_source[:local])
end
```

I generally tend to avoid rescue calls because I prefer to fail fast. For example the `#external_source` implementation might change and this would shadow any bug happening inside.