Ensure WebSocket reconnect attempts do not continue indefinitely
Ensure WebSocket reconnect attempts do not continue indefinitely

# For some reason we can't access the HTTP error that causes the WebSocket
# "Abrnormal Closure" error, and annoyingly that error is also sent when
# the router restarts. Ideally we'd immediately abort on an HTTP 502.

ucam-cl-dtg/isaac-app,ucam-cl-dtg/isaac-app,ucam-cl-dtg/isaac-app,ucam-cl-dtg/isaac-app