🚀 Description
Realtime socket events are currently broadcasted globally to all connected users instead of being isolated by project/workspace/room.
This creates major privacy and scalability issues in multi-user environments.
📍Affected Files
backend/controllers/chat.controller.js
backend/controllers/tasks.controller.js
❌ Current Problem
Events are emitted globally like:
io.emit("newMessage", data[0]);
and:
io.emit("task-created", data[0]);
This means every connected user receives all events.
✅ Expected Solution
- Implement socket room architecture
- Join users into project/workspace rooms
- Emit events only to relevant rooms
Example:
socket.join(projectId);
io.to(projectId).emit("task-created", data);
🎯 Expected Outcome
- Better realtime scalability
- Improved data privacy
- Proper multi-user isolation
- Cleaner socket architecture
🏷️ Expected Labels
level3 NSoC'26
🚀 Description
Realtime socket events are currently broadcasted globally to all connected users instead of being isolated by project/workspace/room.
This creates major privacy and scalability issues in multi-user environments.
📍Affected Files
backend/controllers/chat.controller.jsbackend/controllers/tasks.controller.js❌ Current Problem
Events are emitted globally like:
and:
This means every connected user receives all events.
✅ Expected Solution
Example:
🎯 Expected Outcome
🏷️ Expected Labels
level3NSoC'26