codigo0/docs/CHECKLIST_VERIFICACION_ADMIN_PANEL.md

4.6 KiB

CHECKLIST DE VERIFICACIÓN - ADMIN PANEL

🔧 CONFIGURACIÓN INICIAL

Backend

  • PostgreSQL instalado y corriendo
  • Usuario planetazuzu creado en PostgreSQL
  • Base de datos emerges_tes creada
  • Archivo .env configurado en backend/
  • Dependencias instaladas (npm install en backend/)
  • Tablas creadas (npm run db:create)
  • Usuario admin creado (npm run seed:admin)
  • Contenido de ejemplo creado (npm run seed:content)
  • Servidor backend inicia sin errores (npm run dev)

Admin Panel

  • Dependencias instaladas (npm install en admin-panel/)
  • Archivo .env configurado
  • Servidor de desarrollo inicia (npm run dev)

🔐 AUTENTICACIÓN

  • Login funciona con credenciales por defecto
    • Email: admin@emerges-tes.local
    • Password: Admin123!
  • Token JWT se genera correctamente
  • Token se guarda en localStorage/sessionStorage
  • Rutas protegidas requieren autenticación
  • Logout funciona correctamente

📝 GESTIÓN DE CONTENIDO

Crear Contenido

  • Se puede crear un nuevo protocolo
  • Se puede crear un nuevo checklist
  • Se puede crear un nuevo fármaco
  • Validación previene crear contenido incompleto
  • Estado inicial es draft

Editar Contenido

  • Se puede editar contenido existente
  • Cada edición crea una nueva versión
  • Historial de versiones se actualiza
  • Log de auditoría registra cambios

Validar Contenido

  • Revisor puede validar contenido
  • Estado cambia a approved tras validación
  • Super admin puede publicar contenido
  • Estado cambia a published tras publicación

Listar Contenido

  • Lista de contenido muestra todos los items
  • Filtros funcionan (tipo, nivel, estado, categoría)
  • Búsqueda funciona
  • Paginación funciona

📦 CONTENT PACK

  • Endpoint /api/content/pack/latest funciona
  • Retorna solo contenido con estado published
  • Content pack incluye todos los tipos de contenido
  • Hash del pack se calcula correctamente
  • App puede consumir content pack
  • Content pack funciona offline (cache)

🔄 VERSIONADO

  • Cada cambio crea nueva versión
  • Historial de versiones se muestra correctamente
  • Se puede ver contenido de versión anterior
  • Se puede revertir a versión anterior
  • Comparación de versiones funciona

📊 AUDITORÍA

  • Log de auditoría registra todas las acciones
  • Log muestra usuario, acción, timestamp
  • Log muestra detalles de cambios
  • Log es consultable y filtrable

🧪 SEED DATA

Checklists

  • checklist-electrodos-desa existe
  • checklist-preparacion-intubacion existe
  • checklist-rcp-adulto-svb existe
  • Checklists tienen items correctos
  • Checklists tienen metadata correcta

Protocolos

  • rcp-adulto-svb-extended existe
  • shock-hemorragico-extended existe
  • Protocolos tienen pasosRapidos
  • Protocolos tienen checklist integrado
  • Protocolos tienen dosisInline
  • Protocolos tienen fuentes

🔒 PERMISOS Y ROLES

  • super_admin tiene acceso total
  • editor_clinico solo puede editar protocolos/fármacos/checklists
  • editor_formativo solo puede editar guías/manuales
  • revisor solo puede validar
  • viewer solo puede leer
  • Permisos se aplican correctamente en API

🌐 OFFLINE Y PWA

  • Content pack se cachea en localStorage
  • App funciona offline con cache
  • Actualizaciones se detectan cuando hay conexión
  • Service Worker no se rompe

🐛 ERRORES COMUNES

Backend no inicia

  • Verificar que PostgreSQL está corriendo
  • Verificar credenciales en .env
  • Verificar que las tablas existen
  • Verificar logs de error

Login falla

  • Verificar que usuario admin existe
  • Verificar que password es correcto
  • Verificar que JWT_SECRET está configurado

Content pack vacío

  • Verificar que hay contenido con estado published
  • Verificar que endpoint funciona
  • Verificar logs del servidor

VERIFICACIÓN FINAL

  • Todo el checklist está marcado
  • No hay errores en consola
  • No hay errores en logs del servidor
  • App funciona correctamente con content pack
  • App funciona offline
  • No se rompió funcionalidad existente

📝 NOTAS

  • Si algún item falla, documentar el error
  • Verificar que las restricciones se cumplen:
    • NO se modifica procedures.ts
    • NO se modifica drugs.ts
    • NO se rompe PWA offline
    • NO se cambian rutas existentes