**Bug**
When connecting to an external feed, error handling only looks at the HTTP status code. Some feed endpoints respond with **HTTP 200** while the body contains an error payload, e.g.:
```json
{"Error":"Login Declined"}
```
This is currently treated as a successful fetch.
**Expected:** The response body should be inspected. A payload containing an error indicator (e.g. an `Error` key, or a body that doesn't match the expected feed schema) should be surfaced as a connection/auth failure, with the upstream message shown to the user.
**Actual:** HTTP 200 is accepted as success, so the feed appears connected while returning no usable data β and the real cause ("Login Declined") is hidden.
**Suggested fix:** Validate the parsed response against the expected feed schema on ingest, and fail with the upstream error message when the payload is an error object rather than feed data.