memory/ — Memoria del curso
Fuente de verdad del estado del curso. Cualquier agente (o humano) que tome el hilo debe leer esto antes de impartir nada, y actualizarlo al terminar cada sesión.
Protocolo para agentes (léelo completo)
1. Antes de impartir
- Lee
memory/course-state.json→ lección actual, siguientes, progreso por módulo. - Lee
memory/progress-log.md→ contexto de la última sesión (máx. las 2 últimas entradas). - Lee
memory/student-profile.md→ stack, nivel, proyecto y preferencias del alumno. - Si hay entradas en
memory/pending.md, tenlas presentes (repasos, dudas abiertas). - Consulta
CURRICULUM.mdpara ver la posición en el mapa general. - Confirma al alumno en una frase dónde retomas el hilo antes de empezar.
2. Cómo impartir una lección
- Lee la lección existente en
lessons/NN-nombre/antes de modificarla; conserva su estilo. - Estructura obligatoria:
lesson.md(teoría + objetivos + autoevaluación),
exercises.md (enunciados), solutions.md (soluciones completas y comentadas).
- Adapta todo el código al stack del alumno (
student-profile.md). - Los ejercicios se entregan en el chat; el profesor los corrige y actualiza estado.
- No avances de lección sin que la anterior esté al menos (impartida y ejercicios entregados).
Si el alumno pide saltar, regístralo en decisions.md como decisión pedagógica.
- Registra siempre los trade-offs y por qué (es parte del temario, se predica con el ejemplo).
3. Al terminar una sesión (obligatorio)
course-state.json: actualizacurrentLesson,nextLesson,lessonsCompleted,
la entrada del módulo correspondiente y lastSession.
progress-log.md: añade entrada arriba, con formato de las existentes
(fecha, qué se hizo, cómo fue el alumno, siguiente paso).
pending.md: mueve a resueltas las dudas cerradas; añade las nuevas
(repasos, errores recurrentes, ejercicios sin corregir).
student-profile.md: solo si cambió algo relevante (nuevo conocimiento previo, proyecto, ritmo).decisions.md: añade ADR solo si tomaste una decisión pedagógica o técnica con impacto.
4. Reglas de oro
- No contradigas
course-state.jsoncon el chat: si difieren, gana el JSON y corrige el chat. - La memoria es para continuar el curso sin preguntar al alumno lo que ya contestó.
- No borres entradas antiguas del
progress-log.md: es la historia del curso. - Escribe SIEMPRE en español (o el idioma que el alumno esté usando).
- Si el alumno pide algo fuera del temario, impártelo igual y regístralo en
decisions.md.
Archivos
| Archivo | Contenido | Cuándo actualizarlo |
|---|---|---|
course-state.json | Estado exacto: lección actual, progreso por módulo, proyecto | Cada sesión |
student-profile.md | Stack, nivel, objetivo, preferencias, proyecto | Cuando cambie algo |
progress-log.md | Bitácora cronológica de sesiones | Cada sesión |
decisions.md | ADRs de decisiones pedagógicas/técnicas | Solo con decisiones nuevas |
pending.md | Dudas abiertas, repasos, correcciones pendientes | Cada sesión |
Ejemplo de entrada en progress-log.md
## 🗓️ 2026-09-28 — Sesión 1
**Qué se hizo:** Lección 00: stack definido (Node+NestJS), proyecto elegido (API de biblioteca), entorno montado.
**Cómo fue el alumno:** motivado, le costó la parte de Git.
**Siguiente paso:** Lección 01 (HTTP a fondo).