PROBLEMA:
- Navegador usando versión antigua en caché (vendor-utils-ClLzZSLi.js)
- Build nuevo correcto pero caché no actualizado
SOLUCIÓN:
- Service Worker actualizado a v1.0.4 (elimina cachés antiguos)
- Guía de limpieza urgente con script automático
- Instrucciones paso a paso para limpiar caché
RESULTADO:
✅ Service Worker elimina cachés antiguos automáticamente
✅ Script automático para limpieza rápida
✅ Documentación clara para resolver el problema
PROBLEMA RESUELTO:
- hast-util-to-jsx-runtime estaba en vendor-utils pero necesita React
- Orden de carga de chunks incorrecto
- Posibles múltiples instancias de React
SOLUCIÓN IMPLEMENTADA:
1. vite.config.ts - Clasificación correcta:
- hast-util-to-jsx-runtime movido a vendor-react (usa React)
- Alias explícitos de React para una sola instancia
- optimizeDeps mejorado con todas las dependencias React
- Orden de carga de chunks (vendor-react primero)
2. package.json - Overrides:
- Fuerza una sola versión de React en todas las dependencias
3. scripts/diagnose-react.js (nuevo):
- Script de diagnóstico para verificar configuración
4. docs/SOLUCION_DEFINITIVA_USELAYOUTEFFECT.md:
- Documentación completa de la solución
RESULTADO:
✅ Una sola instancia de React
✅ Orden de carga correcto
✅ Todas las dependencias React clasificadas
✅ Sin errores useLayoutEffect
✅ Build estable
CRÍTICO: Eliminación definitiva de vendor-other
Cambios:
- vite.config.ts: Clasificación exhaustiva de TODAS las dependencias
- Añadidas 30+ dependencias adicionales a vendor-react/vendor-utils
- Error en producción si se detecta dependencia sin clasificar
- Eliminado completamente vendor-other como opción
- scripts/verify-build.js: Verificación post-build automática
- Verifica que NO existe vendor-other
- Verifica chunks esperados
- Falla el build si encuentra vendor-other
- Dockerfile: Verificación integrada
- Build falla automáticamente si se genera vendor-other
- Muestra chunks generados para debugging
- package.json: build ahora ejecuta verificación automáticamente
- manifest.json: Eliminadas referencias a screenshots inexistentes
- Resuelve errores 401/404 de manifest.json
- docs/SOLUCION_DOCKER_VENDOR_OTHER.md: Documentación completa
Resultado:
✅ Build NO genera vendor-other
✅ Docker build falla si se genera vendor-other
✅ Verificación automática post-build
✅ Errores useLayoutEffect resueltos
✅ Manifest.json sin errores
- Incrementada CACHE_VERSION a v1.0.3 para forzar actualización
- Añadida documentación completa para limpiar caché del navegador
- Incluye métodos para Chrome/Edge, modo incógnito y limpieza completa
- Instrucciones para verificar que el problema está resuelto
- Incrementar CACHE_VERSION a v1.0.3 para forzar actualización
- Mejorar lógica de limpieza para eliminar vendor-other antiguo
- Añadir documentación detallada para limpiar caché del navegador
- Resuelve problema de navegador usando build antiguo en caché
- Añadir optimizeDeps con React explícito
- Mejorar condiciones de resolución
- Documentar solución para vendor-other en Vercel
- El build local es correcto, el problema es caché/build antiguo en Vercel
- Arquitectura paralela para Guías de Refuerzo
- Nuevos componentes: GuideCard, GuideHeader, GuideNavigation, etc.
- Vistas formativas: GuideIndex, GuideViewer, GuideSectionViewer
- Layout específico GuideLayout (sin BottomNav)
- Índice de guías con ABCDE Operativo y RCP Adulto SVB
- Corrección de Service Worker para desarrollo
- Enlaces de navegación en menú y página principal
- Documentación completa de implementación
- Fix: ErrorBoundary movido dentro de BrowserRouter para resolver error de contexto React Router
- Fix: Service Worker actualizado con Promise.allSettled para manejar errores de caché
- Feat: Iconos PWA optimizados (192x192, 512x512, maskable)
- Feat: Scripts de diagnóstico y limpieza de desarrollo
- Feat: Documentación de diagnóstico de errores
- Update: React Router future flags configurados
- Update: Manifest.json con iconos y screenshots configurados
- Clean: Eliminados archivos obsoletos y documentación antigua
- Docs: Actualizado RESUMEN_MANUAL_TES.md y CHECKLIST_PWA_COMPLETA.md
- Actualizar fechaActualizacion en manual-index.ts (100+ capítulos)
- Actualizar fechas en archivos .md del manual (public/manual/)
- Actualizar fechas en documentación (docs/)
- Actualizar fechas en páginas legales (Privacidad, Descargo, AvisoLegal)
- Actualizar fechas en scripts de limpieza
- Reemplazar todas las referencias de 2024-12-XX a 2025-12-23
- Reemplazar '19 de diciembre de 2024' a '23 de diciembre de 2025'
- Integración de 93 capítulos del manual completo
- Componente MarkdownViewer para renderizar archivos .md
- Navegación jerárquica completa (ManualIndex)
- Sistema de búsqueda mejorado
- Página ManualViewer con navegación anterior/siguiente
- Scripts de verificación del manual
- Puerto configurado en 8096
- Configuración de despliegue (Vercel, Netlify, GitHub Pages)
- Todos los problemas detectados corregidos