Block a user
[debt] Borrados con dependencias dan error 500; usar baja lógica y errores legibles
[bug] Reportes por producto y utilidad no restan el descuento del carrito
[debt] ShopCart no guarda la sesión de caja en que se hizo la venta
[bug] El POS toma la primera sesión de caja abierta del sistema, no la del cajero
Lint, Prettier, artefactos compilados en git y tests
Modularidad: tipos derivados del contrato, eliminar duplicados y dividir páginas grandes
Autenticación y guards por rol en el API
Validación de entrada (ValidationPipe) y quitar endpoints CRUD peligrosos
Mover venta y devolución al servidor con transacciones (SalesModule)
Usar enums de Prisma 8 en el contrato en lugar de String y literales
Bugs en el flujo de devolución (userId incorrecto, inventario equivocado, sin manejo de errores)