- Se descapó
- 20 de abril de 2026 a las 20:23 UTC
- Autor
- Kamo
- Compromit
- 3609afb
Agregar o eliminar un RoleRightType no debe exigir de nuevo ejecutar KamoInitializerService. syncAll() ahora ejecuta tres fases en cada startup: 1. Limitaciones de curación - bajar todas las restricciones de CHECK a todos los derechos que se deben a todos los derechos mesa y asegurar que existan las dos limitaciones únicas requeridas por la información. Hibernate hornea valores enum en las restricciones CHECK en la tabla de CREATE el tiempo y nunca los actualiza, y la "UniqueConstraint" sólo entra en vigor en CREATE TABLE, por lo que ambos van a la deriva cada vez que evolucionan los enums. Enumerado ya hace cumplir valores válidos en la capa de Java. 2. Borrar los derechos huérfanos de la Libertad con ETA DE DONDE derecho. NO IN (current enum) en las seis tablas de la derecha: orgole.rights, **************** relaciones derechas, member-rights-applied, job-title-rights, dept-rights. Maneje tanto el int ORDINAL como el almacenamiento de nombre enum. 3. Añádase derechos que faltan y sin cambios; se basa en las limitaciones únicas garantizado en la fase 1. Idempotente, seguro de volver a correr. Añadir/eliminar valores enum ahora requiere sólo reiniciar SecurityService.