Workhorse: investigate other wsRoute usages for missing WebSocket upgrade handling

Follow-up from !221988 (merged) (workhorse: Return 400 from /cable without valid websocket upgrade).

Thread: !221988 (comment 3069574738)

Question raised: would other wsRoute usages benefit from similar handling (returning an informative 4xx when the request does not include valid WebSocket upgrade headers), or are there valid use cases that rely on header-dependent route matching?

Task:

  • Audit remaining wsRoute usages / WebSocket routes in Workhorse.
  • Determine which routes should match regardless of headers (like wsRouteStrict) so Workhorse can return a clear 400 (or other appropriate response) when upgrade headers are missing.
  • Identify any existing behavior/clients that might rely on current behavior.
  • If safe, update remaining routes accordingly and add/adjust tests to cover non-upgrade requests.

Context:

  • MR: !221988 (merged) !221988 (merged)
Edited Feb 10, 2026 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading