Repository navigation
Releases: Hyperion-Interprice/Hyperion-Roleplay---Release
Releases · Hyperion-Interprice/Hyperion-Roleplay---Release
Release list
Hyperion Roleplay v1.0.2
🤖 Hyperion Roleplay v1.0.2
Release completa con todas las correcciones de seguridad, nuevos sistemas, mejoras del bot y rediseño del dashboard.
🛡️ Seguridad (CRÍTICO)
- XSS — función
esc()global aplicada a ~50 interpolaciones en innerHTML del dashboard - CSRF — fix en middleware de autenticación
- JWT —
algorithms: ["HS256"]explícito para prevenir ataques de confusión de algoritmo - SSRF — protección en endpoints que hacen fetch a URLs externas
- Guild auth — verificación de permisos del usuario en Discord antes de permitir cambios
- Redis fail-closed — si Redis no está disponible, la autenticación falla de forma segura
- Secret rotation — documentación y pratique de rotación de secrets
- Rate limiter — 40 req/min por usuario en el dashboard
- .env.example — plantilla de variables de entorno para nuevos desarrolladores
🆕 Nuevos Sistemas del Bot
- Sistema de Licencias —
LicenciaAdmin.ts,LicenciaGestionar.ts+ modalsModalLicenciaArma/Vehiculo/Propiedad+ selectsLicenciaAdminSelect,LicenciaAdminUserSelect,LicenciaGestionarSelect,LicenciaRevocar*y buttonLicenciaRevocarYes - Sistema de Whitelist mejorado — rechazo con razones, cooldown 10min, preguntas editables con modals de texto/select, edición del mismo container
- Menú Policial — unificación de
/arrestar+/multar+/antecedentesen un solo comando - Sistema de Alertas — alertas de seguridad del servidor
- Sistema de Economía — roles de recolección, tienda, cooldowns
- Sistema de Entorno — canal de reportes de entorno
- Sistema de Gestión — usuarios, personajes, DNI
- Reglas comunitarias — script con select menu multilenguaje (ES/EN/PT/FR)
- Afiliaciones/Alianzas — script con select menu
- ToS — script de términos de servicio
- Género en DNI — select menu dentro del modal de registro
- Comando /setup — funciona sin guild en la base de datos
- Comando /ping — muestra DB/Redis status y uptime
- Presence — "Competing" en GuildCreate y GuildDelete
🔧 Correcciones del Bot
- Handlers estabilizados — whitelist, menú policial, registro, economy config
- Emoji parsing — fix en tienda y menú policial con loaders
- CV2 deferred responses — uso de REST API raw para respuestas diferidas
- deferReply — agregado a todos los comandos para prevenir "Unknown interaction"
- register_modal — fix en input de género, collect cooldown, economy config
- Whitelist pending — username, avatars, DM fix, TTL eliminado para que no expiren
- Canal de logs — actualizado a
1531038610432987228 - Apertura — fix de ephemeral, nuevo diseño de container, fix en channel update
- Tienda — fix de emoji parsing
- Bot — exclusion de archivos
.d.tsde loaders
🖥️ Dashboard — Landing Page
- Carrusel de imágenes — 3 screenshots con rotación cada 10s
- Testimonials marquee — reviews de usuarios con scroll infinito dual
- 3 separadores gradient — diseño visual mejorado
- Footer completo — enlaces a GitHub, Discord, docs, Hyperion-Interprice
- Nitro Rocket Fuel — efecto nameplate en íconos de servidor
- Enlaces actualizados — GitHub org Hyperion-Interprice
🖥️ Dashboard — Panel de Administración
- 8 páginas reales — General, Economía, Apertura, Whitelist, Judicial, Alertas, Entorno, Usuarios
- URL routing —
/dashboard/{guildId}con soporte back/forward del browser - URL Recovery — restaura servidor seleccionado al refrescar
- Server cards — glass gradient dark estilo iPhone Pro Max, botones shimmer Novix UI
- Apertura side panels — layout 2 columnas con tabs (Cerrado | Votación | Abierto)
- Audit Logs — página "Registro" con historial completo de cambios (quién, qué, cuándo, antes→después)
- Botón "Actualizar" — re-fetchea configuración en General
- Profile dropdown — avatar + cerrar sesión + cambiar cuenta en topbar
- Guild switcher — cambiar de servidor desde el sidebar con actualización de URL
- Loading spinners — spinner azul circular + line loader gradient
- Error pages — "Bot no instalado" y "Error de conexión" con glass gradient
- OAuth callback — página HTML estilizada en vez de JSON crudo
- Auto-crear guild — si el servidor no existe en la DB, se crea automáticamente
- Entorno fix — campo
entornoChannelcorregido achannel - Guild icon fallback — onerror a iniciales cuando el ícono no existe
📊 API
- Audit logs endpoint —
GET /guilds/:guildId/audit-logscon paginación - Audit log helper —
createAuditLog()ydiffAndAudit()para capturar cambios automáticamente - Todos los PUT routes instrumentados — general, economy, apertura, whitelist, judicial, alertas, entorno
- Rate limiter — 40 req/min por usuario
- Graceful shutdown — SIGINT/SIGTERM handling
- Prisma AuditLog model — tabla con índices para consultas rápidas
🏗️ Infraestructura
- Railway — build sin
prisma db push(DB inaccesible desde Docker build) - Premium removido del FREE — vive en MongoDB (
premiumlicenses), FREE no lo maneja - 73 tests — suite de tests completa con Vitest
- Feature flags —
packages/shared/src/features.ts - CustomIds constants —
apps/bot/src/config/customIds.ts - Segunda auditoría seguridad — revisión completa post-fixes
📦 Stack
Node.js 24+ · pnpm workspaces · TypeScript ESM/NodeNext · discord.js 14.x · Express 5 · Prisma + PostgreSQL · Redis (ioredis) · MongoDB (premium) · Vitest · Railway
Full Changelog: https://github.com/Hyperion-Interprice/Hyperion-Roleplay/commits/master