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
| Componente | Tipo | Ruta en Moodle | Version (version.php) | Release | Madurez | Requiere |
|---|---|---|---|---|---|---|
theme_cdigital | Tema (hijo de Boost) | public/theme/cdigital/ | 2026081404 | 0.1.0 | ALPHA | Moodle >= 4.5 |
local_pccntr8203403_dashboard | Plugin local (capa de datos + Web Services) | public/local/pccntr8203403_dashboard/ | 2026072700 | 1.2.0 | STABLE | Moodle >= 5.0 |
local_pccntr8203403_aitutor | Plugin local (proxy del tutor IA) | public/local/pccntr8203403_aitutor/ | 2026072100 | 0.1.0 | ALPHA | Moodle >= 5.0 |
local_pccntr8203403_iacontext | Plugin local (contexto de actividades para el servicio de IA) | public/local/pccntr8203403_iacontext/ | 2026091401 | 0.3.0-prototype | ALPHA | Moodle >= 5.0 |
block_pccntr8203403_logros | Bloque (coleccion de insignias del curso) | public/blocks/pccntr8203403_logros/ | 2026071400 | 0.1.0 | ALPHA | Moodle >= 5.1 |
block_pccntr8203403_atencion | Bloque (cursos que necesitan atencion, Area personal) | public/blocks/pccntr8203403_atencion/ | 2026072700 | 0.1.0 | ALPHA | Moodle >= 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 yget_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 lecturaget_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.
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)
| Ítem | Mecanismo | Dónde se documenta |
|---|---|---|
| 8 niveles XP "Gemas" | levelsdata de block_xp a nivel sitio (mdl_config_plugins); los cursos sin niveles propios heredan | Gemas — Niveles XP |
| 12 insignias de logro (spec v3) | Moodle Badges (Admin UI) | Insignias |
| Ajustes del tema (banner de curso, miga de pan) | theme_cdigital → Apariencia | Ajustes del tema |
| Servicio "Componente IA Externo" + token | Admin UI → Servicios web | Web 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.
| Plugin | Rol |
|---|---|
block_xp (Level Up XP Community v19.0) | Niveles "Gemas" (XP) |
block_stash | Objetos 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.
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.