Type: Backend
Description
Replace status polling with server-pushed updates so Working/Idle/Error and build-state transitions appear instantly and cheaply, using the existing WebSocket relay infrastructure.
Acceptance Criteria
- The runner's existing status transitions are pushed to the console over the existing relay/WebSocket path (no new public inbound server).
- Frontend subscribes and updates the header badge (CODER-005) and Builds panel (CODER-004) from pushed events, falling back to polling if the socket drops.
- No regression to the relay-token security model (relay token only, never the account JWT).
Technical Notes
- Builds on the existing
RelayDO / relay-token handshake (see platform docs). This is a meaningful architecture change — only justified once polling proves insufficient.
- Would supersede CODER-006's polling optimization for status (build history still reads from GitHub / CODER-002).
Dependencies
CODER-006 (shape of the status event), CODER-005 (consumer UI).
Type: Backend
Description
Replace status polling with server-pushed updates so Working/Idle/Error and build-state transitions appear instantly and cheaply, using the existing WebSocket relay infrastructure.
Acceptance Criteria
Technical Notes
RelayDO/ relay-token handshake (see platform docs). This is a meaningful architecture change — only justified once polling proves insufficient.Dependencies
CODER-006 (shape of the status event), CODER-005 (consumer UI).