8 KiB
Ideas y Funcionalidades Futuras - EMERGES TES
Ideas o funcionalidades futuras que NO están implementadas actualmente.
Última actualización: 2025-02-02
⚠️ ACLARACIÓN IMPORTANTE
Todas las funcionalidades listadas aquí NO están implementadas.
- ❌ NO existen en el código actual
- ❌ NO están documentadas en
SPEC.mdcomo funcionalidades actuales - ❌ NO deben asumirse como existentes por asistentes de código
Si se decide implementar alguna de estas ideas:
- Documentar en
SPEC.mdprimero - Definir entidades en
domain/entities/si aplica - Crear repositorios y servicios
- Implementar API endpoints
- Añadir tests
- Actualizar este documento
💡 Ideas Futuras
1. Sistema de Notificaciones
Descripción: Sistema para notificar a usuarios sobre actualizaciones de protocolos, nuevos fármacos, etc.
Estado: NO implementado
Componentes potenciales:
- Entidad
Notification(no existe) - Servicio de notificaciones (no existe)
- Endpoints de notificaciones (no existen)
- Frontend de notificaciones (no existe)
Consideraciones:
- Requeriría sistema de usuarios más completo
- Podría usar Service Worker para notificaciones push
- Necesitaría definir qué eventos generan notificaciones
2. Sistema de Favoritos/Bookmarks
Descripción: Permitir a usuarios marcar protocolos/fármacos como favoritos para acceso rápido.
Estado: Parcialmente implementado en frontend (useFavorites.ts), pero sin persistencia backend
Componentes actuales:
- Hook
useFavoritesen frontend (localStorage) - NO existe entidad
Favoriteen backend - NO existe API para sincronizar favoritos
Consideraciones:
- Requeriría sistema de usuarios autenticados
- Podría sincronizar favoritos entre dispositivos
- Necesitaría migración de datos si usuarios ya tienen favoritos locales
3. Sistema de Comentarios/Anotaciones
Descripción: Permitir a usuarios añadir comentarios o anotaciones personales a protocolos/fármacos.
Estado: NO implementado
Componentes potenciales:
- Entidad
UserAnnotation(no existe) - Servicio de anotaciones (no existe)
- Endpoints de anotaciones (no existen)
- Frontend de anotaciones (no existe)
Consideraciones:
- Requeriría sistema de usuarios
- Podría ser útil para notas personales del profesional
- Necesitaría definir privacidad (personales vs compartidas)
4. Sistema de Versiones y Historial de Cambios
Descripción: Sistema completo de versionado con historial detallado de cambios y posibilidad de revertir.
Estado: Parcialmente implementado (content_versions, content_change_log), pero sin UI completa
Componentes actuales:
- Tabla
content_versionsen BD - Tabla
content_change_logen BD - NO existe UI para ver historial completo
- NO existe funcionalidad de revertir versiones
Consideraciones:
- Ya existe infraestructura de BD
- Necesitaría UI en admin panel
- Podría añadir comparación de versiones (diff)
5. Sistema de Estadísticas de Uso
Descripción: Tracking de qué protocolos/fármacos se consultan más, tiempo de uso, etc.
Estado: NO implementado
Componentes potenciales:
- Entidad
UsageLog(no existe) - Servicio de analytics (no existe)
- Endpoints de tracking (no existen)
- Dashboard de estadísticas (no existe)
Consideraciones:
- Requeriría definir qué eventos trackear
- Necesitaría considerar privacidad (datos anonimizados)
- Podría usar herramientas externas (Google Analytics) o propio sistema
6. Sistema de Exportación/Importación
Descripción: Permitir exportar/importar contenido en formatos estándar (JSON, CSV, etc.).
Estado: Parcialmente implementado (scripts de migración), pero sin UI
Componentes actuales:
- Scripts de migración (
backend/scripts/migrate-*.js) - NO existe UI para exportar/importar desde admin panel
- NO existe API para exportar/importar
Consideraciones:
- Ya existe lógica de migración en scripts
- Podría exponerse como funcionalidad del admin panel
- Necesitaría validación de datos importados
7. Sistema de Búsqueda Avanzada
Descripción: Búsqueda con filtros avanzados, búsqueda semántica, sugerencias, etc.
Estado: Búsqueda básica implementada, avanzada NO
Componentes actuales:
- Búsqueda básica en frontend (
useSearch.ts) - Búsqueda básica en backend (
GlossaryService.search()) - NO existe búsqueda semántica
- NO existe búsqueda con filtros avanzados en UI
Consideraciones:
- Podría usar herramientas de búsqueda full-text de PostgreSQL
- Podría integrar búsqueda semántica con embeddings
- Necesitaría definir qué campos son buscables
8. Sistema de Colaboración en Contenido
Descripción: Múltiples usuarios editando contenido simultáneamente, comentarios en revisiones, etc.
Estado: NO implementado
Componentes potenciales:
- Sistema de locks para edición simultánea (no existe)
- Comentarios en revisiones (no existe)
- Notificaciones de cambios (no existe)
Consideraciones:
- Requeriría sistema de usuarios más completo
- Podría usar WebSockets para colaboración en tiempo real
- Necesitaría definir permisos de edición
9. Sistema de Certificaciones/Formación
Descripción: Sistema para certificar que usuarios han completado formación sobre protocolos.
Estado: NO implementado
Componentes potenciales:
- Entidad
Certification(no existe) - Entidad
Course(no existe) - Sistema de quizzes/evaluaciones (no existe)
Consideraciones:
- Requeriría sistema de usuarios completo
- Podría integrar con SCORM (ya existe generador SCORM)
- Necesitaría definir qué certifica cada curso
10. Sistema de Alertas/Recordatorios
Descripción: Alertas sobre cambios en protocolos que el usuario usa frecuentemente, recordatorios de formación, etc.
Estado: NO implementado
Componentes potenciales:
- Sistema de alertas (no existe)
- Sistema de recordatorios (no existe)
- Preferencias de usuario para alertas (no existe)
Consideraciones:
- Requeriría sistema de usuarios
- Podría usar Service Worker para notificaciones push
- Necesitaría definir qué eventos generan alertas
🔄 Funcionalidades Parcialmente Implementadas
Favoritos
- ✅ Hook
useFavoritesen frontend (localStorage) - ❌ Backend para sincronizar favoritos
- ❌ API para favoritos
Para completar: Añadir entidad Favorite en backend, API endpoints, sincronización.
Versiones
- ✅ Tablas
content_versionsycontent_change_logen BD - ❌ UI para ver historial completo
- ❌ Funcionalidad de revertir versiones
Para completar: Añadir UI en admin panel, endpoints para historial, funcionalidad de revertir.
📋 Criterios para Implementar Ideas Futuras
Antes de implementar cualquier idea de esta lista:
- ✅ Documentar en SPEC.md como funcionalidad nueva
- ✅ Definir entidades en
domain/entities/si aplica - ✅ Crear repositorios y servicios siguiendo Clean Architecture
- ✅ Implementar API endpoints con validación Zod
- ✅ Añadir tests (unitarios + integración)
- ✅ Actualizar este documento marcando como implementado
🚫 Lo que NO Existe (y NO debe Asumirse)
Sistemas NO Implementados
- ❌ Sistema de tickets de soporte/incidencias
- ❌ Sistema de mensajería entre usuarios
- ❌ Sistema de roles avanzados (más allá de admin/reviewer/validator)
- ❌ Sistema de permisos granulares por recurso
- ❌ Sistema de workflows personalizables
- ❌ Sistema de integraciones con sistemas externos (HL7, FHIR, etc.)
Si se necesita alguno de estos sistemas: Debe tratarse como nueva feature, documentarse en SPEC.md y seguir el proceso de desarrollo normal.
📚 Referencias
- Especificación maestra:
SPEC.md - Arquitectura:
README_ARCHITECTURE.md - Tareas pendientes:
README_TODO.md - Guía de desarrollo:
README_DEV.md
Última actualización: 2025-02-02