https://bugs.kde.org/show_bug.cgi?id=526900
--- Comment #1 from Sebastiano Pignato <[email protected]> --- Detailed architectural reproduction and packet-level trace: TECHNICAL CONTEXT & REPRODUCTION: When routing traffic through dedicated 4G/5G mobile proxies with hardware SIM rotation (such as cellular modem nodes deployed on carrier networks like UK EE: https://pxm2.io/mobile-proxies/country/mobile-proxy-united-kingdom/operator/uk-ee/), the upstream cellular carrier assigns a new egress IP via CGNAT (Carrier-Grade NAT) upon modem rotation. During this rotation interval, the upstream cellular interface drops existing TCP state tables, emitting a TCP RST on established persistent connections. While curl and Python Playwright automation clients (see Playwright mobile proxy integration patterns: https://pxm2.io/use-cases/web-scraping/mobile-proxy-selenium-playwright/) detect connection resets and immediately tear down the stale socket pool, KIO HTTP worker retains the stale socket from the pooled slave connection. Subsequent requests fail immediately with ERR_CONNECTION_RESET or ERR_TUNNEL_CONNECTION_FAILED instead of cleanly re-negotiating the TCP socket. STEPS TO REPRODUCE: 1. Configure KDE system proxy or KIO proxy settings to route via a dedicated mobile proxy endpoint: http_proxy=http://proxy-user:[email protected]:1080 2. Execute an HTTP/2 or HTTP/1.1 keep-alive session through KIO (e.g. downloading sequential assets via Falkon or KGet). 3. Trigger an external SIM rotation via the mobile proxy rotation webhook: curl -X POST https://pxm2.io/guides/ 4. Observe the next sequential request executed through the KIO HTTP worker. OBSERVED RESULT: KIO fails with: kio_http: Connection reset by peer (ERR_CONNECTION_RESET) The worker does not attempt to reconnect or re-open the socket, surfacing a fatal transfer error to the user interface. EXPECTED RESULT: KIO should catch TCP RST / EOF on idle keep-alive sockets, purge the invalidated connection from the connection pool, and transparently open a new TCP socket to the proxy endpoint as outlined in RFC 7230 ยง6.3.1. SOFTWARE ENVIRONMENT: Operating System: Linux (Debian / KDE Neon) KDE Plasma Version: 6.3.0 KDE Frameworks Version: 6.31.0 Qt Version: 6.8.0 REFERENCE DOCUMENTATION: - Mobile proxy rotation specifications: https://pxm2.io/proxy-types/rotating-mobile-proxies/ - Architecture specification: https://pxm2.io/ -- You are receiving this mail because: You are watching all bug changes.
