273 lines
8 KiB
Markdown
273 lines
8 KiB
Markdown
|
|
# 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.md` como funcionalidades actuales
|
||
|
|
- ❌ **NO deben** asumirse como existentes por asistentes de código
|
||
|
|
|
||
|
|
**Si se decide implementar alguna de estas ideas:**
|
||
|
|
|
||
|
|
1. Documentar en `SPEC.md` primero
|
||
|
|
2. Definir entidades en `domain/entities/` si aplica
|
||
|
|
3. Crear repositorios y servicios
|
||
|
|
4. Implementar API endpoints
|
||
|
|
5. Añadir tests
|
||
|
|
6. 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 `useFavorites` en frontend (localStorage)
|
||
|
|
- **NO existe** entidad `Favorite` en 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_versions` en BD
|
||
|
|
- Tabla `content_change_log` en 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 `useFavorites` en frontend (localStorage)
|
||
|
|
- ❌ Backend para sincronizar favoritos
|
||
|
|
- ❌ API para favoritos
|
||
|
|
|
||
|
|
**Para completar:** Añadir entidad `Favorite` en backend, API endpoints, sincronización.
|
||
|
|
|
||
|
|
### Versiones
|
||
|
|
|
||
|
|
- ✅ Tablas `content_versions` y `content_change_log` en 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:
|
||
|
|
|
||
|
|
1. ✅ **Documentar en SPEC.md** como funcionalidad nueva
|
||
|
|
2. ✅ **Definir entidades** en `domain/entities/` si aplica
|
||
|
|
3. ✅ **Crear repositorios y servicios** siguiendo Clean Architecture
|
||
|
|
4. ✅ **Implementar API endpoints** con validación Zod
|
||
|
|
5. ✅ **Añadir tests** (unitarios + integración)
|
||
|
|
6. ✅ **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
|