codigo0/docs/RESUMEN_EJECUTIVO_PLAN_TECNICO.md

5.7 KiB

📋 RESUMEN EJECUTIVO - PLAN TÉCNICO SISTEMA DE CONTENIDO

Fecha: 2025-01-06
Versión: 1.0
Documento Completo: docs/PLAN_TECNICO_SISTEMA_CONTENIDO.md


🎯 OBJETIVO

Convertir la auditoría completa en un sistema técnico ejecutable que permita:

  • Gestionar contenido externo (protocolos, guías, recursos) sin tocar código
  • Asociar imágenes/vídeos a contenido específico
  • Validar contenido con TES reales
  • Versionar cambios sin romper producción
  • Mantener offline-first y compatibilidad total

📐 ARQUITECTURA PROPUESTA

Base de Datos: Supabase (Principal) / PocketBase (Alternativa)

Supabase elegido por:

  • PostgreSQL completo con relaciones
  • Storage integrado (imágenes/vídeos)
  • API REST automática
  • Panel admin web incluido
  • Offline-first compatible (Content Pack JSON)
  • Gratis hasta 500MB

Flujo:

Supabase (Cloud) 
  → Content Pack JSON 
    → App PWA (Cache local)
      → Funciona 100% offline

🏗️ FASES DE IMPLEMENTACIÓN

FASE 4: Base de Contenido (PRIMERO)

Modelo de Datos Canónico:

  • BaseContentItem (protocolo, guía, manual, fármaco, checklist)
  • MediaResource (imágenes y vídeos con metadatos)
  • ContentResourceAssociation (asociación contenido ⇄ recursos)
  • ContentPack (distribución como JSON)

Características:

  • Desacoplado de procedures.ts y drugs.ts
  • Versionado integrado
  • Prioridades (crítica/alta/media/baja)
  • Estados (draft/in_review/approved/published/archived)
  • Fuentes clínicas (ERC, SEMES, etc.)

Esquema BD:

  • content_items (contenido principal)
  • media_resources (imágenes/vídeos)
  • content_resource_associations (relaciones)
  • content_versions (historial)
  • audit_logs (auditoría)

FASE 2: Integración Estructural (DESPUÉS)

Capa de Lectura:

  • ContentAdapter interface (contrato)
  • LocalContentAdapter (fallback a código actual)
  • PackContentAdapter (lee desde Content Pack)
  • ContentAdapterFactory (selección automática)

Estrategia de Fallback:

  1. Intentar Content Pack (si existe)
  2. Si falla → contenido local (procedures.ts, drugs.ts)
  3. Si falla → error controlado

Enlaces Bidireccionales:

  • Protocolo → Guía → Manual
  • Guía → Protocolo → Recursos
  • Manual → Guía → Protocolo
  • Sin cambiar rutas existentes

FASE 3: Validación y Escalado (DESPUÉS)

Sistema de Validación:

  • Flujo: draftin_reviewapprovedpublished
  • Validadores TES con roles (tes/medico/formador)
  • Comentarios y sugerencias
  • Expiración de validación

Feedback desde App:

  • Botón de feedback en cada contenido
  • Tipos: error/suggestion/question/praise
  • Screenshot opcional
  • Contexto (sección, paso, recurso)

Versionado:

  • Versión semántica (1.2.3)
  • Breaking changes marcados
  • Rollback a versiones anteriores
  • Changelog automático

🎛️ PANEL DE ADMINISTRACIÓN

Funcionalidades:

Editor de Protocolo:

  • Editar pasos, warnings, checklist
  • Asociar imágenes/vídeos (drag-and-drop)
  • Cambiar prioridades
  • Preview "Modo TES"
  • Versionar cambios

Gestor de Recursos:

  • Upload imágenes/vídeos
  • Editar metadatos (alt, caption, tags)
  • Asociar a contenido específico
  • Ver recursos sin asociar

Dashboard:

  • Estado de contenido (completos/incompletos)
  • Protocolos sin recursos críticos
  • Contenido pendiente de validación
  • Actividad reciente

Restricciones:

  • NO modificar rutas
  • NO cambiar componentes
  • NO afectar Service Worker
  • SÍ editar contenido y recursos

📅 ROADMAP (16 Semanas)

Semana Fase Tareas
1-2 Fase 4.1 Modelo de datos, tipos TypeScript
3-4 Fase 4.2 Supabase, esquema BD, migración
5-6 Fase 2.1 ContentAdapter, fallback
7 Fase 2.2 Enlaces bidireccionales
8-9 Fase 3.1 Sistema de validación
10 Fase 3.2 Versionado
11-12 Panel 1 Editor protocolo, gestor recursos
13-14 Panel 2 Editor guías, biblioteca, auditoría
15-16 Testing Validación con TES, optimización

MÉTRICAS DE ÉXITO

Fase 4 (Base):

  • Modelo completo y documentado
  • BD configurada y funcionando
  • Contenido migrado sin pérdida

Fase 2 (Integración):

  • App consume contenido externo
  • Fallback 100% funcional
  • Enlaces bidireccionales operativos

Fase 3 (Validación):

  • Validación funcional
  • Feedback operativo
  • Versionado completo

Panel Admin:

  • Edición sin tocar código
  • Upload de recursos funcional
  • Asociación operativa

🔑 DECISIONES CLAVE

  1. Supabase como opción principal

    • PostgreSQL robusto
    • Storage integrado
    • API automática
    • Panel admin incluido
  2. Content Pack como distribución

    • JSON descargable
    • Cache local en app
    • Offline-first garantizado
    • Sin dependencia de BD en producción
  3. Fallback a local siempre

    • Compatibilidad 100%
    • Sin romper producción
    • Migración gradual
  4. Versionado semántico

    • Control de cambios
    • Rollback seguro
    • Changelog automático

🚫 LO QUE NO SE TOCA

  • src/data/procedures.ts
  • src/data/drugs.ts
  • Sistema de búsqueda
  • Service Worker
  • Rutas de navegación
  • Componentes existentes

Todo se hace vía Content Pack y adaptadores.


📚 DOCUMENTACIÓN COMPLETA

  • Plan Técnico Completo: docs/PLAN_TECNICO_SISTEMA_CONTENIDO.md
  • Auditoría: docs/AUDITORIA_COMPLETA_ESTADO_APP.md
  • Modelo de Datos: Ver sección 4.1 del plan técnico
  • Esquema BD: Ver sección 4.2 del plan técnico

Estado: Diseño Completo - Listo para Implementación