RF29: Usuario consulta inversiones populares seleccionadas por IA
Descripción
Como usuario autenticado, quiero ver una selección de inversiones populares sugeridas por IA para descubrir opciones acordes a mi perfil y metas.
El Investments Module muestra una lista curada por el motor de IA (según perfil de riesgo, metas y popularidad). Es informativa, con descargo de responsabilidad: no constituye asesoría financiera personalizada formal.
| Campo | Valor |
|---|---|
| Módulo | Investments Module |
| Actor | Usuario autenticado |
| Endpoint | GET /investments/popular |
| Precondiciones | Sesión activa |
| Prioridad | Media (MVP/post-MVP) |
| Etapa | MBI 3 |
| Requisitos relacionados | RF28, RF30, RF31 |
Reglas de negocio
- RN-29.1 — La lista se personaliza según el perfil de riesgo y metas del usuario (si los tiene); si no, se muestra una lista general.
- RN-29.2 — Cada instrumento muestra nombre, tipo, rendimiento histórico referencial, nivel de riesgo y descargo de responsabilidad.
- RN-29.3 — Datos de mercado provienen de un proveedor externo; se cachean con TTL corto y se marca la fecha de actualización.
- RN-29.4 — No constituye recomendación de compra vinculante (disclaimer obligatorio).
Validaciones de entrada
| Campo | Reglas | Mensaje de error |
|---|---|---|
riskProfile (query, opcional) | Enum (low, medium, high). | "Perfil de riesgo no válido." (400) |
Authorization | Bearer válido. | "Sesión no válida." (401) |
Criterios de aceptación
Escenario 1: Consulta exitosa
Dado que tengo sesión activa,
Cuando abro "Inversiones populares",
Entonces el sistema muestra una lista curada por IA con riesgo, rendimiento referencial y disclaimer,
Y responde 200 OK.
Escenario 2: Personalización por perfil
Dado que tengo un perfil de riesgo definido, Cuando consulto la lista, Entonces los instrumentos mostrados se ajustan a mi perfil.
Escenario 3: Datos de mercado no disponibles
Dado que el proveedor externo de datos no responde, Cuando consulto la lista, Entonces el sistema muestra los últimos datos cacheados con su fecha, Y si no hay caché, muestra un mensaje de "información temporalmente no disponible".
Escenario 4: Disclaimer presente (cumplimiento)
Dado que veo cualquier instrumento, Cuando reviso su detalle, Entonces siempre se muestra el descargo de responsabilidad de inversión.
Criterios no funcionales
- Respuesta < 1.5 s usando caché de datos de mercado.
- Comunicación TLS 1.2+.