AOSSIE-Org / AOSSIE-Org/DebateAI
[BUG]: Opponent video does not reliably appear in 2v2 team debates
- Lingua principale
- TypeScript
- Stelle
- 84
- Fork
- 198
- Merge medio
- 2g 19h
- PR unite (30g)
- 30
Descrizione
### Bug Description
In a 2v2 team debate, participants can successfully join the same room, but one or more opponent video streams do not appear.
The participant cards are displayed correctly, but the remote video remains blank. The issue may depend on the order in which users join. A video connection can also disappear permanently after a temporary network interruption.
The WebRTC offer can be sent before the target participant is online. That failed offer is marked as initiated and is not retried when the participant joins.
### Steps to Reproduce
1. Create two teams with two members each.
2. Start a 2v2 team debate.
3. Open the debate using four different accounts.
4. Join the room sequentially from different browsers or devices.
5. Allow camera and microphone access for every participant.
6. Observe the opponent-team video cards.
7. Temporarily interrupt one participant's network connection and reconnect it.
8. Notice that one or more remote videos remain blank or do not recover.
### Logs and Screenshots
https://github.com/user-attachments/assets/78cb8725-fa5d-4135-936a-9295ad5f5076
### Environment Details
- OS: Windows 11
- Browser: Google Chrome
- Frontend: React with Vite
- Backend: Go
- Runtime: Docker Compose
- Testing: Separate accounts and devices
- Network: Different networks, with the backend exposed through ngrok
- Debate mode: 2v2 team debate
### Impact
Critical - Application is unusable
### Code of Conduct
- [x] I have joined the [Discord server](https://discord.gg/hjUhu33uAn) and will post updates there
- [x] I have searched existing issues to avoid duplicates
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Start by reproducing the 2v2 team debate flow with four accounts in the React/Vite frontend and Go backend under Docker Compose, as described in the issue. Trace the WebRTC offer flow around participant join order and temporary disconnects. Done means opponent video cards show remote streams reliably after late joins and reconnects, rather than leaving blank video permanently.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- docker-compose, go, react, typescript, vite
- Ambito
- audio-video-rtc, backend, frontend
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 48/100