WebSocket vs SSE vs polling, reconnection with backoff and jitter, heartbeats, backpressure, message ordering, connection state UI, auth on upgrade, graceful degradation
94
98%
Does it follow best practices?
Impact
90%
1.87xAverage score across 5 eval scenarios
Passed
No known issues
A SaaS company needs a live chat feature for their customer support portal. Support agents use a web dashboard to respond to customer messages in real time. Customers initiate chats from the product's help widget.
Build a Node.js/Express backend and React/TypeScript frontend for the chat system:
Produce the following in a src/ directory:
Server:
src/server.ts -- Express server with real-time messagingsrc/types.ts -- Shared TypeScript typesClient:
src/components/ChatWindow.tsx -- The chat message view for a single conversationsrc/components/ChatList.tsx -- List of active chat sessions for agentssrc/hooks/useChat.ts -- Hook that manages the real-time chat connectionUse Socket.IO or raw WebSocket for the real-time communication. Use in-memory storage for chat data.
Do not include test files, build configuration, or package manager lock files.
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
skills
realtime-web-patterns
verifiers