ALIANPOS V6 — QA CONFIGURACIÓN CENTRAL + TIENDA EN LÍNEA
Fecha: 2026-09-13

VALIDACIÓN ESTÁTICA REALIZADA
- Archivos PHP revisados: 122
- Errores PHP: 0
- Archivos JavaScript de ALIAN UI revisados: 15
- Errores JavaScript: 0

COBERTURA REVISADA
[OK] Ruta /central/configuracion registrada.
[OK] Guardado de tres colores con validación HEX y CSRF.
[OK] Paleta central independiente de marca/sucursal.
[OK] Fallback seguro si configuracion_central aún no existe.
[OK] Ruta /admin/ecommerce registrada.
[OK] Navegación POS muestra Tienda en línea solo conforme a permisos/módulos.
[OK] ModuleAccess relaciona ecommerce.* con ecommerce_publico.
[OK] Permisos ecommerce.ver y ecommerce.gestionar incorporados.
[OK] Rutas públicas /tienda/{slug} registradas antes de autenticación.
[OK] Catálogo público filtrado por sucursal, producto activo y publicado.
[OK] Identidad visual pública usa colores de la marca de la sucursal.
[OK] Pedido público protegido con CSRF y honeypot.
[OK] Precio/impuesto recalculado en servidor.
[OK] Productos del carrito revalidados en servidor.
[OK] Pedido generado con origen ecommerce y sucursal propietaria.
[OK] Cliente creado/buscado dentro de la misma sucursal.
[OK] Confirmación pública usa token aleatorio de 64 caracteres hexadecimales.
[OK] /admin/pedidos incluye origen Tienda en línea.
[OK] Filtro de origen de pedidos actualizado a los valores reales.
[OK] /central/modulos indica dónde administrar Tienda en línea.

NO MARCADO COMO PROBADO EN ESTE ENTORNO
- Ejecución real de la migración 033 sobre el MariaDB de producción.
- Navegación E2E con una sesión real de Gerencia y una sesión POS real.
- Creación de un pedido público contra la base productiva.
- Pruebas de concurrencia con pedidos simultáneos.
- Envío de notificaciones externas por WhatsApp/correo (no se implementaron en esta fase).
- Pago en línea (no se implementó; el canal recibe pedidos para confirmación de sucursal).

PRUEBA FUNCIONAL RECOMENDADA EN STAGING
1. Aplicar migración 033.
2. Entrar a /central/configuracion, cambiar la paleta y confirmar que persiste después de cerrar/abrir sesión.
3. En /central/modulos habilitar Tienda en línea para una sucursal de prueba.
4. Ingresar a esa sucursal y confirmar el menú Canales > Tienda en línea.
5. Publicar 2 productos, dejar 1 sin publicar y publicar la tienda.
6. Abrir /tienda/{slug} en una ventana privada y confirmar que solo aparecen los 2 productos publicados.
7. Crear un pedido web.
8. Confirmar que aparece en /admin/pedidos con origen Tienda en línea y estado guardado.
9. Confirmar que el pedido no aparece en otra sucursal.
10. Pausar la tienda y confirmar que la URL pública deja de servir el catálogo.
