← Todos los flujos
FLUJO F03

Ver caso: el expediente completo del siniestro

El analista abre desde su bandeja «En proceso» el expediente del caso 788 (asegurado de Banco Sol, causa Invalidez): revisa la cabecera con los números de caso y SISE, el riel de etapas, los datos del asegurado y los montos; deja un comentario de verificación; consulta el historial de movimientos; abre y descarga documentos del caso; y muestra los tres popups de edición (N° SISE, Monto y N° de solicitud de pago) sin guardar cambios.

CON HALLAZGOS Rol: Analista (analista.extra4)
24pasos
19llamadas a la API
1errores de consola
0respuestas con error
0archivos descargados
105.0sduración

📁 Evidencias

Este flujo no descargó archivos. Sus 24 capturas están en la carpeta F03-ver-caso/; hacé clic en cualquiera para ampliarla.

⚠️ 5 hallazgo(s) en este flujo

Documentos placeholder «Sin documento» con botones de acción activosbajo

3 de 4 filas de la documentación del caso 788 tienen fileName «Sin documento» (sin archivo real detrás) y aun así muestran las acciones de ver/descargar, que no hacen nada. (paso 18)

Ningún documento de QA tiene contenido: la API devuelve 200 con base64 vacíoalto

Verificado por API con el JWT del analista sobre 4 claims distintos (01K487AZ… caso 788, 01K2ZWGTDSCC…, 01K88HP8…, 01K6E4RR…): TODOS los GET /v1/app/Claims/document/{id}/download responden HTTP 200 con base64 de longitud 0, incluso los PDFs con nombre real (2345359_ESTANISLAOCUSSYHUAYNOCA.pdf). Los archivos físicos (systemSource=Sharepoint) no se restauraron con el snapshot de la BD. Efecto en UI: «Ver documento» no abre nada (error de consola «El archivo está vacío o no disponible.») y «Descargar documento» no dispara ninguna descarga. Además el endpoint devuelve 200 con payload vacío en lugar de un 404/error explícito. (paso 19)

«Descargar documento» no descarga nada (archivo vacío) y no avisa al usuariomedio

El click dispara GET /v1/app/Claims/document/{id}/download → HTTP 200 con base64 vacío; el front no genera el download del navegador y NO muestra ningún toast/mensaje de error al usuario — el botón parece no hacer nada. Mismo origen que el hallazgo del visor (archivos físicos ausentes en QA); el front solo lo reporta en la consola. (paso 20)

Las fechas de los comentarios se muestran en hora UTC, no en hora localmedio

El comentario de verificación se guardó a las 00:16 hora local (UTC-4, huso de Bolivia) y el expediente lo muestra como «domingo, 12 de julio de 2026 04:16» — exactamente 4 horas adelantado. El front renderiza el timestamp UTC del backend sin convertirlo al huso del usuario; para un usuario boliviano toda la línea de tiempo de comentarios queda corrida. (paso 14)

Formato de hora incoherente en el historial: «13:59 p. m.»bajo

La tabla «Últimos movimientos» muestra horas en formato de 24 horas con sufijo a.m./p.m. a la vez (ej.: «05/09/2025 13:59 p. m.», «03/09/2025 16:42 p. m.»), mezcla que no existe en ningún formato horario estándar. (paso 16)

1

Pantalla de login

Formulario de acceso: usuario y contraseña (se validan contra LDAP)

Paso 1
Elemento
Login #User / #Password
Pantalla
#/login-page
2

Login como analista.extra4

POST /v1/Authentication/login → HTTP 200. El backend valida contra LDAP y devuelve el JWT (un solo rol). Landing: /dashboard-page

Paso 2
Elemento
Botón Ingresar button[type=submit]
Pantalla
#/dashboard-page
API
POST /v1/Authentication/login 200GET /v1/app/Dashboard/monthly-average-elapsed-time/all 200GET /v1/app/Dashboard/oldest-claims 200GET /v1/app/Dashboard/bank-claims/open 200GET /v1/app/Dashboard/state-claims/all 200
3

Ir a «Mis casos» desde el menú lateral

El Angular Router intercepta el click (el href del sidebar es path-based, no hash)

Paso 3
Elemento
Menú: Mis casos a.sidebar-menu-link
Pantalla
#/home-page
API
GET /v1/app/Claims/detail/states 200GET /v1/app/Claims/state/ClassificationAnalysis 200
4

Bandeja «Mis casos» del analista

El sistema abre la bandeja con el carrusel de etapas del siniestro (Análisis, En proceso, Médico, Pronunciamiento, Aceptación, Tesorería, Cierre). Cada etapa muestra cuántos casos tiene asignados este analista.

Paso 4
Elemento
Carrusel de etapas mat-radio-group.proceso-caso
Pantalla
#/home-page
5

Click en «Etapa «En proceso»»

El analista cambia a la pestaña En proceso: son los casos que ya pasaron el análisis documental y esperan decisión (pronunciamiento, médico, SISE).

Paso 5
Elemento
Etapa «En proceso» mat-radio-group.proceso-caso mat-radio-button:has-text('En proceso')
Pantalla
#/home-page
API
GET /v1/app/Claims/state/InProcess 200
6

Tabla de casos «En proceso»

La tabla muestra 2 caso(s). Columnas: Asegurado, Cédula, Banco, Fecha denuncia, Monto, Tipo DH, FreeCover, Estado, Acciones. Casos listados: 788 | 2025-2746 CUSSY HUAYNOCA ESTANISLAO 2345359 Banco Sol 03/09/2025 6138,79 Invalidez true En proceso check_circle cancel contract_delete // 1142 Creación SISE Pendiente GONZALES CAZON TRIFON 1086400 Banco Sol 23/10/2025 6688,24 Invalidez true En proceso check_circle cancel contra.

Paso 6
Elemento
Tabla de casos table[mat-table]
Pantalla
#/home-page
7

La fila del caso 788 y sus botones de acción directa

Cada fila trae botones de acción que decide el backend según el estado del caso. Para el caso 788 los botones directos (por tooltip) son: (se leen al pasar el mouse) — y además el botón «Ver más» (tres puntos) que abre el menú con el resto.

Paso 7
Elemento
Botones de acción de la fila button.btn-accion
Pantalla
#/home-page
8

Menú «Ver más» de la fila: todas sus opciones

El menú de tres puntos del caso 788 ofrece: visibility Ver caso, how_to_reg Reasignar caso, delete Eliminar caso. Desde acá el analista puede abrir el expediente, reasignar el caso a otro analista o eliminarlo.

Paso 8
Elemento
Menú de acciones de la fila button.btn-acciones
Pantalla
#/home-page
9

Expediente del caso 788: cabecera y riel de etapas

Se abre la ficha 360° del caso. La cabecera dice: «Número de caso: 788 · Número SISE: 2025-2746 · edit · search_insights · autorenew · medical_services · stylus_note · handshake · savings · power_settings_new · Etapa: En proceso - Estado: En proceso». El riel de círculos marca en qué etapa del flujo está el siniestro (el círculo resaltado es la etapa actual: En proceso).

Paso 9
Elemento
Cabecera del caso mat-card.card-numbers
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
API
GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/comments 200GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/view 200GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/documents 200
10

Datos del asegurado, responsable y montos

La tarjeta de datos muestra: person Asegurado CUSSY HUAYNOCA ESTANISLA... | calendar_month Inicio Caso 03/09/2025 | schedule Duración Etapa Actual 309 días, 14 horas | schedule Duración Total 311 días, 11 horas | person Ejecutivo Analista Extra 4 | attach_money Tipo de Gestión FreeCover | request_page N° de Solicitud de Pago 27557 edit | attach_money Monto y Tipo 6138.79 BS, Invalidez edit | person Analista responsable Analista Extra 4 edit. Los ítems con lápiz (N° de Solicitud de Pago, Monto y Tipo, Analista responsable) son editables por el analista.

Paso 10
Elemento
Tarjeta de datos del caso .card-datos
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
11

Click en «Agregar comentario»

Abre el popup para dejar un comentario en el expediente del caso.

Paso 11
Elemento
Agregar comentario button:has-text('Agregar comentario')
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
Ventana emergente
Ingrese comentario close Agregar comentario check
closeAgregar comentario check
12

Escribir «Comentario de verificación E2E - 2026-07-12 00:16» en el comentario

Se escribe un comentario de prueba, fechado, para verificar que el sistema lo registra con el rol y el nombre del usuario.

Paso 12
Elemento
el comentario mat-dialog-container textarea
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
Ventana emergente
Ingrese comentario close Agregar comentario check
closeAgregar comentario check
13

Click en «Agregar comentario (confirmar)»

Guarda el comentario: el sistema lo publica en la lista de comentarios del caso.

Paso 13
Elemento
Agregar comentario (confirmar) mat-dialog-container button:has-text('Agregar comentario')
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
API
POST /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/comments 204GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/comments 200
14

El comentario queda listado en el expediente

La sección Comentarios muestra cada entrada con rol, autor y fecha. Últimos comentarios: Analista - Analista Extra 4 domingo, 12 de julio de 2026 04:16 Comentario de verificación E2E - 2026-07-12 00:16 // Analista - Analista Extra 4 domingo, 12 de julio de 2026 04:10 Comentario de verificación E2E - 2026-07-12 00:10.

Paso 14
Elemento
Lista de comentarios .container-comentarios
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
15

Click en «Ver historial»

Abre el historial de movimientos del caso: cada cambio de etapa, quién lo hizo y cuánto tiempo estuvo el caso en cada estado.

Paso 15
Elemento
Ver historial button:has-text('Ver historial')
Pantalla
#/home-page/caso-page/historial-page/01K487AZ78JMEBWB2E5RA6AP0E
API
GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/history 200
16

Historial de etapas del caso 788

La pantalla «Últimos movimientos» lista la trazabilidad completa. Primeras filas: FECHA Y HORA RESPONSABLE DESCRIPCIÓN TIEMPO DESDE EL EVENTO PREVIO // 05/09/2025 13:59 p. m. Analista Analista Extra 4 El estado ha cambiado a: InProcess 21 minutos // 05/09/2025 13:37 p. m. Analista Analista Extra 4 Se agregó/modificó el número SISE: 2025-2746 1 día, 20 horas // 03/09/2025 16:42 p. m. Analista Analista Extra 4 El estado ha cambiado a: ClassificationAnalysis 0 segundos // 03/09/2025 16:42 p. m. Analista Analista Extra 4 El reclamo ha sido creado 0 segundos.

Paso 16
Elemento
Tabla de historial table
Pantalla
#/home-page/caso-page/historial-page/01K487AZ78JMEBWB2E5RA6AP0E
17

Click en «Volver»

Regresa desde el historial al expediente del caso.

Paso 17
Elemento
Volver button.boton:has-text('Volver')
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
API
GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/view 200GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/comments 200GET /v1/app/Claims/01K487AZ78JMEBWB2E5RA6AP0E/documents 200
18

Documentación del caso

La tabla de documentación lista 4 archivo(s) adjuntos al caso (los que llegaron con la denuncia más los que se suban a mano con el botón de carga). Documentos: Sin documento PaymentPlan download // Sin documento InsuredIdentificationCard download // Sin documento DisabilityReport download // 2345359_ESTANISLAOCUSSYHUAYNOCA.pdf DOCUMENTACION download visibility.

Paso 18
Elemento
Tabla de documentación .card-documentacion table
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
19

El visor PDF no puede mostrar el documento

Al clickear «Ver documento» la API responde HTTP 200 pero con el archivo VACÍO (base64 sin contenido), y el visor nunca se abre. En la consola del navegador queda el error «El archivo está vacío o no disponible.». El usuario clickea y no pasa nada visible.

Paso 19
Elemento
Botón Ver documento button[matTooltip='Ver documento']
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
API
GET /v1/app/Claims/document/01K4D2V955H1F8BV1TFVA93C5R/download 200
Errores
El archivo está vacío o no disponible.
20

Descargar un documento del caso: no descarga nada

Se clickeó «Descargar documento» y la API respondió HTTP 200, pero el archivo viene VACÍO (base64 de longitud 0) y el navegador nunca recibe una descarga. Es el mismo problema del visor: los archivos físicos no existen en el ambiente QA (ver hallazgo).

Paso 20
Elemento
Botón Descargar documento button[matTooltip='Descargar documento']
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
API
GET /v1/app/Claims/document/01K4D2JD6345J9QXC3RWNX6F13/download 200
21

Popup «Editar Número SISE»

Permite corregir a mano el número SISE del siniestro, el N° SISE interno y el N° de sub reclamo (formato 123-4567). Se abre solo para verlo: NO se guarda. El popup dice: «Cambiar número SISE · close · Número SISE · N° SISE Interno · N° Sub Reclamo · Guardar cambios · check».

Paso 21
Elemento
Editar Número SISE span.btn-edit[matTooltip='Editar n° SISE']
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
Ventana emergente
Cambiar número SISE close Número SISE N° SISE Interno N° Sub Reclamo Guardar cambios check
closeGuardar cambios check
22

Popup «Editar Monto»

Permite ajustar el monto a indemnizar al banco. Se abre solo para verlo: NO se guarda. El popup dice: «Cambiar Monto · close · Monto · Guardar cambios · check».

Paso 22
Elemento
Editar Monto div.item:has-text('Monto y Tipo') span.btn-edit
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
Ventana emergente
Cambiar Monto close Monto Guardar cambios check
closeGuardar cambios check
23

Popup «Editar N° de solicitud de pago»

Permite cargar el número de solicitud de pago y su número interno. Se abre solo para verlo: NO se guarda. El popup dice: «Cambiar número de solicitud de pago · close · N° de Solicitud de Pago · N° Interno de Solicitud de Pago · Guardar cambios · check».

Paso 23
Elemento
Editar N° de solicitud de pago div.item:has-text('N° de Solicitud de Pago') span.btn-edit
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1
Ventana emergente
Cambiar número de solicitud de pago close N° de Solicitud de Pago N° Interno de Solicitud de Pago Guardar cambios check
closeGuardar cambios check
24

El expediente queda como estaba

Se cerraron los tres popups sin guardar: el caso 788 conserva sus datos originales. La única mutación de este flujo es el comentario de verificación.

Paso 24
Elemento
Expediente del caso 788
Pantalla
#/home-page/caso-page/01K487AZ78JMEBWB2E5RA6AP0E/1