The bare `except Exception` in HTTPSource.discover() silently swallowed all errors from HEAD requests — including configuration errors (bad auth, invalid headers) and programming errors (TypeError, AttributeError) — treating them identically to network failures by emitting UPSERT with no revision. Narrow the catch to httpx.TransportError (the umbrella for ConnectError, TimeoutException, etc.) and add a debug log. Other exceptions now propagate to the poller's circuit breaker where they surface as failures instead of being silently retried forever. |
||
|---|---|---|
| .. | ||
| api | ||
| pollers | ||
| queue | ||
| sources | ||
| workers | ||
| __init__.py | ||
| app.py | ||
| cli.py | ||
| exceptions.py | ||