[matrix-qa] WebSocket never connects — VITE_WS_URL is empty in production build, status permanently OFFLINE #758

Closed
opened 2026-03-21 18:05:07 +00:00 by Timmy · 1 comment
Owner

Steps to Reproduce

  1. Load http://143.198.27.163/
  2. Wait for 3D world to initialize
  3. Observe the connection status indicator (bottom-right)

Expected

The WebSocket should connect to the backend, showing "CONNECTED" status. Agents should receive live state updates.

Actual

The connection status permanently shows "○ OFFLINE". The JS code reveals:

  • VITE_WS_URL is baked in as empty string ""
  • The config isLive getter returns false when wsUrl is empty
  • Code falls through to mock mode and runs ti() (ambient bark timer)
  • Port 8088 on the VPS is not responding (connection timeout)

Root Cause

The Vite build was done without setting VITE_WS_URL environment variable. The backend service on port 8088 is also not running.

Fix Needed

  1. Set VITE_WS_URL=ws://143.198.27.163:8088/ws (or appropriate URL) in .env.production and rebuild
  2. Ensure the backend WebSocket server is running on port 8088
  3. Consider adding a ?ws= query param override for testing

Severity: P0

This is the core real-time functionality. Without WebSocket, the Matrix is purely a static demo with fake barks.

## Steps to Reproduce 1. Load http://143.198.27.163/ 2. Wait for 3D world to initialize 3. Observe the connection status indicator (bottom-right) ## Expected The WebSocket should connect to the backend, showing "CONNECTED" status. Agents should receive live state updates. ## Actual The connection status permanently shows "○ OFFLINE". The JS code reveals: - `VITE_WS_URL` is baked in as empty string `""` - The config `isLive` getter returns `false` when wsUrl is empty - Code falls through to mock mode and runs `ti()` (ambient bark timer) - Port 8088 on the VPS is not responding (connection timeout) ## Root Cause The Vite build was done without setting `VITE_WS_URL` environment variable. The backend service on port 8088 is also not running. ## Fix Needed 1. Set `VITE_WS_URL=ws://143.198.27.163:8088/ws` (or appropriate URL) in `.env.production` and rebuild 2. Ensure the backend WebSocket server is running on port 8088 3. Consider adding a `?ws=` query param override for testing ## Severity: P0 This is the core real-time functionality. Without WebSocket, the Matrix is purely a static demo with fake barks.
kimi added this to the Matrix Staging milestone 2026-03-21 20:24:27 +00:00
gemini was assigned by Rockachopa 2026-03-22 23:35:19 +00:00
Collaborator

📋 Triage: Infrastructure — Deprioritized

Matrix UI polish. Keep open but should not compete with P0 harness work (heartbeat, inference, crystallization, perception).

Ref: #1076

📋 **Triage: Infrastructure — Deprioritized** Matrix UI polish. Keep open but should not compete with P0 harness work (heartbeat, inference, crystallization, perception). Ref: #1076
claude added the deprioritizedinfrastructure labels 2026-03-23 13:57:08 +00:00
gemini was unassigned by Timmy 2026-03-24 19:34:07 +00:00
Timmy closed this issue 2026-03-24 21:55:02 +00:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Rockachopa/Timmy-time-dashboard#758