Modulo de Perfiles Familiares
Identificador: MTS-FAM-001
Version: 2.0.0
Fecha: 2025-12-01
Autor: SpecQueen
Decision: ACL8-001 - Modelo unificado de cuidadores, ACL8-004 - Jerarquia de roles
Dependencias: MTS-AUTH-001, MTS-USR-001, MTS-PRI-001
Ultima Revision: Iteracion 13 - Marcado como DEPRECATED
ESTADO: DEPRECATED (Iteración 13)
Este módulo ha sido consolidado en MTS-USR-001 (Modelo Unificado de Cuidadores).
Motivo: Eliminar duplicación, centralizar gestión de relaciones familiares y cuidadores.
Referencia Canónica: MTS-USR-001 Sección 2.1
Decisión: ACL12-021 - Opción A (Consolidar en MTS-USR-001)
Este documento se mantiene como referencia histórica. Para implementación, usar MTS-USR-001.
1. Proposito
Este modulo permite gestionar relaciones familiares y de cuidado dentro de MedTime. Define la jerarquia de acceso entre diferentes tipos de usuarios, incluyendo pacientes autonomos, cuidadores responsables, cuidadores solidarios y perfiles vinculados.
Referencia Principal: El modelo conceptual de cuidadores se define en MTS-USR-001 Seccion 2.1
Referencia Canónica (Iteración 11): Las reglas de negocio centrales se encuentran en 06-reglas-de-negocio.md.
Ver RN-USR-006 a RN-USR-011 para límites de cuidadores y contactos de emergencia.
2. Actores
| Actor |
Descripcion |
Referencia |
| Paciente Autonomo |
Usuario adulto propietario de su cuenta |
MTS-USR-001 |
| Cuidador Responsable |
Titular de cuenta con pacientes dependientes |
MTS-USR-001 |
| Cuidador Solidario |
Persona de confianza que apoya a un paciente |
MTS-USR-001 |
| Perfil Vinculado |
Usuario con acceso limitado sin rol de cuidado |
Este documento |
| Contacto de Emergencia |
Receptor de alertas sin acceso a datos |
MTS-USR-001 |
| Sistema |
Procesos automaticos de sincronizacion y alertas |
- |
3. Jerarquia de Acceso (ACL8-004)
Decision del Director Round 8: Reanálisis de jerarquía considerando cuidadores solidarios y responsables.
3.1. Niveles de Acceso
| Nivel |
Rol |
Descripcion |
Control sobre Datos |
| 1 |
Cuidador Responsable |
Tutor legal con control total |
Total sobre dependientes |
| 2 |
Paciente Autonomo |
Dueno de sus propios datos |
Total sobre si mismo |
| 3 |
Cuidador Solidario |
Apoyo de confianza |
Segun permisos del paciente |
| 4 |
Perfil Vinculado |
Acceso compartido basico |
Solo lectura segun permisos |
| 5 |
Contacto Emergencia |
Solo alertas |
Ninguno (solo recibe notificaciones) |
| 6 |
Profesional de Salud |
Acceso clinico temporal |
Solo lectura con consentimiento |
3.2. Diagrama de Jerarquia
flowchart TD
subgraph Nivel1["Nivel 1: Control Total"]
CR[Cuidador Responsable]
end
subgraph Nivel2["Nivel 2: Propietario"]
PA[Paciente Autonomo]
end
subgraph Nivel3["Nivel 3: Apoyo Activo"]
CS[Cuidador Solidario]
end
subgraph Nivel4["Nivel 4: Acceso Limitado"]
PV[Perfil Vinculado]
end
subgraph Nivel5["Nivel 5: Solo Notificaciones"]
CE[Contacto Emergencia]
end
subgraph Nivel6["Nivel 6: Acceso Temporal"]
PS[Profesional de Salud]
end
CR -->|Controla| PD[Paciente Dependiente]
PA -->|Designa| CS
PA -->|Vincula| PV
PA -->|Registra| CE
PA -->|Comparte con| PS
CS -->|Apoya a| PA
3.3. Matriz de Permisos por Nivel
| Permiso |
CR |
PA |
CS |
PV |
CE |
PS |
| Ver medicamentos |
Si* |
Si |
Config |
Config |
No |
Consent |
| Modificar medicamentos |
Si* |
Si |
No |
No |
No |
No |
| Registrar tomas |
Si* |
Si |
Config |
No |
No |
No |
| Ver adherencia |
Si* |
Si |
Config |
Config |
No |
Consent |
| Ver recetas |
Si* |
Si |
Config |
Config |
No |
Consent |
| Ver citas |
Si* |
Si |
Config |
Config |
No |
Consent |
| Ver analisis |
Si* |
Si |
Config |
Config |
No |
Consent |
| Recibir alertas tomas |
Si* |
Si |
Config |
No |
No |
Config |
| Recibir alertas criticas |
Si* |
Si |
Si |
No |
Si |
Config |
| Exportar datos |
Si* |
Si |
No |
No |
No |
Consent |
| Compartir con terceros |
Si* |
Si |
No |
No |
No |
No |
3.3.1. Leyenda
- Si*: Aplica a pacientes dependientes bajo su cuidado
- Config: Configurable por el paciente autonomo
- Consent: Requiere consentimiento explicito del paciente
- No: No disponible para este rol
3.4. Tipos de Perfil (Actualizado v2.0)
| Tipo |
Control |
Cuenta Propia |
Edad |
Limite |
| Paciente Autonomo |
Total sobre si mismo |
Si |
>= 18 |
1 por cuenta |
| Paciente Dependiente |
Cuidador responsable |
No |
< 18 o incapaz |
Free:1, Pro:5, Perfect:10 |
| Cuidador Solidario |
Otorgado por paciente |
Si |
>= 18 |
5 por paciente |
| Perfil Vinculado |
Otorgado por paciente |
Si |
>= 18 |
10 por paciente |
| Contacto Emergencia |
Solo notificaciones |
No requerida |
N/A |
10 por paciente |
3.5. Comparativa de Capacidades (Actualizado v2.0)
| Capacidad |
Paciente Autonomo |
Cuidador Responsable |
Paciente Dependiente |
Cuidador Solidario |
Perfil Vinculado |
| Crear medicamentos |
Si |
Si (para dependientes) |
No |
No |
No |
| Recibir alertas propias |
Si |
Si |
Via cuidador |
N/A |
N/A |
| Recibir alertas de otros |
N/A |
Si (dependientes) |
N/A |
Config |
No |
| Ver estadisticas |
Si |
Si (dependientes) |
Solo lectura (13+) |
Config |
Config |
| Exportar datos |
Si |
Si (dependientes) |
No |
No |
No |
| Eliminar cuenta |
Si |
Si |
N/A (cuidador decide) |
Desvincularse |
Desvincularse |
| MFA propio |
Si |
Si |
No aplica |
Si |
Si |
| Backup independiente |
Si |
Si (incluye dependientes) |
Incluido |
Si |
Si |
| Designar cuidadores |
Si |
Si (para dependientes) |
No |
No |
No |
4. Funcionalidades
4.1. Gestion de Perfiles Familiares (MTS-FAM-001-F01)
4.1.1. Descripcion
Permite al titular ver, agregar y gestionar perfiles familiares desde una vista centralizada.
4.1.2. Precondiciones
- Usuario tiene cuenta activa tier Pro o Perfect
- Usuario ha verificado su identidad
4.1.3. Vista de Perfiles
+------------------------------------------+
| PERFILES FAMILIARES |
+------------------------------------------+
| |
| [Avatar] Mi Perfil (Principal) |
| 5 medicamentos activos |
| Adherencia: 94% |
| |
| [Avatar] Maria Garcia (Hija, 12 anos) |
| Dependiente |
| 3 medicamentos activos |
| Adherencia: 98% |
| |
| [Avatar] Juan Garcia (Padre, 72 anos) |
| Vinculado |
| 8 medicamentos activos |
| Ultima sync: hace 2 horas |
| |
| [+] Agregar perfil familiar |
+------------------------------------------+
4.1.4. Reglas de Negocio
| ID |
Regla |
| RN-FAM-001 |
Maximo 5 perfiles dependientes por cuenta |
| RN-FAM-002 |
Maximo 10 perfiles vinculados por cuenta |
| RN-FAM-003 |
Perfiles familiares requieren tier Pro o Perfect |
| RN-FAM-004 |
Dependientes deben ser menores de 18 anos |
| RN-FAM-005 |
Vinculados deben ser mayores de 18 anos |
4.2. Agregar Perfil Dependiente (MTS-FAM-001-F02)
4.2.1. Descripcion
Permite al titular crear un perfil para un menor de edad bajo su responsabilidad.
4.2.2. Flujo Principal
flowchart TD
A[Titular selecciona Agregar perfil] --> B{Tipo de perfil?}
B -->|Dependiente| C[Mostrar formulario]
C --> D[Ingresar datos del menor]
D --> E{Edad < 18?}
E -->|No| F[Error: debe ser menor]
E -->|Si| G[Mostrar aviso legal]
G --> H[Titular acepta responsabilidad]
H --> I{Acepta?}
I -->|No| J[Cancelar]
I -->|Si| K[Crear perfil dependiente]
K --> L[Mostrar opciones de medicamentos]
L --> M{Migrar de otra app?}
M -->|Si| N[Importar datos]
M -->|No| O[Agregar manualmente]
N --> P[Perfil listo]
O --> P
4.2.3. Datos del Dependiente
| Campo |
Tipo |
Obligatorio |
Validacion |
| nombre |
string |
Si |
2-50 caracteres |
| apellidos |
string |
Si |
2-100 caracteres |
| fecha_nacimiento |
date |
Si |
Edad < 18 anos |
| genero |
enum |
No |
M/F/Otro/Prefiero no decir |
| relacion |
enum |
Si |
Hijo/Nieto/Sobrino/Otro |
| foto |
image |
No |
Max 5MB, JPG/PNG |
| alergias |
string[] |
No |
Lista de alergias conocidas |
| condiciones |
string[] |
No |
Condiciones medicas |
4.2.4. Aviso Legal (Obligatorio)
+------------------------------------------+
| RESPONSABILIDAD LEGAL |
+------------------------------------------+
| |
| Al crear un perfil para un menor de edad,|
| usted declara bajo protesta de decir |
| verdad que: |
| |
| 1. Es el padre, madre o tutor legal del |
| menor. |
| |
| 2. Tiene la autoridad legal para |
| gestionar su informacion de salud. |
| |
| 3. Acepta la responsabilidad total por |
| la precision de los datos ingresados. |
| |
| 4. Notificara a MedTime si su situacion |
| legal cambia. |
| |
| [ ] He leido y acepto estas condiciones |
| |
| [Cancelar] [Crear perfil] |
+------------------------------------------+
4.2.5. Reglas de Negocio
| ID |
Regla |
| RN-FAM-010 |
Aceptacion de responsabilidad legal es obligatoria |
| RN-FAM-011 |
Fecha de nacimiento debe indicar edad < 18 |
| RN-FAM-012 |
Titular puede delegar alertas a otros cuidadores |
| RN-FAM-013 |
Datos del dependiente se incluyen en backup del titular |
4.3. Vincular Perfil Adulto (MTS-FAM-001-F03)
4.3.1. Descripcion
Permite vincular la cuenta de un adulto para compartir acceso mutuo como familia.
4.3.2. Flujo Principal
sequenceDiagram
participant T as Titular
participant S as Sistema
participant V as Usuario a Vincular
T->>S: Solicita vincular perfil
S->>T: Muestra opciones de vinculacion
T->>S: Ingresa email del familiar
S->>S: Verifica si tiene cuenta MedTime
alt Tiene cuenta
S->>V: Envia invitacion push/email
V->>S: Acepta invitacion
S->>S: Crea vinculo bidireccional
S->>T: Notifica vinculacion exitosa
S->>V: Notifica vinculacion exitosa
else No tiene cuenta
S->>V: Envia invitacion a registrarse
V->>S: Se registra
V->>S: Acepta vinculacion pendiente
S->>S: Crea vinculo bidireccional
end
4.3.3. Pantalla de Invitacion
+------------------------------------------+
| VINCULAR FAMILIAR |
+------------------------------------------+
| |
| Ingresa el email de tu familiar para |
| enviar una invitacion de vinculacion. |
| |
| Email: [_________________________] |
| |
| Relacion: [Seleccionar v] |
| - Esposo/a |
| - Padre/Madre |
| - Hijo/a (adulto) |
| - Hermano/a |
| - Otro familiar |
| |
| Permisos que otorgas: |
| [x] Ver mis medicamentos |
| [x] Recibir mis alertas de emergencia |
| [ ] Registrar tomas en mi nombre |
| [ ] Ver mi historial completo |
| |
| [Cancelar] [Enviar invitacion] |
+------------------------------------------+
4.3.4. Estados de Vinculacion
| Estado |
Descripcion |
Acciones Disponibles |
| PENDIENTE |
Invitacion enviada, esperando respuesta |
Cancelar, Reenviar |
| ACEPTADA |
Vinculo activo |
Ver perfil, Modificar permisos, Desvincular |
| RECHAZADA |
Invitacion rechazada |
Reintentar (despues de 7 dias) |
| DESVINCULADA |
Vinculo terminado |
Reinvitar |
4.3.5. Reglas de Negocio
| ID |
Regla |
| RN-FAM-020 |
Vinculacion requiere consentimiento de ambas partes |
| RN-FAM-021 |
Invitacion expira en 7 dias |
| RN-FAM-022 |
Maximo 3 invitaciones pendientes simultaneas |
| RN-FAM-023 |
Usuario rechazado no puede ser reinvitado por 7 dias |
| RN-FAM-024 |
Cualquier parte puede desvincular unilateralmente |
4.4. Permisos entre Perfiles (MTS-FAM-001-F04)
4.4.1. Matriz de Permisos Configurables
| Permiso |
Descripcion |
Default Dependiente |
Default Vinculado |
| ver_medicamentos |
Ver lista de medicamentos |
N/A (titular ve todo) |
Si |
| ver_adherencia |
Ver estadisticas de adherencia |
N/A |
Si |
| ver_historial |
Ver historial de tomas |
N/A |
No |
| recibir_alertas |
Recibir alertas del otro perfil |
N/A |
Solo emergencias |
| registrar_tomas |
Registrar tomas en nombre de |
N/A |
No |
| modificar_medicamentos |
Agregar/editar medicamentos |
N/A |
No |
4.4.2. Pantalla de Permisos
+------------------------------------------+
| PERMISOS: Juan Garcia (Padre) |
+------------------------------------------+
| |
| Que puede ver Juan de tu perfil: |
| |
| [x] Mis medicamentos activos |
| [x] Mi adherencia semanal |
| [ ] Mi historial completo de tomas |
| [ ] Mis recetas y documentos |
| |
| Alertas que recibe Juan: |
| |
| [x] Emergencias (toma critica omitida) |
| [ ] Recordatorios de mis tomas |
| [ ] Mis logros de adherencia |
| |
| Que puede hacer Juan: |
| |
| [ ] Registrar tomas en mi nombre |
| [ ] Agregar medicamentos a mi perfil |
| |
| [Guardar cambios] |
+------------------------------------------+
4.5. Transicion de Dependiente a Independiente (MTS-FAM-001-F05)
4.5.1. Descripcion
Cuando un dependiente cumple 18 anos, puede migrar a una cuenta independiente.
4.5.2. Flujo de Transicion
flowchart TD
A[Sistema detecta cumpleanos 18] --> B[Notificar al titular]
B --> C[Notificar al dependiente via titular]
C --> D{Dependiente quiere cuenta propia?}
D -->|Si| E[Crear cuenta para dependiente]
D -->|No, continuar como dependiente| F[Mantener status 6 meses mas]
E --> G[Migrar datos a nueva cuenta]
G --> H{Mantener vinculacion?}
H -->|Si| I[Convertir a vinculado]
H -->|No| J[Desvincular completamente]
I --> K[Configurar permisos]
J --> L[Finalizar]
K --> L
F --> M{Cumple 18.5 anos?}
M -->|Si| N[Forzar decision]
N --> D
4.5.3. Pantalla de Transicion (Para Titular)
+------------------------------------------+
| MARIA CUMPLE 18 ANOS |
+------------------------------------------+
| |
| Maria Garcia cumplira 18 anos el |
| 15 de marzo de 2026. |
| |
| A partir de esa fecha, Maria puede: |
| |
| 1. Crear su propia cuenta MedTime |
| - Tendra control total de sus datos |
| - Puede mantenerte como vinculado |
| |
| 2. Continuar como dependiente |
| - Maximo 6 meses adicionales |
| - Requiere su consentimiento |
| |
| Recomendamos hablar con Maria sobre |
| estas opciones antes de su cumpleanos. |
| |
| [Recordarme en 1 mes] |
+------------------------------------------+
4.5.4. Reglas de Negocio
| ID |
Regla |
| RN-FAM-030 |
Sistema notifica 30 dias antes del cumpleanos 18 |
| RN-FAM-031 |
Dependiente puede extender status maximo 6 meses |
| RN-FAM-032 |
A los 18.5 anos, transicion es obligatoria |
| RN-FAM-033 |
Datos se migran completamente a nueva cuenta |
| RN-FAM-034 |
Historial se preserva con consentimiento |
4.6. Cambio de Perfil Activo (MTS-FAM-001-F06)
4.6.1. Descripcion
Permite al titular cambiar rapidamente entre perfiles para gestionar medicamentos.
4.6.2. UI de Cambio Rapido
+------------------------------------------+
| [Avatar v] Maria Garcia |
+------------------------------------------+
| [Avatar] Mi Perfil |
| [Avatar] Maria Garcia (activo) [x] |
| [Avatar] Juan Garcia |
+------------------------------------------+
| [+ Agregar perfil] |
+------------------------------------------+
4.6.3. Indicador de Perfil Activo
+------------------------------------------+
| MEDICAMENTOS [Maria v] |
+------------------------------------------+
| |
| Gestionando medicamentos de: |
| Maria Garcia (Hija, 12 anos) |
| |
| [Paracetamol 500mg] |
| Cada 8 horas - Siguiente: 2:00 PM |
| |
| [Amoxicilina 250mg] |
| Cada 12 horas - Siguiente: 8:00 PM |
+------------------------------------------+
4.6.4. Reglas de Negocio
| ID |
Regla |
| RN-FAM-040 |
Cambio de perfil requiere confirmacion si hay acciones pendientes |
| RN-FAM-041 |
Alertas se muestran con indicador del perfil correspondiente |
| RN-FAM-042 |
Estadisticas se calculan por perfil individual |
5. Alertas Familiares
5.1. Configuracion de Alertas por Perfil
| Tipo de Alerta |
Quien Recibe |
Configurable |
| Toma pendiente (dependiente) |
Titular |
Si |
| Toma omitida (dependiente) |
Titular |
Si |
| Emergencia (dependiente) |
Titular + cuidadores |
No (siempre activa) |
| Toma pendiente (vinculado) |
Vinculado |
N/A |
| Emergencia (vinculado) |
Segun permisos |
Si |
+------------------------------------------+
| ALERTA DE MEDICAMENTO |
+------------------------------------------+
| |
| [Avatar Maria] |
| |
| Maria debe tomar: |
| Paracetamol 500mg |
| |
| Hora programada: 2:00 PM |
| Hace 15 minutos |
| |
| [Marcar como tomada] |
| [Posponer 30 min] |
| [Omitir esta dosis] |
+------------------------------------------+
6. Privacidad y Cumplimiento
6.1. Requisitos HIPAA para Menores
| Requisito |
Implementacion |
| Autorizacion del representante |
Aceptacion de responsabilidad legal |
| Acceso del menor a sus datos |
A partir de 13 anos, acceso de solo lectura |
| Transicion a los 18 |
Proceso de migracion documentado |
6.2. Requisitos LGPD
| Requisito |
Implementacion |
| Consentimiento parental |
Obligatorio para < 18 anos |
| Derechos del menor |
Ejercibles por representante |
| Portabilidad |
Exportacion incluye perfiles dependientes |
6.3. Auditoria de Acceso Familiar
| Evento |
Datos Registrados |
| FAMILY_PROFILE_CREATED |
titular_id, dependiente_data, timestamp |
| FAMILY_PROFILE_ACCESSED |
accessor_id, profile_id, action, timestamp |
| FAMILY_LINK_CREATED |
initiator_id, target_id, permissions, timestamp |
| FAMILY_LINK_REVOKED |
initiator_id, target_id, reason, timestamp |
| FAMILY_PERMISSION_CHANGED |
modifier_id, profile_id, old_perms, new_perms |
7. Modelo de Datos
7.1. Entidades
FamilyProfile {
id: UUID [PK]
owner_id: UUID [FK -> User]
type: ENUM(PRINCIPAL, DEPENDIENTE, VINCULADO)
status: ENUM(ACTIVE, PENDING, SUSPENDED, MIGRATED)
// Datos del perfil
nombre: string
apellidos: string
fecha_nacimiento: date
genero: string?
relacion: string
foto_url: string?
// Metadata
created_at: timestamp
updated_at: timestamp
migrated_to: UUID? [FK -> User] // Si se convirtio en cuenta independiente
}
FamilyLink {
id: UUID [PK]
initiator_id: UUID [FK -> User]
target_id: UUID [FK -> User]
status: ENUM(PENDING, ACCEPTED, REJECTED, REVOKED)
relacion: string
// Permisos
can_view_medications: boolean
can_view_adherence: boolean
can_view_history: boolean
can_receive_alerts: boolean
can_register_doses: boolean
can_modify_medications: boolean
// Metadata
invited_at: timestamp
accepted_at: timestamp?
revoked_at: timestamp?
revoked_by: UUID?
}
7.2. Indices
CREATE INDEX idx_family_profile_owner ON FamilyProfile(owner_id);
CREATE INDEX idx_family_profile_type ON FamilyProfile(type, status);
CREATE INDEX idx_family_link_initiator ON FamilyLink(initiator_id, status);
CREATE INDEX idx_family_link_target ON FamilyLink(target_id, status);
8. Criterios de Aceptacion
| ID |
Criterio |
| AC-FAM-001 |
Usuario Pro/Perfect puede crear hasta 5 perfiles dependientes |
| AC-FAM-002 |
Usuario puede vincular hasta 10 perfiles de adultos |
| AC-FAM-003 |
Creacion de dependiente requiere aceptar responsabilidad legal |
| AC-FAM-004 |
Vinculacion requiere consentimiento de ambas partes |
| AC-FAM-005 |
Alertas de dependientes llegan al titular |
| AC-FAM-006 |
Cambio de perfil activo es fluido (< 1 segundo) |
| AC-FAM-007 |
Dependiente que cumple 18 recibe opcion de cuenta propia |
| AC-FAM-008 |
Cualquier parte puede desvincular unilateralmente |
| AC-FAM-009 |
Permisos son granulares y configurables |
| AC-FAM-010 |
Historial de acceso familiar se registra en audit log |
9. Disponibilidad por Tier (Actualizado v2.0)
9.1. Para Pacientes Autonomos
| Funcionalidad |
Free |
Pro |
Perfect |
| Cuidadores solidarios |
0 |
5 |
5 |
| Perfiles vinculados |
0 |
5 |
10 |
| Contactos de emergencia |
Local* |
10 |
10 |
| Alertas a cuidadores |
No |
Si |
Si |
| Estadisticas compartidas |
No |
Basicas |
Completas |
*Free: Contactos almacenados localmente como referencia, sin alertas automaticas
9.2. Para Cuidadores Responsables
| Funcionalidad |
Free |
Pro |
Perfect |
| Pacientes dependientes |
1 |
5 |
10 |
| Cuidadores solidarios (por dependiente) |
0 |
5 |
5 |
| Perfiles vinculados (por dependiente) |
0 |
3 |
5 |
| Alertas de dependientes |
Si (local) |
Si (cloud) |
Si (cloud) |
| Sincronizacion cloud |
No |
Si |
Si |
| Dashboard consolidado |
No |
Si |
Si |
9.3. Reglas de Upgrade/Downgrade
| Escenario |
Comportamiento |
| Pro -> Free con mas de 1 dependiente |
Debe reducir a 1 antes de downgrade |
| Perfect -> Pro con mas de 5 dependientes |
Debe reducir a 5 antes de downgrade |
| Pro -> Free con cuidadores solidarios |
Cuidadores pierden acceso inmediatamente |
| Cualquier downgrade |
Se notifica a usuarios afectados 7 dias antes |
10. Casos de Error
10.1. ERR-FAM-001: Invitación Pendiente Expira
| Campo |
Valor |
| Código |
ERR-FAM-001 |
| Descripción |
Invitación de vinculación familiar expira sin respuesta |
| Causa |
Invitado no acepta dentro de 7 días, email no recibido, invitado no tiene cuenta |
| Detección |
fecha_expiracion < now() AND estado = PENDIENTE |
| Acción Usuario |
Notificar al titular: "Tu invitación a [email] ha expirado. ¿Deseas reenviarla?" |
| Acción Sistema |
Marcar invitación como EXPIRADA, permitir reenvío, mantener historial |
| Severidad |
Baja |
| Recuperación |
Titular puede reenviar invitación |
10.2. ERR-FAM-002: Conflicto Entre Tutores
| Campo |
Valor |
| Código |
ERR-FAM-002 |
| Descripción |
Dos tutores intentan modificar datos del mismo dependiente simultáneamente |
| Causa |
Ambos padres editando perfil del hijo al mismo tiempo |
| Detección |
Conflicto de versión en update (optimistic locking) |
| Acción Usuario |
Mostrar: "Otro tutor acaba de modificar este perfil. ¿Deseas ver los cambios o sobreescribir?" |
| Acción Sistema |
Mostrar diff de cambios, permitir merge o sobreescritura, registrar en audit log |
| Severidad |
Media |
| Recuperación |
Resolución manual de conflicto por uno de los tutores |
10.3. ERR-FAM-003: Dependiente Cumple 18 Años
| Campo |
Valor |
| Código |
ERR-FAM-003 |
| Descripción |
Menor de edad alcanza mayoría de edad |
| Causa |
fecha_nacimiento + 18 años = hoy |
| Detección |
Job nocturno verifica edades |
| Acción Usuario |
Notificar a dependiente: "Has cumplido 18. Puedes crear tu propia cuenta y migrar tus datos." Notificar a titular. |
| Acción Sistema |
Ofrecer migración a cuenta propia, mantener acceso del titular por 30 días de transición |
| Severidad |
Informativa |
| Recuperación |
Dependiente decide migrar o mantener vinculación (ahora como adulto) |
10.4. ERR-FAM-004: Límite de Perfiles Alcanzado
| Campo |
Valor |
| Código |
ERR-FAM-004 |
| Descripción |
Usuario intenta crear más perfiles de los permitidos por su tier |
| Causa |
Free: 1, Pro: 5, Perfect: 10 dependientes |
| Detección |
count(dependientes) >= limite_tier |
| Acción Usuario |
Mostrar: "Has alcanzado el límite de [X] perfiles. Actualiza a [tier] para más." |
| Acción Sistema |
Bloquear creación, ofrecer upgrade, mostrar comparativa de tiers |
| Severidad |
Media |
| Recuperación |
Upgrade de tier o eliminar perfil existente |
10.5. Reglas de Manejo de Errores
| ID |
Regla |
| RN-ERR-FAM-001 |
Invitaciones expiran después de 7 días |
| RN-ERR-FAM-002 |
Conflictos de edición usan optimistic locking |
| RN-ERR-FAM-003 |
Mayoría de edad trigger migración opcional, no forzada |
| RN-ERR-FAM-004 |
Límites de tier bloquean creación, no eliminan existentes |
| RN-ERR-FAM-005 |
Todos los conflictos se registran en audit log |
11. Referencias
Documento generado por SpecQueen - "La resistencia es futil. Tu especificacion sera perfecta... o no sera."