# LPM Esencial 1.0 — Entrega 3

## Alcance incluido

- Entregables vinculados a una etapa del proyecto.
- Versiones consecutivas por archivo privado o liga.
- Descarga autorizada de archivos sin exposición pública.
- Envío de la versión actual al cliente interno.
- Rondas independientes de revisión.
- Aprobación o solicitud de cambios con observación obligatoria.
- Bandeja de revisiones filtrada por rol.
- Historial inalterable de actividad del proyecto.
- Bloqueo de cierre de etapa mientras existan entregables sin aprobar.

## Permisos

- Administrador: consulta todo y gestiona entregables, pero no decide revisiones.
- Diseñador: gestiona los entregables de sus proyectos y los envía a revisión.
- Cliente interno: consulta los proyectos asignados y decide sus revisiones pendientes.

## Actualización sobre Entrega 2.0.3

1. Respaldar archivos y base de datos.
2. Extraer el paquete directamente sobre la raíz activa, conservando `.env`.
3. Ejecutar:

```bash
php artisan down
php artisan optimize:clear
php artisan migrate --force
php artisan optimize
php artisan up
```

Las cuatro migraciones nuevas crean `deliverables`, `deliverable_versions`, `approvals` y `activity_logs`. No ejecutar `migrate:fresh` ni seeders.

## Prueba recomendada

Crear un proyecto nuevo, activar Análisis, crear un entregable, cargar una versión, enviarla a revisión, iniciar sesión como cliente interno y solicitar cambios. Después, cargar la versión 2, enviarla nuevamente y aprobarla.
