RF10: Usuario actualiza apellidos
Descripción
Como usuario autenticado, quiero actualizar mis apellidos para mantener al día mis datos de identificación (derecho de rectificación, autoservicio en la app).
Comparte endpoint y patrón con RF09 (PATCH /auth/profile).
| Campo | Valor |
|---|---|
| Módulo | Auth Module |
| Actor | Usuario autenticado |
| Endpoint | PATCH /auth/profile |
| Precondiciones | Sesión activa |
| Prioridad | Baja (MVP) |
| Etapa | MVP |
| Requisitos relacionados | RF09, RF01 |
Reglas de negocio
- RN-10.1 — El cambio aplica de inmediato sin reautenticación (dato no sensible).
- RN-10.2 — Los apellidos se validan con las mismas reglas del registro.
Validaciones de entrada
| Campo | Reglas | Mensaje de error |
|---|---|---|
lastName | Obligatorio. 2–50 caracteres. Solo letras (incl. acentos), espacios, guion y apóstrofo. | "Ingresa apellidos válidos." |
Entrada sanitizada y consultas parametrizadas; no se aceptan inyecciones SQL ni HTML.
Criterios de aceptación
Escenario 1: Actualización exitosa
Dado que ingreso apellidos válidos distintos de los actuales,
Cuando guardo el cambio,
Entonces el sistema los actualiza y responde 200 OK,
Y la app refleja el cambio.
Escenario 2: Apellidos inválidos
Dado que ingreso un valor vacío, demasiado largo o con caracteres no permitidos,
Cuando intento guardar,
Entonces el sistema responde 400 con "Ingresa apellidos válidos".
Escenario 3: Entrada maliciosa (seguridad)
Dado que ingreso HTML o un intento de inyección SQL, Cuando el backend lo procesa, Entonces la entrada se rechaza/sanitiza y no se ejecuta código.
Criterios no funcionales
- Respuesta < 500 ms.
- Comunicación sobre TLS 1.2+.