EDUGO v2.16.27 – ACTUALIZACIÓN DE PRODUCCIÓN Base recibida: EDUGO_v2.16.26.zip CAMBIOS INCLUIDOS 1) app/Modules/Auth/Services/AuthService.php - SECRETARIA_MAESTRA obtiene permisos operativos generales. - Se bloquean expresamente gestión de usuarios/personal, roles, permisos, asignación de sedes, auditoría y configuración académica. 2) database/migrations/060_secretaria_maestra_operativa_completa.sql - Asigna al rol SECRETARIA_MAESTRA los permisos operativos existentes. - Elimina del rol las asignaciones sensibles excluidas. - No crea usuarios ni cambia contraseñas. La cuenta debe existir y tener ambas sedes asignadas. 3) app/Modules/Core/Controllers/CajaController.php - Caja centralizada: el límite de 2–5 puestos se calcula por fecha operativa. - Una caja abierta de una jornada anterior ya no bloquea la apertura de puestos del día actual. - Un usuario solo puede abrir una caja en la misma jornada; puede abrir la del día actual aunque conserve una caja anterior pendiente. - Los cierres antiguos permanecen abiertos y auditables, no se borran ni se mezclan. 4) app/Shared/Views/admin/caja_centralizada.php - Advierte sobre jornadas anteriores pendientes sin bloquear la apertura de hoy. - Diferencia el conteo de cajas de hoy del total de cajas abiertas históricas. 5) app/Modules/Core/Controllers/PensionesController.php - Los pagos presenciales en efectivo de pensiones se asignan a la caja propia del cajero logueado, no a la primera caja que encuentre. 6) app/Modules/Core/Controllers/PresencialController.php - Antes de cobrar una matrícula presencial, reevalúa la promoción de matrícula si todavía no existe una aplicación registrada. - Evita aplicar el mismo descuento dos veces. 7) app/Shared/Views/admin/academico.php - Normaliza las fechas de inicio y límite al cargarlas en los campos date de edición de promociones. 8) database/upgrade.php y VERSION.txt - Versión del paquete 2.16.27 y ejecución automática de la migración 060. INSTALACIÓN - Realizar respaldo completo de archivos y base de datos. - Subir los archivos del paquete conservando la estructura de carpetas. - Ejecutar desde terminal en la raíz del proyecto: php database/upgrade.php - La migración 060 actualiza permisos del rol SECRETARIA_MAESTRA. - No subir .env incluido desde otro entorno; conservar el .env propio del hosting. PRUEBAS ESTÁTICAS - 302 archivos PHP revisados con php -l: sin errores de sintaxis. - No se ejecutó una prueba funcional contra la base de datos real del hosting. - Validar especialmente caja simultánea, trigger de efectivo, permisos y promociones con datos de prueba antes de operar. NOTA SOBRE CAJAS ANTERIORES Las cajas abiertas de días previos ya no consumen los puestos de la fecha actual. Deben regularizarse con cierre administrativo, conservando sus saldos y movimientos históricos. Cada pago en efectivo se registra en la caja del usuario que lo recibe.