Block a user
[debt] Validación de entrada (ValidationPipe) y quitar endpoints CRUD peligrosos
No debemos depender de class-validator, en su lugar ocupar la capa validator de JS.
Lograrlo a traves de middlewares
[debt] Faltan cabeceras de seguridad HTTP y se expone X-Powered-By
[bug] Escalada de privilegios: crear un admin sin sesión y entrar (mass assignment de role)
[bug] Error de hidratación por sesión y tema leídos del navegador; parpadeo del tema oscuro
[bug] Devoluciones y ajustes de inventario cuentan como compras al proveedor
[bug] Imprimir ticket imprime toda la pantalla en lugar del ticket
[debt] APIs deprecadas, código muerto y redundancias (FormEvent, @prisma/client, soldAt)
[bug] Los formularios tienen noValidate y no validan nada antes de enviar
[feat] Monto recibido y cálculo de cambio al cobrar en efectivo
[bug] Cambiar el precio puede dejar el producto sin precio activo
[bug] El descuento del POS no tiene límite ni autorización
[bug] Se puede abrir caja y vender sin día de operación abierto
[debt] No hay forma de crear el primer administrador ni protección del último
[bug] Un cajero puede entrar al panel de administración escribiendo la URL
[debt] Las migraciones no crean cash_register_session, cash_movement ni operating_day
[debt] Frontend: metadata del scaffold, accesibilidad de componentes y dependencias
[debt] Sin paginación; reportes calculados en el navegador con tablas completas