You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(jobs): treat a webhook reset after a full response as delivered (#259)
`read_status` failed the delivery on any read error, so a server that
sent its complete HTTP response and then closed abruptly — e.g. a Windows
peer resetting the socket (os error 10053) right after `write_all` —
surfaced as "failed to read webhook response" even though the status had
already arrived. This flaked `webhook_http_post_uses_validated_socket_addr`
on Windows CI.
Parse whatever arrived when a read errors: if a terminated status line is
already present the delivery succeeded, so return it; only propagate the
error when no status was read. `parse_status_line` requires a line
terminator so a truncated first line is never misread as a status. The
test server now half-closes (`shutdown(Write)`) and drains before drop so
the client reads the full response before the socket closes.
Adds unit coverage for both the reset-after-response and reset-with-no-
status paths.
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments