Files
dotfiles/common/claude/memory/-home-connor/caddy-2116-http1-stream-cut.md
T
2026-11-02 09:58:48 -05:00

1.2 KiB

name, description, metadata
name description metadata
caddy-2116-http1-stream-cut Caddy 2.11.6 cut HTTP/1.1 streamed responses to POSTs at exactly 60 s (OpenCode ECONNRESET); fixed by upgrading to 2.11.7 on 2026-10-29
type
reference

Caddy 2.11.6 added a default 1-minute idle read timeout that cancels an HTTP/1.1 response still streaming 60 s after the request body was read (caddyserver/caddy#8103). Through llm.rcjohnstone.com this ended every LLM stream longer than a minute: OpenCode (HTTP/1.1) reported ECONNRESET and retried, Caddy logged aborting with incomplete response ... reading: context canceled, and Strata logged disconnect, cancel=True at 60 s. HTTP/2 clients were unaffected. Fixed by recreating connor_caddy_1 on 2.11.7.

Ruled out first, all measured: Caddy write and read_header timeouts (no change), LiteLLM (177 s stream fine over HTTP/1.1 direct), Strata, the network (the cut reproduced from mainframe itself with curl --http1.1).

How to apply: a stream that dies at exactly 60 s through Caddy is this, not the model. Test with curl --http1.1 and --http2 before anything else. Caddy floats on caddy:latest and podman-stack-update refreshes it weekly, so a regression can arrive the same way.