Saltar al contenido principal

Manifiesto de entrega — qué recibe el cliente

Inventario de lo que se entrega para el Campus Virtual de Colombia Aprende sobre Moodle 5.1+ (branch 501). El detalle funcional de cada pieza está en el Catálogo de features; el procedimiento para instalarlo, en Integración y despliegue.

La entrega son seis componentes de codigo propio que se instalan en el arbol de Moodle, mas configuracion sobre plugins de comunidad y Moodle nativo. No se modifica ningun archivo del core de Moodle.

Componentes de codigo propio​

ComponenteTipoRuta en MoodleVersion (version.php)ReleaseMadurezRequiere
theme_cdigitalTema (hijo de Boost)public/theme/cdigital/20260814040.1.0ALPHAMoodle >= 4.5
local_pccntr8203403_dashboardPlugin local (capa de datos + Web Services)public/local/pccntr8203403_dashboard/20260727001.2.0STABLEMoodle >= 5.0
local_pccntr8203403_aitutorPlugin local (proxy del tutor IA)public/local/pccntr8203403_aitutor/20260721000.1.0ALPHAMoodle >= 5.0
local_pccntr8203403_iacontextPlugin local (contexto de actividades para el servicio de IA)public/local/pccntr8203403_iacontext/20260914010.3.0-prototypeALPHAMoodle >= 5.0
block_pccntr8203403_logrosBloque (coleccion de insignias del curso)public/blocks/pccntr8203403_logros/20260714000.1.0ALPHAMoodle >= 5.1
block_pccntr8203403_atencionBloque (cursos que necesitan atencion, Area personal)public/blocks/pccntr8203403_atencion/20260727000.1.0ALPHAMoodle >= 5.1
  • theme_cdigital -- reimplementa la apariencia del campus (frontpage, Area personal, vista de curso, card de curso) siguiendo el diseno de Figma, renderiza el Dashboard de aprendizaje (fila heroe, banner, modal "Ver mi avance", Stats Row) y el Drawer IA. Ficha tecnica: theme_cdigital.
  • local_pccntr8203403_dashboard -- capa de datos del Dashboard (progreso, calificaciones, racha, alertas academicas) mas dos funciones externas: la que alimenta la card de curso y get_student_panel, que expone el panel del estudiante al servicio de IA externo. Ficha tecnica: local_pccntr8203403_dashboard.
  • local_pccntr8203403_aitutor -- proxy del lado del servidor para el tutor IA externo. Recibe mensajes del estudiante via AJAX, enriquece el contexto academico y reenvia al servicio externo. Ficha tecnica: local_pccntr8203403_aitutor.
  • local_pccntr8203403_iacontext -- capa de contexto de actividades para el servicio de IA externo. Expone la funcion externa de solo lectura get_activity_context, que devuelve en una sola llamada una fila plana por actividad con su seccion, su estado de completitud, su nota y su fecha limite. Ficha tecnica: local_pccntr8203403_iacontext.
  • block_pccntr8203403_logros -- bloque de solo lectura sobre las insignias de curso (contador, grid de ganadas/bloqueadas y CTA), parte del Gamification Sidebar.
  • block_pccntr8203403_atencion -- bloque del Area personal que lista los cursos con alertas academicas de riesgo, sobre la capa de datos del dashboard. Ficha: Cursos que necesitan atencion.
Pendiente: versión mínima de Moodle declarada por el tema

theme/cdigital/version.php declara $plugin->requires = 2024051300 (Moodle 4.5), con el comentario heredado "example requirement, adjust to site". El sitio objetivo es Moodle 5.1, y los demas componentes ya declaran 5.0 o 5.1.

No impide el despliegue —un requires mas bajo del real solo hace que upgrade.php no valide la incompatibilidad si alguna vez se instalara sobre una version anterior—, pero conviene alinearlo antes de la entrega formal.

Configuración entregada (sin código)​

ÍtemMecanismoDónde se documenta
8 niveles XP "Gemas"levelsdata de block_xp a nivel sitio (mdl_config_plugins); los cursos sin niveles propios heredanGemas — Niveles XP
12 insignias de logro (spec v3)Moodle Badges (Admin UI)Insignias
Ajustes del tema (banner de curso, miga de pan)theme_cdigital → AparienciaAjustes del tema
Servicio "Componente IA Externo" + tokenAdmin UI → Servicios webWeb Services IA

Toda esta configuración la aplica la rutina única del paso 3 del despliegue; ver Rutina de configuración. Las especificaciones de referencia están en Gemas — Niveles XP e Insignias.

Plugins de comunidad (dependencias de configuración)​

No se entregan como código —ya están instalados en el campus— pero la solución depende de ellos. Detalle en Componentes de comunidad.

PluginRol
block_xp (Level Up XP Community v19.0)Niveles "Gemas" (XP)
block_stashObjetos coleccionables (sin cambios)
Moodle Badges (núcleo)Insignias

Qué NO incluye la entrega​

  • Datos (cursos, usuarios, calificaciones) ni dumps de base de datos.
  • Secretos: tokens de Web Services, API keys de proveedores de IA, contraseñas de .env. Se entregan por canal seguro, nunca en el repositorio.
  • Modificaciones al core de Moodle: la solución no parchea public/ fuera de los seis componentes propios.
  • Contenido pedagógico: cursos, matrículas y actividades. La entrega es código y configuración; no crea ni migra contenido.
Los datos no viajan entre ambientes

Entre ambientes viaja código, nunca datos. Ningún dato de usuario de Local o de Pruebas —cuentas, matrículas, calificaciones, intentos, archivos subidos— puede considerarse para despliegue ni migración hacia Certificación o Producción, por ninguna vía: dump de base de datos, restauración parcial de tablas, copia de seguridad de curso (.mbz), carga masiva por CSV ni sincronización de moodledata.

En Local y en Pruebas los datos de usuario existen con un único propósito: validar features. No son fuente de verdad de nada ni un estado que deba replicarse; son insumo desechable de desarrollo y prueba.

En Certificación y Producción la identidad la provee el CAS del Ministerio y las cuentas se pueblan por los medios del MEN, no desde nuestros ambientes. Ver Autenticación CAS.

El dump del Paso 1 del procedimiento es un artefacto del ambiente donde se tomó: solo sirve para el rollback de ese mismo ambiente.

Para reproducir en otro ambiente un caso observado en Local o Pruebas se describe el caso —rol, configuración, pasos— y se recrea con datos propios del ambiente destino. No se exporta el registro original.

Requisitos del entorno​

Versión de Moodle, PHP, base de datos y herramientas de build: ver Requisitos.