# TRACEABILITY.yml - EXT-002: Gestión Avanzada Admin (Admin Extendido) epic_code: EXT-002 epic_name: Gestión Avanzada Admin phase: 3 phase_name: Extensiones (Alcance v2 CORE) budget_mxn: 35600 # Actualizado 2025-11-29 story_points: 148 # Actualizado 2025-11-29 (89 facturados + 59 nuevos) status: in_progress # 8/12 US implementadas sprint: "9-10+" last_updated: 2025-11-29 # CAMBIOS 2025-11-29: # - Añadida US-AE-009 (Visualización Assignments Admin, 13 SP) - ✅ COMPLETADO # - Añadida US-AE-010 (Crear Usuarios desde Admin, 13 SP) - 📝 Especificado # - Añadida US-AE-011 (Visor de Audit Logs, 8 SP) - 📝 Especificado # - Implementado GAP-C06 (RLS en Exercises, 5 SP) - ✅ COMPLETADO # - Total nuevo: 39 SP # - Código nuevo: 2,463 LOC (265 RLS + 940 backend + 1,258 frontend) # CAMBIOS 2025-11-08: # - Añadida US-AE-005 (Parametrización Dinámica de Gamificación, 12 SP) # - Añadida US-AE-007 (Asignar Grupos a Maestros, 6 SP) # - Total añadido: 18 SP (+$7,200 MXN) # ============================================================================ # DOCUMENTACIÓN - USER STORIES # ============================================================================ documentation: user_stories: # Funcionalidades originales (~10 US, 45 SP) # [Lista de US originales aquí - mantener según implementación real] # NUEVAS funcionalidades v2 CORE (2 US, 18 SP) - id: US-AE-005 file: historias-usuario/US-AE-005-parametrizacion-gamificacion.md title: Parametrización Dinámica de Gamificación sp: 12 status: specified origin: new_v2_core_feature note: "Configuración UI para parámetros de gamificación (XP, coins, rangos, ayudas)" spec_file: /tmp/US-AE-005-parametrizacion-gamificacion.md - id: US-AE-007 file: historias-usuario/US-AE-007-asignar-grupos-maestros.md title: Asignar Grupos a Maestros sp: 6 status: specified origin: new_v2_core_feature note: "Gestión de asignación de classrooms a maestros (individual y masiva)" spec_file: /tmp/US-AE-007-asignar-grupos-maestros.md # NUEVAS funcionalidades 2025-11-29 (3 US, 34 SP + GAP-C06 5 SP) - id: US-AE-009 file: historias-usuario/US-AE-009-admin-assignments-view.md title: Visualización Assignments Admin sp: 13 status: completed completion_date: 2025-11-29 origin: gap_analysis_students_admin note: "Super admin puede ver todas las tareas/assignments del sistema con filtros" implementation: backend_loc: 940 frontend_loc: 1258 endpoints: 5 components: 6 - id: US-AE-010 file: historias-usuario/US-AE-010-create-users.md title: Crear Usuarios desde Admin sp: 13 status: specified origin: gap_analysis_students_admin note: "Admin puede crear usuarios individuales y masivos (bulk import CSV)" - id: US-AE-011 file: historias-usuario/US-AE-011-audit-logs-viewer.md title: Visor de Audit Logs sp: 8 status: specified origin: gap_analysis_students_admin note: "Super admin puede visualizar audit logs con filtros y exportación" - id: GAP-C06 title: RLS Incompleto en Ejercicios sp: 5 status: completed completion_date: 2025-11-29 origin: security_gap note: "Implementación de Row Level Security en exercises para multi-tenant" implementation: backend_loc: 265 files_modified: 3 # ============================================================================ # IMPLEMENTACIÓN # ============================================================================ implementation: database: schemas_used: [admin_dashboard, system_configuration, audit_logging] tables: - name: admin_dashboard.content_moderation type: new description: Cola de moderación de contenido - name: admin_dashboard.moderation_rules type: new description: Reglas de auto-moderación - name: system_configuration.feature_flags type: new description: Feature flags por tenant - name: system_configuration.system_settings type: extended description: Configuración global del sistema backend: module: admin-extended path: apps/backend/src/modules/admin-extended/ services: - user-management.service.ts - system-config.service.ts - admin-analytics.service.ts - content-moderation.service.ts endpoints: - POST /api/v1/admin/users/bulk-create - PATCH /api/v1/admin/users/bulk-update - GET /api/v1/admin/analytics/system - GET /api/v1/admin/moderation/queue - PATCH /api/v1/admin/config/feature-flags - PATCH /api/v1/admin/config/system-settings # US-AE-009 endpoints (2025-11-29) - GET /api/admin/assignments - GET /api/admin/assignments/:id - GET /api/admin/assignments/stats - GET /api/admin/assignments/classrooms/:classroomId - GET /api/admin/assignments/students/:studentId # Nuevos archivos backend 2025-11-29 new_files_2025_11_29: - apps/backend/src/modules/admin/controllers/admin-assignments.controller.ts - apps/backend/src/modules/admin/services/admin-assignments.service.ts - apps/backend/src/modules/admin/dto/assignments/admin-assignment.dto.ts - apps/backend/src/modules/admin/dto/assignments/admin-assignment-filters.dto.ts - apps/backend/src/modules/admin/dto/assignments/admin-assignment-stats.dto.ts - apps/backend/src/modules/admin/dto/assignments/index.ts # RLS GAP-C06 - apps/backend/src/modules/educational/services/exercises.service.ts # Modificado - apps/backend/src/modules/educational/controllers/exercises.controller.ts # Modificado frontend: feature: admin-tools path: apps/frontend/src/features/admin-tools/ components: - BulkUserManager.tsx - SystemConfigPanel.tsx - AnalyticsDashboard.tsx - ModerationQueue.tsx - FeatureFlagsManager.tsx # US-AE-009 components (2025-11-29) - AdminAssignmentsPage.tsx - AssignmentsTable.tsx - AssignmentDetailModal.tsx - AssignmentFilters.tsx # Nuevos archivos frontend 2025-11-29 new_files_2025_11_29: - apps/frontend/src/apps/admin/pages/AdminAssignmentsPage.tsx - apps/frontend/src/apps/admin/hooks/useAdminAssignments.ts - apps/frontend/src/apps/admin/components/assignments/AssignmentsTable.tsx - apps/frontend/src/apps/admin/components/assignments/AssignmentDetailModal.tsx - apps/frontend/src/apps/admin/components/assignments/AssignmentFilters.tsx - apps/frontend/src/apps/admin/components/assignments/index.ts routes: - path: /admin/assignments component: AdminAssignmentsPage role: super_admin added: 2025-11-29 # ============================================================================ # MÉTRICAS # ============================================================================ metrics: effort: estimated_sp: 45 actual_sp: 47 variance: +4% deliverables: backend_endpoints: 15 frontend_components: 12 database_tables: 4 # ============================================================================ # TESTING # ============================================================================ testing: coverage: overall: 10% # REAL (actualizado 2025-11-23) backend: 12% # REAL (actualizado 2025-11-23) frontend: 8% # REAL (actualizado 2025-11-23) database: 0% # REAL (actualizado 2025-11-23) meta_original: 85% # Estimación inicial del proyecto gap_actual: -75% # Diferencia entre meta y realidad ultima_medicion: "2025-11-23" nota: | Coverage REAL actualizado por Architecture-Analyst (2025-11-23). Valores previos eran ESTIMACIONES optimistas del inicio del proyecto. Admin Extendido tiene tests mínimos en algunos endpoints. Gap actual requiere plan de mejora (ver orchestration/roadmap/ROADMAP-TEST-COVERAGE.md). Próxima medición: Mensual (Q1 2026). status: completion: 100% completion_date: "2024-10-15" # ============================================================================ # DEPENDENCIAS # ============================================================================ dependencies: depends_on_epics: [EAI-001, EAI-005, EMR-001] enables_epics: [] # ============================================================================ # IMPACTO # ============================================================================ impact: - Administración masiva de usuarios eficiente - Configuración granular de sistema - Insights profundos con analytics agregados - Moderación de contenido automatizada