Structure: - control-plane/: Registries, SIMCO directives, CI/CD templates - projects/: Gamilit, ERP-Suite, Trading-Platform, Betting-Analytics - shared/: Libs catalog, knowledge-base Key features: - Centralized port, domain, database, and service registries - 23 SIMCO directives + 6 fundamental principles - NEXUS agent profiles with delegation rules - Validation scripts for workspace integrity - Dockerfiles for all services - Path aliases for quick reference 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
4.6 KiB
US-M4-001: Backend DTOs para Módulo 4
Metadata
| Campo | Valor |
|---|---|
| ID | US-M4-001 |
| Épica | EAI-007 - Módulos 4 y 5 |
| Módulo | educational, progress |
| Prioridad | P0 |
| Story Points | 5 |
| Sprint | Sprint 7 |
| Estado | Backlog |
| Asignado a | Backend-Agent |
Historia de Usuario
Como desarrollador backend, quiero crear DTOs de respuesta para los 5 tipos de ejercicio del Módulo 4, para validar correctamente las respuestas de los estudiantes y procesarlas en el flujo de revisión manual.
Descripción Detallada
El Módulo 4 "Lectura Digital y Multimodal" comprende 5 tipos de ejercicios que requieren DTOs específicos para validar la estructura de las respuestas antes de enviarlas a revisión manual por docentes.
Tipos de ejercicio:
verificador_fake_news- Verificación de noticias falsasinfografia_interactiva- Diseño de infografíaquiz_tiktok- Quiz estilo TikToknavegacion_hipertextual- Navegación entre páginasanalisis_memes- Análisis de memes educativos
Criterios de Aceptación
Escenario 1: Validación de Verificador Fake News
DADO que un estudiante envía respuesta de verificador_fake_news
CUANDO el DTO valida la estructura
ENTONCES debe contener claims_verified (array de objetos)
Y cada claim debe tener claim_id, is_fake (boolean), evidence (string >= 10 chars)
Escenario 2: Validación de Infografía Interactiva
DADO que un estudiante envía respuesta de infografia_interactiva
CUANDO el DTO valida la estructura
ENTONCES debe contener answers (objeto) y sections_explored (array >= 1)
Escenario 3: Validación de Quiz TikTok
DADO que un estudiante envía respuesta de quiz_tiktok
CUANDO el DTO valida la estructura
ENTONCES debe contener answers (array de números >= 0)
Escenario 4: Validación de Navegación Hipertextual
DADO que un estudiante envía respuesta de navegacion_hipertextual
CUANDO el DTO valida la estructura
ENTONCES debe contener path (array >= 2 elementos) e information_found (objeto)
Escenario 5: Validación de Análisis de Memes
DADO que un estudiante envía respuesta de analisis_memes
CUANDO el DTO valida la estructura
ENTONCES debe contener annotations (array) y analysis.message (string no vacío)
Criterios Adicionales
- Todos los DTOs heredan de BaseExerciseAnswerDto
- Validación con class-validator decorators
- Documentación Swagger para cada DTO
- Tests unitarios para cada validación
Tareas Técnicas
Backend:
- BE-M4-001.1: Crear VerificadorFakeNewsAnswerDto
- BE-M4-001.2: Crear InfografiaInteractivaAnswerDto
- BE-M4-001.3: Crear QuizTikTokAnswerDto
- BE-M4-001.4: Crear NavegacionHipertextualAnswerDto
- BE-M4-001.5: Crear AnalisisMemesAnswerDto
Tests:
- TEST-M4-001: Tests unitarios para 5 DTOs
Dependencias
Depende de:
- Validador SQL validate_module4_module5_answer() - Estado: Done
Bloquea:
- US-M4-002: Integración Gamificación M4
- US-M5-002: Sistema de Revisión Manual
Notas Técnicas
Endpoints involucrados:
| Método | Endpoint | Descripción |
|---|---|---|
| POST | /api/v1/exercises/:id/submit | Envío de respuesta |
| POST | /api/v1/educational/exercises/m4/:type/submit | Nuevo endpoint específico |
Entidades/Tablas:
educational_content.exercises: Ejercicios con JSONB contentprogress_tracking.exercise_submissions: Almacena respuestas
Estructura de DTOs:
// Ejemplo: VerificadorFakeNewsAnswerDto
interface ClaimVerification {
claim_id: string;
is_fake: boolean;
evidence: string; // min 10 chars
}
interface VerificadorFakeNewsAnswerDto {
claims_verified: ClaimVerification[];
}
Definition of Ready (DoR)
- Historia claramente escrita (quién, qué, por qué)
- Criterios de aceptación definidos
- Story points estimados
- Dependencias identificadas
- Sin bloqueadores
- Referencia a validador SQL disponible
Definition of Done (DoD)
- Código implementado según criterios
- Tests unitarios escritos y pasando
- Tests de integración pasando
- Code review aprobado
- Documentación actualizada
- Inventarios actualizados (BACKEND_INVENTORY.yml)
- Traza registrada (TRAZA-TAREAS-BACKEND.md)
Historial de Cambios
| Fecha | Cambio | Autor |
|---|---|---|
| 2025-12-05 | Creación | Requirements-Analyst |
Creada por: Requirements-Analyst Fecha: 2025-12-05 Última actualización: 2025-12-05