Frontend (v1.0.87)
Service Worker (public/service-worker.js)
✅ Cache versionado dinámico: ayutec-v1.0.87
✅ Estrategia Network-First con fallback a cache
✅ Auto-limpieza de caches antiguos en activación
✅ Skip waiting para activación inmediata
✅ Soporte para mensaje SKIP_WAITING desde cliente
Detección de Actualizaciones (App.jsx)
✅ Registro automático de Service Worker
✅ Listener de updatefound para detectar nuevas versiones
✅ Listener de controllerchange para recarga automática
✅ Estado updateAvailable y waitingWorker
Modal de Actualización
✅ Diseño grande y llamativo con animación bounce
✅ Overlay bloqueante (z-index 9999, no se puede cerrar)
✅ Botón enorme: "🚀 ACTUALIZAR AHORA"
✅ Gradiente indigo/purple, responsive
✅ Texto claro: "Nueva versión disponible"
✅ Recarga automática al actualizar
PWA Manifest (site.webmanifest)
✅ Agregado start_url y scope
✅ Configurado orientation: portrait
✅ Display standalone para app nativa
HTML Metatags (index.html)
✅ theme-color para barra de navegación
✅ apple-mobile-web-app-capable para iOS
✅ mobile-web-app-capable para Android
✅ Viewport con user-scalable=no para PWA
Automatización
✅ Script PowerShell update-version.ps1:
Incrementa versión automáticamente (patch)
Actualiza package.json
Actualiza service-worker.js
Sincroniza ambos archivos
✅ Guía completa PWA-UPDATE-GUIDE.md
Flujo de Actualización
Desarrollador ejecuta update-version.ps1
Build y deploy de nueva versión
Usuario abre la app
Service Worker detecta nueva versión
Modal aparece automáticamente bloqueando UI
Usuario presiona "ACTUALIZAR AHORA"
Service Worker se activa
Página se recarga automáticamente
Usuario usa nueva versión
Backend (v1.0.84)
Sin cambios
Ahora la PWA se actualiza automáticamente mostrando un modal imposible de ignorar! 🚀📱