vite-plugin-pwa genera manifest.webmanifest + service worker en el build. Iconos nuevos
generados a partir del logo actual (192, 512, maskable para Android). El service worker
precachea solo assets estaticos (JS/CSS/iconos) -- /api nunca se cachea, siempre va a la red, asi
los datos no quedan desactualizados. Se actualiza solo (autoUpdate) sin pedirle nada al usuario.
Probado: build genera sw.js/manifest correctamente, el service worker registra y activa en un
browser real, y la app (login, listado de proyectos, llamadas a /api) sigue funcionando igual
que antes -- sin regresiones.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- seed-db.js: los datos de ejemplo (departamentos TI/Finanzas/RRHH/Comercial +
usuario admin con clave=usuario) solo se cargan si NODE_ENV != production.
En produccion el seed solo carga catalogos (roles, prioridades, estados,
tipos de proyecto) — la organizacion real la crea el admin desde la UI.
- Nuevo backend/src/scripts/create-admin.js: crea el usuario Administrador
inicial de produccion con una clave fuerte generada al azar (nunca
clave=usuario, esa convencion es solo para dev).
- frontend: agrega "serve" como dependencia de produccion (arquetipo B: el
frontend corre como proceso separado sirviendo el build con
`serve -s dist`).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>