Release

v1.2.11

28 feb 2026
●

Nueva funcionalidad "Anular partida": marca una partida como inválida sin eliminarla del historial.

●

Las partidas anuladas aparecen con badge "ANULADA" en gris y no computan en los ELOs de ningún jugador.

●

Motivo de anulación configurable: Jugador se cayó, Abandono involuntario u Otros (texto libre).

●

Botón "Revalidar" para deshacer la anulación y restaurar los ELOs automáticamente.

Release

v1.2.10

28 feb 2026
●

Fix: al editar los puntos de una partida en el historial ahora se recalculan correctamente los ELOs de todos los participantes y partidas posteriores.

●

Fix: al eliminar una partida el recálculo de ELO ya funcionaba; confirmado que ambas acciones son consistentes.

Release

v1.2.9

8 feb 2026
●

Bot de Discord integrado con comandos `seju_` para leaderboard, matchmaking con selección y jugadores online.

●

Comando `/seju_hacedor` con desplegable de jugadores (autocomplete) para generar matchups.

●

Comando `/seju_hacedor_online` para matchmaking automático con jugadores online en Steam.

●

Comando `/seju_online` para listar conectados en Steam.

Release

v1.2.8

3 feb 2026
●

Flechas de tendencia en el Leaderboard: indicadores visuales de subida/bajada de ELO en las últimas 5 partidas.

●

Tendencia por ejército: ↑↑ (sube mucho >50), ↑ (sube poco 1-50), = (sin cambio), ↓ (baja poco), ↓↓ (baja mucho <-50).

●

Tendencia en ELO promedio: umbral de 20 puntos y flechas de posición (↑/↓) indicando si el jugador sube o baja en el ranking.

●

Línea de ELO promedio en estadísticas de jugador: nueva línea negra gruesa en el gráfico de evolución mostrando el promedio.

●

Auto-polling integrado: la lógica de importación de partidas ahora está embebida en el backend (relic_importer.py), eliminando dependencia de scripts externos.

Release

v1.2.7

1 feb 2026
●

Rachas por año: el selector de año ahora filtra también las rachas de parejas (mejor/peor racha del año seleccionado).

●

Navegación desde rachas: al hacer clic en una tarjeta de racha se navega al historial mostrando solo las partidas de esa racha.

●

Filtro de partidas en historial: nuevo parámetro ?matches= para filtrar y resaltar partidas específicas.

●

Corrección de conflicto con icono Map de lucide-react que impedía usar el constructor nativo de JavaScript.

Release

v1.2.6

30 ene 2026
●

Nueva página "Estadísticas Generales" (/estadisticas-generales) con análisis completo de la comunidad.

●

Estadísticas por Año: mejores y peores parejas, gráfico de partidas por mes, rachas destacadas.

●

Tabla de todas las parejas con filtros, ordenación y estadísticas detalladas (winrate, mapas).

●

Sección "Telecos vs Peritos": enfrentamiento histórico entre grupos con gráfico por año.

●

Sección "El Clásico": Kebab & Gavilán vs Fumínguez & Gambitero (2v2 exclusivo) con timeline.

●

Backend: nuevo endpoint /api/v1/stats/general con agregación completa de estadísticas.

Release

v1.2.5

29 ene 2026
●

Nuevas estadísticas extendidas en la ficha de jugador: rachas, tendencia ELO, rendimiento por pareja y por mapa.

●

Componente "Rendimiento por Pareja": matriz con victorias/derrotas por compañero, mejor y peor pareja destacados con winrate.

●

Componente "Estadísticas por Mapa": winrate por mapa con mejor y peor mapa destacados, barras visuales de progreso.

●

Componente "Rachas": racha actual, mejor racha de victorias y peor racha de derrotas.

●

Componente "Tendencia ELO": cambio de ELO en 7 y 30 días, desglosado por ejército.

●

Backend: nuevos endpoints /partner_stats, /streaks, /elo_trends, /map_stats y /extended.

Release

v1.2.4

29 ene 2026
●

Diseño responsive completo para móviles (320px-480px): todas las páginas se adaptan correctamente a pantallas pequeñas.

●

Nueva navegación con menú hamburguesa en móvil: los enlaces se colapsan en un menú desplegable en pantallas < 768px.

●

Tarjetas de estadísticas, filtros y timeline del historial optimizados para móvil con padding y texto adaptativo.

●

Eliminado scroll horizontal en toda la aplicación con overflow-x-hidden.

●

Touch targets de 44px mínimo en botones para cumplir WCAG 2.1.

Release

v1.2.3

26 ene 2026
●

Nueva funcionalidad de exportación en la página de historial: descarga de partidas en formato JSON y CSV.

●

Los botones de descarga respetan los filtros activos (tipo, jugador, mapa).

●

CSV desnormalizado (una fila por participante) para facilitar análisis en Excel.

●

JSON estructurado con datos completos de cada partida y cambios de ELO.

Release

v1.2.2

26 ene 2026
●

Despliegue en producción (seju.hacedor.eu) con Docker, nginx, SSL (Let's Encrypt) y MongoDB autenticado.

●

Configuración de nginx parametrizada con templates (nginx.conf.template) usando variable NGINX_DOMAIN.

●

Limpieza de archivos obsoletos: eliminados nginx.conf y nginx-init.conf duplicados; mantenido nginx-http-only.conf para troubleshooting.

●

Documentación actualizada de despliegue en CLAUDE.md con comandos y troubleshooting común.

●

Variable BACKEND_CORS_ORIGINS requiere formato JSON array: ["https://dominio.com"].

Release

v1.2.1

25 ene 2026
●

Recalculado todo el histórico en Mongo con delta ELO simétrico por equipo (suma total 0) y sincronización de elos_ejercitos en jugadores; backups creados antes del cambio.

●

Partida Relic 3v1 marcada como incompleta (solo jugadores tracked); se conserva con delta simétrico pero se documenta que el origen es la omisión de jugadores no tracked.

Release

v1.2.0

18 ene 2026
●

Nueva página "Control de partida" (/relic-poller): monitorea estado de jugadores en Steam y controla el importador automático de partidas desde Relic API.

●

Auto-polling configurable (30s-1800s) que ejecuta import_relic_matches.py; se autoactiva a 120s cuando hay ≥4 jugadores online y se apaga tras 10 minutos con menos de 4.

●

Estado de jugadores en tiempo real con avatares, online/offline, hora local y reloj multi-husos (ES, MX, SG).

●

Organización del código para producción: frontend Dockerfile, nginx.conf con Let's Encrypt, scripts de inicialización MongoDB.

●

Limpieza de 1.5GB de archivos temporales y cache del repositorio (.next/, frontend-backup/, logs).

Release

v1.1.4

18 ene 2026
●

Tarjetas de selección de jugadores renovadas: modo lista, resaltado de selección, winrate 30d, partidas 30d y pareja favorita.

●

Correcciones de coherencia en conteo de partidas totales/30d y winrate global como respaldo.

●

Tarjetas de seleccionados con botón de eliminación integrado dentro del cuadro, sin scroll lateral.

Release

v1.1.3

18 ene 2026
●

Leaderboard y ficha de jugador ahora muestran el mismo ELO por ejército: se toma el último elo_post cronológico y se usa como fuente única.

●

Fallback seguro al valor almacenado en el jugador si aún no tiene partidas registradas.

Release

v1.1.2

18 ene 2026
●

Recálculo cronológico cambia a la fórmula extendida por puntos (factor exponencial, K=32) para todas las partidas no Excel.

●

Se mantiene ELOi/ELOf del Excel como verdad, y se recalculan el resto con puntos para eliminar el modo victory-only.

●

Dataset recalculado completo en Mongo tras la actualización.

Release

v1.1.1

18 ene 2026
●

Importador de Excel ahora respeta las columnas ELOi/ELOf como verdad, sin recalcular.

●

Nuevo script de recálculo K=32 que aplica fórmula victory-only a partidas no Excel, preservando el histórico.

●

Dataset actualizado con partidas fuera del Excel (incluida la del 2024-03-22) para coherencia de ELO.

Release

v1.1.0

18 ene 2026
●

Sistema de versionado centralizado con appVersion y releaseNotes listos para futuras actualizaciones.

●

Nueva página pública de notas de versión enlazada desde la navegación principal.

●

Badge de versión persistente en la cabecera para visibilidad inmediata.

Release

v1.0.0

16 ene 2026
●

Versión base con leaderboard, registro de partidas y calculadora de matchmaking.

●

Importadores desde Excel y Relic API con recálculo de ELO por ejército.

●

Frontend con React Query, Zustand y soporte de modo oscuro.

Flujo de versión

¿Cómo se prepara la próxima release?

Cada actualización debe añadir una entrada nueva en este historial y actualizar la versión visible en la cabecera.

1. Ajusta appVersion2. Añade releaseNotes3. Publica y comparte