CLUB DE DOMINO TARIRA 2.0 - ENTREGA 0.7
CAMBIOS AUTORIZADOS DE PAREJA Y BITACORA

Este paquete contiene la base acumulada de la entrega 0.6 y agrega:
- pair_changes.php: solicitud de sustitución de un jugador por otro.
- Aprobación o rechazo reservado al administrador.
- Validación de pertenencia del jugador saliente y de disponibilidad del entrante.
- Bloqueo de cambios simples cuando la pareja ya tiene resultados registrados, para proteger el historial.
- Una sola solicitud pendiente por pareja (validada bajo bloqueo transaccional de la pareja).
- audit.php: consulta de las últimas 500 operaciones, solo para administrador.
- database/pair_changes_audit_0_7.sql: migración de las dos tablas nuevas.
- Accesos desde el panel principal.

INSTALACION DE ESTA ENTREGA
1. No instale todavía en el sitio operativo. Es un prototipo de desarrollo.
2. Haga una copia de seguridad completa de archivos y base de datos.
3. Extraiga el ZIP en un entorno de pruebas separado.
4. Sobre la base que ya tiene aplicados schema.sql, payments_0_5.sql y results_0_6.sql, ejecute UNA SOLA VEZ:
   database/pair_changes_audit_0_7.sql
5. No vuelva a ejecutar schema.sql, payments_0_5.sql ni results_0_6.sql sobre una base existente.
6. Verifique permisos y pruebe con cuentas de administrador y operador.

REGLAS DE FUNCIONAMIENTO
- Administrador y operador pueden enviar solicitudes.
- Solo el administrador puede autorizar o rechazar.
- El cambio no se aplica al enviar la solicitud.
- El sistema valida que el jugador saliente pertenezca a la pareja.
- El jugador entrante debe existir y no estar en otra pareja activa del mismo torneo y categoría.
- Una pareja no puede tener más de una solicitud pendiente.
- Si existen resultados para esa pareja, la autorización simple se bloquea. Se requiere definir un procedimiento especial que conserve la historia de participación antes de permitir cambios posteriores a resultados.
- La bitácora registra solicitudes, aprobaciones, rechazos y sustituciones autorizadas. Solo el administrador puede consultarla.
- La pantalla muestra hasta 500 eventos recientes.

LIMITACIONES Y ADVERTENCIAS
- Este paquete no está probado en el servidor real de GVO/cPanel ni con una base de datos real.
- Es prototipo; no instalar en producción sin revisión de seguridad, integridad y pruebas funcionales.
- La bitácora de esta entrega registra eventos del módulo de cambios de pareja; no registra todavía cada edición de jugadores, pagos, resultados o configuraciones realizada por los demás módulos.
- No incorpora todavía un procedimiento de excepción para cambiar una pareja que ya tenga resultados.
- No modifica TARIRA 1.0.
- No incluye todavía modo offline/LAN ni sincronización.
- No incorpora integración automática con Yappy.

Requisitos: PHP 8.1+, PDO MySQL, MySQL/MariaDB.
