AOSSIE-Org / AOSSIE-Org/DebateAI

[BUG]: Opponent video does not reliably appear in 2v2 team debates

未关闭
#423 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
bug
主要语言
TypeScript
星标
84
派生
198
平均合并
2 天 19 小时
30 天内合并 PR
30

描述

### 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

贡献指南

这个仓库没有索引到贡献指南

调研方向

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.

由索引模型根据 Issue 内容生成。

评估

技术栈
docker-compose, go, react, typescript, vite
领域
audio-video-rtc, backend, frontend
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。