# ÉPICA: EAI-003-EXT - Gamificación Social (Amigos y Gremios) ### Metadata | Campo | Valor | |-------|-------| | **ID** | EAI-003-EXT | | **Nombre** | Gamificación Social: Sistema de Amigos y Gremios | | **Módulo** | gamification_system, social_features | | **Fase** | Fase 3 - Extensiones | | **Prioridad** | P1 | | **Estado** | Backlog | | **Story Points** | 39 | | **Sprint(s)** | Sprint 9-11 | ### Descripción Implementar las mecánicas sociales de gamificación que complementan el sistema individual: sistema de amigos con leaderboard entre amigos, y sistema de gremios/grupos con misiones colaborativas. Adicionalmente, implementar el multiplicador de ML Coins por rango documentado en v6.1. ### Objetivo de Negocio - Incrementar engagement mediante competencia social saludable - Fomentar colaboración entre estudiantes - Completar la visión original de gamificación documentada ### Stakeholders | Rol | Nombre/Equipo | Responsabilidad | |-----|---------------|-----------------| | Product Owner | Isem | Aprobación de criterios | | Tech Lead | Backend-Agent | Validación técnica | | Usuarios | Estudiantes | Interacción social | --- ### Historias de Usuario | ID | Historia | Prioridad | SP | Estado | |----|----------|-----------|-----|--------| | US-GAM-001 | Como estudiante avanzado, quiero ganar más ML Coins por mi rango | P1 | 5 | Backlog | | US-GAM-002 | Como estudiante, quiero agregar amigos para competir | P1 | 8 | Backlog | | US-GAM-003 | Como estudiante, quiero ver leaderboard de mis amigos | P1 | 5 | Backlog | | US-GAM-004 | Como estudiante, quiero crear/unirme a un gremio | P2 | 8 | Backlog | | US-GAM-005 | Como miembro de gremio, quiero completar misiones grupales | P2 | 8 | Backlog | | US-GAM-006 | Como líder de gremio, quiero gestionar miembros | P2 | 5 | Backlog | **Total Story Points:** 39 --- ### Criterios de Aceptación de la Épica **Funcionales:** - [ ] Multiplicador ML Coins aplica según rango (1.0x - 2.0x) - [ ] Sistema de solicitudes de amistad funcional - [ ] Leaderboard de amigos muestra ranking personalizado - [ ] Gremios soportan hasta 20 miembros - [ ] Misiones de gremio otorgan bonus a todos los miembros **No Funcionales:** - [ ] Performance: Leaderboard carga < 2s - [ ] Seguridad: Privacidad de perfiles respetada - [ ] Usabilidad: Flujos intuitivos de social **Técnicos:** - [ ] Cobertura de tests > 70% - [ ] RLS policies para privacidad - [ ] Integración con notificaciones --- ### Dependencias **Esta épica depende de:** | Épica/Módulo | Estado | Bloqueante | |--------------|--------|------------| | EAI-003 Gamificación Base | Done | Sí | | EAI-007 M4-M5 | In Progress | No | | NotificationsService | Done | No | **Esta épica bloquea:** | Épica/Módulo | Razón | |--------------|-------| | Torneos | Requiere sistema de amigos | | Desafíos PvP | Requiere sistema de amigos | --- ### Desglose Técnico **Database:** - [ ] Schema: gamification_system, social_features - [ ] Tablas: friendships (nueva), friend_requests (nueva), guilds (nueva), guild_members (nueva), guild_missions (nueva) - [ ] Funciones: 5 nuevas (CRUD amigos, gremios) - [ ] RLS Policies: 8 nuevas **Backend:** - [ ] Módulo: gamification (extensión) - [ ] Entities: 5 nuevas - [ ] Endpoints: 15 nuevos - [ ] Tests: 20 esperados **Frontend:** - [ ] Páginas: FriendsPage (existente con mockData), GuildsPage (existente con mockData) - [ ] Componentes: 20 (actualmente vacíos) - [ ] Stores: friendsStore, guildsStore (existentes, conectar) --- ### Riesgos | Riesgo | Probabilidad | Impacto | Mitigación | |--------|--------------|---------|------------| | Cyberbullying | Media | Alto | Reportes, moderación | | Spam de solicitudes | Media | Bajo | Rate limiting | | Gremios inactivos | Alta | Bajo | Cleanup automático | --- ### Definition of Ready (DoR) - [x] Historias de usuario definidas - [x] Criterios de aceptación claros - [x] Dependencias identificadas - [x] Estimación completada - [ ] Diseño técnico aprobado - [x] Sin bloqueadores activos ### Definition of Done (DoD) - [ ] Código implementado y revisado - [ ] Tests pasando (unit, integration, e2e) - [ ] Documentación actualizada - [ ] Inventarios actualizados - [ ] Trazas registradas - [ ] Demo realizada - [ ] Product Owner aprobó --- ### Documentación Relacionada - Diseño: `docs/00-vision-general/DocumentoDeDiseño_Mecanicas_GAMILIT_v6_1.md` - Backlog: `docs/04-fase-backlog/FUNCIONALIDADES-GAMIFICACION-PENDIENTES.md` - Frontend mockData: `apps/frontend/src/features/gamification/social/mockData/` --- ### Historial | Fecha | Cambio | Autor | |-------|--------|-------| | 2025-12-05 | Creación de épica | Requirements-Analyst | --- **Creada por:** Requirements-Analyst **Fecha:** 2025-12-05 **Última actualización:** 2025-12-05