Guía interna Staff
Operación del sistema de juegos
Referencia rápida para moderación, eventos y operaciones técnicas. Incluye verificaciones diarias/semanales, SQL de control y protocolos de despliegue seguro.
Actualizado: 2026-04-02
Checklist diario
- Verificar `nabbo-cms` activo y `arcturus` activo.
- Comprobar endpoints clave (`/api/game/rooms`, `/api/game/blueprints`, `/api/game/events`).
- Confirmar Nitro cargando correctamente y sin errores visibles en producción.
- Revisar señales de abuso en plays/ratings/votos (spikes atípicos).
Checklist semanal
- Revisar comportamiento del ciclo de juego destacado y rollover.
- Revisar distribución de creator rewards y métricas de economía.
- Validar que plantillas canónicas Wired siguen con payload no vacío.
- Ejecutar smoke manual: register/play/rate/vote/blueprint.
- Comprobar que AutoEvents no quede en loop de retry para un tipo de evento.
- Comprobar pipeline de comunidad (`approved` a `completed`).
SQL rápido de verificación
Plantillas canónicas
SELECT name, JSON_LENGTH(data) AS entries FROM wired_templates WHERE name IN ( 'coin_collector','obstacle_course','quiz_show', 'escape_room','battle_arena','farming_sim','survival_mode' ) ORDER BY name;
Eventos programados
SELECT event_type, enabled, next_run_at
FROM scheduled_events
WHERE event_type IN ('sillaslocas','parkour_rotation','double_xp','weekend_double_xp')
ORDER BY event_type;Contadores de engagement
SELECT 'game_rooms', COUNT(*) FROM game_rooms UNION ALL SELECT 'game_room_plays', COUNT(*) FROM game_room_plays UNION ALL SELECT 'game_room_ratings', COUNT(*) FROM game_room_ratings UNION ALL SELECT 'game_feature_votes', COUNT(*) FROM game_feature_votes UNION ALL SELECT 'game_blueprint_offers', COUNT(*) FROM game_blueprint_offers;
Regla crítica de despliegue y migración
- Detener emulator antes de cambios de esquema/datos de engagement.
- Aplicar SQL/migraciones y confirmar consistencia de tablas.
- Desplegar jars actualizados si corresponde.
- Iniciar emulator solo cuando DB esté totalmente lista.
- Verificar logs de plugins/scheduler y endpoints públicos.
Incidentes comunes y respuesta
- AutoEvents no carga: revisar `plugin.json`, rebuild del jar, redeploy, restart.
- AutoEvents reintenta siempre: validar `event_type` y dependencia plugin (`sillas*` o `parkour*`).
- Error SQL status marketplace: validar enum con `active/sold/expired/cancelled`.
- Spam de config keys: completar keys faltantes en `config.ini` y reiniciar.
- API 500: revisar logs CMS, payload/auth y esquema DB relacionado.
- HUD no visible: comprobar `/api/game/rooms/by-room/`{roomId}`/overlay` y confirmar sala activa en `game_rooms`.
Triage rápido de AutoEvents
- Verificar filas due en `scheduled_events` (`enabled=1`, `next_run_at <= NOW()`).
- Revisar si existe `last_run_at` reciente para el evento afectado.
- Si falla, confirmar dependencia del trigger runtime según tipo.
- Confirmar que `next_run_at` avanza por retry cuando hay error.
- Validar resolución tras fix con nuevo ciclo exitoso.
