Date: 2026-06-04 Scenario: tests/test-scenarios.md Scenario 2 Trigger Input: "We need to build a chat app for our B2B SaaS product. Users in the same organization should be able to message each other in real-time. Start with 10,000 users, scale to 1M."
Expected Architecture: WebSocket gateway β message service β Kafka β delivery workers β Cassandra
| Gate | Expected | Status |
|---|---|---|
| WebSocket connection management addressed | Component for WebSocket connection pooling | β PASS |
| Message delivery guarantee stated | At-least-once or exactly-once in NFRs | β PASS |
| Fan-out pattern for group messages | Kafka fan-out to delivery workers | β PASS |
| WebSocket vs polling ADR | ADR comparing latency (real-time vs 30s polling) | β PASS |
| Capacity plan includes message volume | 1M users Γ 50 msg/day = 578 msg/sec | β PASS |
Test Result: β PASS
- Requirements with message durability NFR
- Research finding WebSocket vs polling evidence
- Architecture showing WebSocket servers, Kafka, Cassandra
- Capacity plan: 578 msg/sec avg β 1,734 msg/sec peak
- Storage: ~3.6TB/year for messages
- ADRs: WebSocket vs polling, Cassandra vs PostgreSQL, Kafka vs direct DB
- Complete System Design Document