Recorrido completo: un colegio desde cero
Este es el recorrido íntegro de puesta en marcha, ejecutado sin ningún dato
precargado: cada pantalla que sigue salió de la simulación automatizada
(journey.spec.ts, 13 pasos) donde cada rol hace su trabajo real por la
interfaz. La base de datos empieza vacía; lo único que existe es el usuario
admin que el sistema crea en el primer arranque.
1 · Administración: primer ingreso
El admin de bootstrap entra con la clave inicial y el sistema le obliga a cambiarla antes de poder tocar nada.

2 · Configurar el colegio
Nombre, código AMIE, régimen (Sierra/Costa), zona horaria y umbrales de evaluación (nota mínima 7, supletorio desde 5 — configurables).

3 · Crear el año lectivo
2027-2028, con 3 trimestres × 2 parciales generados automáticamente. Se
avanza de Planificación → Matrícula para poder matricular.

4 · Cursos y niveles
Grado 8° EGB, paralelo "A" (Aula 8A) y la materia Matemática.

5 · Alta del personal
Se crea a la docente Patricia Vela y a la secretaria Lucía Mora. El sistema entrega la credencial temporal de cada uno (usuario = cédula).

6 · Asignación de docente y horario
Patricia queda asignada a Matemática de 8° "A" y coordinación arma el horario. Al intentar duplicar el bloque, el sistema rechaza el choque:

7 · Secretaría: matrícula individual y masiva
Lucía entra con su clave temporal (cambio obligatorio), matricula a Ana Torres por formulario, y luego descarga la plantilla Excel del sistema y la importa: 2 hermanos más, con un solo representante para ambos.

8 · Docente: asistencia, notas y observación
Patricia pasa asistencia (Ana con falta injustificada), registra las notas del primer parcial y deja una observación de seguimiento.

9 · Inspección: justificación de la falta
Con el certificado presentado, la falta pasa a justificada (con documento adjunto si se desea).

10 · Coordinación: cierre y rectificación
Se cierra el parcial (notas congeladas, boletas en cola). Un error detectado después se corrige por rectificación: la docente propone 9.50 → 9.75 con motivo, y coordinación la aprueba. Todo queda auditado.

11 · Secretaría: pensiones y comunicado
Se crea el rubro Pensión mensual $85, se generan las obligaciones de los 3 alumnos de una sola vez, se cobra un abono parcial de $40, y se publica el comunicado de reunión de padres (push + email en cola).

12 · La familia consulta el progreso
La representante (una sola cuenta para sus dos hijos) entra por la API de la app de consulta y verifica, por cada hijo:
- Calificaciones: Matemática 9.75 (DAR) — incluida la rectificación aprobada
- Asistencia: 1 presente
- Estado de cuenta: pensión de $85 generada por secretaría
- Horario: Matemática los lunes 07:30
- Comunicados: la reunión de padres
- Boleta en PDF descargable
Y el sistema le niega (HTTP 403) la ficha administrativa completa de cualquier alumno: la familia ve el progreso, no el expediente.
13 · El estudiante consulta lo suyo
María entra con su propia cuenta y ve únicamente su información.
Reproducir este recorrido
cd backend && ./scripts/reset-db.sh
cd ../frontend && JOURNEY=1 E2E_BASE_URL=http://localhost:8080 \
npx playwright test journey --workers=1