Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Rutas de datos en el informe

5 tareas · 40 min · Principiante

Los analizadores que siguen un dato entre funciones y archivos no solo dicen dónde está el problema: enseñan el camino por el que llegó. Ese camino es la mejor evidencia del informe y también el sitio donde más se equivoca quien lo lee deprisa. Seguros Caobo te entrega dos resultados de su corrida semanal con la ruta de datos paso a paso, y el código de cada paso.

0 de 5 · 0%

Objetivo de la sala

Los analizadores que siguen un dato entre funciones y archivos no solo dicen dónde está el problema: enseñan el camino por el que llegó. Ese camino es la mejor evidencia del informe y también el sitio donde más se equivoca quien lo lee deprisa. Seguros Caobo te entrega dos resultados de su corrida semanal con la ruta de datos paso a paso, y el código de cada paso.

Una ruta de datos es una lista ordenada de puntos del código: el primero es la fuente, donde entra el dato que no es de fiar; el último es el sumidero, donde ese dato haría daño; los de en medio son las asignaciones, llamadas y retornos por los que pasó. En el formato de intercambio de resultados que se verá en otra sala de este módulo, esa lista vive dentro de un flujo de código, y cada flujo agrupa uno o varios recorridos ordenados.

Lo importante es lo que la ruta no dice. Es un camino posible, no todos: si el código tiene una rama que valida y otra que no, la ruta enseña la que encontró el motor. Y cada paso es una afirmación del motor que se puede comprobar abriendo el archivo en esa línea. Leer una ruta es eso: abrir cada paso y preguntarse si el dato sigue siendo peligroso al salir de él.

Responde para continuar

¿Qué representa la ruta de datos de un resultado?

Ver pista de ayuda

Es una afirmación sobre un recorrido, que se comprueba línea a línea.

Abre el laboratorio y lee resultado-CB-21.txt. Recorre los siete pasos con el código al lado (siniestros.py, filtros.py, repositorio.py) y comprueba que cada línea dice lo que el resultado afirma. El sumidero es el punto donde se debería corregir si no hubiera otro mejor, y el primero que el equipo del repositorio querrá ver.

Responde para continuar

¿En qué archivo y línea está el sumidero de CB-21? Escríbelo como aparece en el resultado, con el formato archivo:línea.

Ver pista de ayuda

Es el último paso de la ruta y el resultado lo marca como sumidero.

En siniestros.py la placa se valida, pero no siempre. El comentario cuenta por qué se tomó esa decisión y quién usa el camino que no valida. La ruta del resultado pasa justo por ese camino: del paso 1 salta al paso 2 sin entrar en la rama que valida. Esto es lo que distingue un verdadero positivo de un «ya está validado»: la validación existe, pero no en el camino que el motor encontró.

Responde para continuar

¿Qué función de validación se salta en el camino que muestra la ruta de CB-21? Escribe su nombre tal como aparece en el código.

Ver pista de ayuda

Mira la condición de la línea 19 y el valor por defecto del modo.

resultado-CB-22.txt tiene la misma consulta del paquete y otra ruta. Recórrela con cotizador.py al lado. En uno de los pasos el dato se convierte en un número entero, y si no lo es la petición termina con un error antes de tocar la base de datos. A partir de ese paso lo que llega a la consulta ya no puede llevar comillas ni palabras. La nota del paquete explica por qué el motor siguió avisando.

Responde para continuar

¿En qué paso de la ruta de CB-22 el dato deja de poder llevar texto libre? Escríbelo con el formato archivo:línea, tal como aparece en el resultado.

Ver pista de ayuda

Busca la conversión de tipo y el manejo del error que la acompaña.

Los dos resultados tienen el mismo sumidero y piden cosas distintas. CB-21 es un verdadero positivo: el arreglo de raíz está donde se arma el texto de la consulta, y la validación que se salta el móvil es una defensa adicional, no el arreglo. CB-22 es un falso positivo del paquete de consultas, que no sabe que esa conversión es una barrera; la decisión buena no es suprimirlo a mano cada vez, sino enseñárselo a la consulta.

Responde para continuar

¿Qué recomendación cierra los dos resultados sin dejar trabajo escondido?

Ver pista de ayuda

Una parte corrige el código; la otra corrige la herramienta.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad