Documentation Index
Fetch the complete documentation index at: https://mintlify.com/carlosgomezc7/plataforma_aprendizaje/llms.txt
Use this file to discover all available pages before exploring further.
recuperar_historial_recursivo recorre un árbol de dependencias de módulos completados usando traversal recursivo en profundidad (DFS) y produce una cadena de texto con formato visual jerarquizado. Cada llamada recursiva incrementa el nivel de indentación en dos espacios, de modo que los módulos hijo aparecen visualmente anidados bajo su módulo padre, permitiendo reconstruir de un vistazo la ruta de aprendizaje completa de un estudiante.
Firma
Parámetros
Nombre del módulo que se va a renderizar en la iteración actual. En la llamada inicial, es la raíz del árbol (por ejemplo,
"Proyecto Final").Diccionario que mapea cada módulo padre a la lista de sus submódulos completados:
{nombre_modulo: [submodulo_1, submodulo_2, ...]}. Los módulos hoja (sin hijos) simplemente no aparecen como claves del diccionario.Nivel de indentación actual. Se incrementa en
1 en cada llamada recursiva. No es necesario pasarlo en la llamada inicial; su valor por defecto 0 produce la línea raíz sin sangría.Valor de retorno
Una cadena de texto multilínea donde cada línea tiene el formato" " * nivel + "- Módulo Completado: {nombre}\n". Cada nivel de profundidad agrega dos espacios adicionales de sangría al comienzo de la línea.
Caso base y caso recursivo
- Caso base: si
modulo_actualno aparece como clave enhistorial_completo, el módulo es una hoja del árbol. La función devuelve una única línea formateada con la indentación correspondiente y termina la recursión por esa rama. - Caso recursivo: si
modulo_actualsí aparece como clave, la función itera sobre su lista de submódulos y se llama a sí misma para cada uno, incrementandonivelen1. Los resultados de esas llamadas se concatenan a la cadena acumulada.