Appearance
Fase 2.2: Progress Tracking
← Anterior: 2.1 SSE Endpoint | Fase 3 Production →
Agregar columna progress a background_jobs
Archivo: */backend/background-jobs-system.md
Rama: feature/background-jobs-progress
Fase: 2.2: Progress Tracking
Estimación: 2 horas
Dependencias: Todas tareas Fase 2.1
Deliverables
- [ ] Crear migración: ALTER TABLE background_jobs ADD COLUMN progress DECIMAL(5,2) DEFAULT 0
- [ ] Índice en progress
- [ ] DTO actualizada
- [ ] Model updater setProgress(jobId, percentage)
- [ ] Ejecutar y validar migración
Modificar JobRunner para actualizar progress
Archivo: */backend/background-jobs-system.md
Rama: feature/background-jobs-progress
Fase: 2.2: Progress Tracking
Estimación: 3 horas
Dependencias: Agregar columna progress
Deliverables
- [ ] Modificar
server/src/services/BackgroundJobs/JobRunner.php- [ ] Método setProgress(percentage)
- [ ] Emite NOTIFY con progress update
- [ ] BatchInvoicingJobHandler: actualiza progress por factura (100/totalFacturas)
- [ ] Tests verificando progress updates
- [ ] Tests NOTIFY con progress
Frontend: Progress bar component
Archivo: */frontend/background-jobs-system.md
Rama: feature/background-jobs-progress-ui
Fase: 2.2: Progress Tracking
Estimación: 3 horas
Dependencias: Modificar JobRunner para actualizar progress
Deliverables
- [ ] Crear componente
public/src/backgroundJobs/components/JobProgressBar.tsx- [ ] Muestra progress 0-100%
- [ ] Updates en tiempo real vía useJobStream
- [ ] Estados: pending (gris), processing (azul), completed (verde), failed (rojo)
- [ ] Animaciones CSS
- [ ] Integrar en job status view
- [ ] Tests (snapshot, interactions)
- [ ] Accessibility (aria-valuenow)