ALIANPOS V7 - QA GOBIERNO DE ORGANIZACION Y CATALOGO MAESTRO
Fecha: 2026-09-13

RESULTADO ESTATICO
- PHP revisado: 226 archivos
- Errores de sintaxis PHP: 0
- JavaScript revisado: 17 archivos
- Errores de sintaxis JavaScript: 0

COBERTURA REVISADA
[OK] Sucursal propia -> franquicia conserva la misma sucursal operativa.
[OK] Franquicia -> operación propia conserva las sucursales y separa cada operación.
[OK] Módulos efectivos se preservan durante ambas conversiones.
[OK] Eliminación directa antigua de franquicia queda bloqueada.
[OK] Eliminación definitiva exige sesión central + CSRF + código de correo.
[OK] Código de 6 dígitos, un solo uso, 5 minutos, 5 intentos y anti-reenvío de 45 s.
[OK] APP_KEY requerido para hash del código.
[OK] Driver de correo tipo log bloqueado en APP_ENV=production.
[OK] Respaldo previo genera ZIP con ventas, detalle, compras, detalle y kardex.
[OK] Franquicia consolida respaldo de todas sus sucursales.
[OK] Eliminación cubre ecommerce, ventas, pagos, inventario, producción, activos, XML, FE, usuarios, cajas, licencias, configuraciones y módulos.
[OK] Cobertura ampliada para suscripcion_pagos y fe_clientes.
[OK] Recuento de servidores se recalcula después de eliminar una franquicia.
[OK] Catálogo maestro vive fuera de las tablas operativas de sucursal.
[OK] Importación inicial exige misma marca.
[OK] Aplicación a sucursal exige destino sin productos.
[OK] Copia a sucursal genera productos/recetas independientes e inventario en cero.
[OK] Creación de sucursal propia permite catálogo maestro.
[OK] Creación de sucursal franquiciada permite catálogo maestro.
[OK] Acción Convertir en franquicia se oculta si franquicias están deshabilitadas.
[OK] Confirmaciones usan el color configurable del Panel Central.

PRUEBAS DE PRODUCCION/STAGING PENDIENTES
1. Ejecutar 035 en MariaDB 10.6 con respaldo reciente.
2. Confirmar MAIL_FROM_ADDRESS y recepción real del código en correo.
3. Crear una sucursal de prueba con catálogo maestro y verificar inventario = 0.
4. Convertir sucursal propia -> franquicia y confirmar que ventas/clientes/inventario no cambian.
5. Convertir franquicia -> propia y confirmar que sus sucursales quedan independientes.
6. Generar respaldo ZIP y abrir los cinco CSV.
7. Eliminar una sucursal de prueba con código válido y verificar ausencia de datos asociados.
8. Probar código vencido después de 5 minutos, código incorrecto y reenvío.
9. Eliminar una franquicia de prueba con más de una sucursal y validar limpieza y retorno a /central/franquicias.

NO SE MARCA COMO PROBADO
- Entrega SMTP/PHP mail en el hosting real.
- Ejecución de la migración sobre la base productiva.
- Eliminación irreversible de datos productivos.
