A revoked api key or missing topic returned by GET /v1/.../stream used to throw inside the catch and bounce through the backoff loop forever. Now any 4xx response terminates the loop and surfaces the status + body in the panel error so the user sees the real cause. 5xx and network errors still reconnect. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>