Repository navigation
fix(frontend/backend): unify WebSocket URL to /api/ws in ssot-config and frontend-config endpoint (#6232) - #6271
Merged
Merged
Conversation
…onfig (#6232) - ssot-config.ts websocketUrl getter: add /api prefix; in HTTPS drop the explicit port (routes through nginx on 443) to avoid mixed-content browser blocks; in HTTP dev keep :${port.backend} for direct access - frontend_config.py fallback websocket.url: add /api prefix - autobot_shared/network_constants.py get_websocket_url(): add /api prefix Fixes LiveEventService flooding console with reconnect timeouts caused by connecting to wss://host:8001/ws/live instead of wss://host/api/ws/live. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…and frontend-config endpoint (#6232) - ssot-config.ts websocketUrl getter: /ws → /api/ws so LiveEventService dials ws://host:8001/api/ws/live matching the backend route registered at /api/ws/live - ssot_config.py websocket_url property: same path correction + wss:// when backend TLS is enabled - system.py _build_frontend_services_config: add websocket.url key so /api/frontend-config exposes the canonical WebSocket base URL at runtime Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This was referenced Apr 27, 2026
mrveiss
added a commit
that referenced
this pull request
May 2, 2026
…6727) #6718 changed `${config.websocketUrl}/live` → `${config.websocketUrl}/ws/live` under the assumption that `websocketUrl` was bare (`wss://host`). It isn't. Per the getter in ssot-config.ts and #6271 ("unify WebSocket URL to /api/ws"), `websocketUrl` already ends in `/api/ws` — so the change builds `wss://host/api/ws/ws/live`, which 404s every connection. Reverting to the original `/live` suffix. Final URL is `wss://host/api/ws/live`, which matches the backend handler at api/live_events.py:125 (router included with empty prefix in core_routers.py:311, FastAPI app prefix /api). The Chrome 'WebSocket error: Event' that motivated #6718's URL change was the auth-token issue from #6692 (fixed by #6705 already on Dev_new_gui). The URL itself was always correct; only the missing JWT was the problem. Adding a stale comment to the getUrl helper to prevent the same mis-fix recurring. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ssot-config.tswebsocketUrlgetter:/ws→/api/ws(matches backend route/api/ws/live)ssot_config.pywebsocket_urlproperty: same path correction + addwss://support when TLS is enabled_build_frontend_services_configinsystem.pyso frontend can validate its build-time value at runtimeTest plan
/api/wspath (not bare/wswhich 404s)GET /api/frontend-configresponse includesservices.websocket.urlwss://URL whenbackend_tls_enabled=TrueCloses #6232
🤖 Generated with Claude Code