AOSSIE-Org / AOSSIE-Org/DebateAI

Role selection not locked + Ready allowed without role in OnlineDebateRoom

Abierto
#290 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
TypeScript
Estrellas
84
Forks
198
Merge medio
2 d 19 h
PR fusionados (30 d)
30

Descripción

In the OnlineDebateRoom setup flow, users can currently select For/Against in ways that break debate consistency.

## Current Problems
1. Both users can choose the same role (ex: both choose "For")
2. Users can change role after selecting once
3. Users can click Ready without selecting a role
4. UI does not disable role buttons properly when opponent already selected that role

## Expected Behavior
- Only one user can choose "For" and only one can choose "Against"
- Once a user selects a role, it should be locked
- Ready should be blocked unless a role is selected
- Role buttons should disable correctly based on:
- peerRole
- localReady
- peerReady
- debatePhase != setup

## Steps to Reproduce
1. Open the same debate room in 2 browsers/incognito tabs
2. Both users select the same role (For)
3. Click Ready
4. Observe inconsistent role assignment / broken setup

## Proposed Fix
- Enforce role lock in backend WebSocket handler (handleRoleSelection)
- Block Ready unless role is selected (handleReadyStatus)
- Disable role buttons correctly in frontend setup popup

## Files
- backend/websocket/websocket.go
- frontend/src/Pages/OnlineDebateRoom.tsx

##Screen Recording:

https://github.com/user-attachments/assets/f25c844d-ab2c-40b7-a02c-609cb9c34008

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.