When the rate limit, ban, or event-lock check fired before the multipart
body was consumed, the HTTP keep-alive connection was left in a bad state.
The next request from the Vite proxy then received a connection reset,
causing cascading "Netzwerkfehler" / empty-body 500 responses.
Fix: call drain_multipart() before every early return in the upload
handler so the connection remains clean.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>