HAYEX EVENTS v111 — INSTALACIÓN DE AUDITORÍA AVANZADA
======================================================

REQUISITO
---------
Aplicar sobre Hayex Events v110.

INSTALACIÓN
-----------
1. Realiza un respaldo de archivos y base de datos.
2. Copia el contenido del parche v111 sobre el proyecto v110 y reemplaza los archivos.
3. En phpMyAdmin, selecciona la base de datos de Hayex Events.
4. Ejecuta:

   database/instalar_auditoria_avanzada_v111.sql

5. Confirma que el script finalice con el mensaje OK.
6. Cierra sesión, vuelve a ingresar y actualiza el navegador con Ctrl + F5.

COMPROBACIÓN DE TRIGGERS
------------------------
Ejecuta esta consulta en phpMyAdmin:

SELECT
    EVENT_OBJECT_TABLE AS tabla,
    EVENT_MANIPULATION AS operacion,
    TRIGGER_NAME AS trigger_auditoria
FROM information_schema.TRIGGERS
WHERE TRIGGER_SCHEMA = DATABASE()
  AND LOWER(TRIGGER_NAME) LIKE '%audit%'
ORDER BY EVENT_OBJECT_TABLE, EVENT_MANIPULATION, TRIGGER_NAME;

Después abre:

Sistema -> Auditoría -> Cobertura

La matriz mostrará qué mantenimientos tienen cobertura completa, parcial o pendiente.

PRUEBAS FUNCIONALES RECOMENDADAS
--------------------------------
1. Modifica el nombre de un usuario y abre Ver historial desde su consulta.
2. Cierra e inicia sesión y confirma que esos eventos aparezcan en Seguridad y accesos, no como modificación administrativa.
3. Cambia un permiso de perfil y revisa la pestaña Alertas.
4. Modifica una configuración de correo o WhatsApp y confirma que las credenciales se muestren protegidas.
5. En un ambiente de prueba, modifica directamente un campo administrativo desde phpMyAdmin y confirma que la alerta indique Cambio directo en base de datos.

VOLUMEN DE LA BASE
------------------
La versión no audita cada correo, destinatario, apertura, webhook, trabajo de cola ni heartbeat. Solo registra cambios administrativos y acciones sensibles, por lo que evita crecimiento masivo de auditoría.

REVERSIÓN
---------
La forma segura de revertir es restaurar el respaldo previo. Reemplazar únicamente los archivos no elimina los triggers instalados; si se requiere una reversión técnica, restaurar también la base de datos o eliminar explícitamente los triggers v111 después de revisar sus nombres en information_schema.TRIGGERS.
