workspace/projects/gamilit/orchestration/analisis-migracion-2025-12-18/FASE1-ANALISIS-DIFERENCIAS.md
rckrdmrd 289c5a4ee5
Some checks are pending
CI Pipeline / changes (push) Waiting to run
CI Pipeline / core (push) Blocked by required conditions
CI Pipeline / trading-backend (push) Blocked by required conditions
CI Pipeline / trading-data-service (push) Blocked by required conditions
CI Pipeline / trading-frontend (push) Blocked by required conditions
CI Pipeline / erp-core (push) Blocked by required conditions
CI Pipeline / erp-mecanicas (push) Blocked by required conditions
CI Pipeline / gamilit-backend (push) Blocked by required conditions
CI Pipeline / gamilit-frontend (push) Blocked by required conditions
Gamilit: Backend fixes, frontend API updates, deployment guides and validations
Backend:
- Fix email verification and password recovery services
- Fix exercise submission and student progress services

Frontend:
- Update missions, password, and profile API services
- Fix ExerciseContentRenderer component

Docs & Scripts:
- Add SSL/Certbot deployment guide
- Add quick deployment guide
- Database scripts for testing and validations
- Migration and homologation reports
- Functions inventory documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-18 23:42:48 -06:00

331 lines
12 KiB
Markdown

# FASE 1: ANÁLISIS DETALLADO DE DIFERENCIAS
**Fecha:** 2025-12-18
**Perfil:** Requirements-Analyst
**Proyecto:** GAMILIT
---
## DEFINICIONES
| Variable | Ruta | Descripción |
|----------|------|-------------|
| **ORIGEN** | `/home/isem/workspace/projects/gamilit` | Proyecto actualizado (fuente de verdad) |
| **DESTINO** | `/home/isem/workspace-old/wsl-ubuntu/workspace/workspace-gamilit/gamilit/projects/gamilit` | Proyecto a sincronizar |
---
## RESUMEN EJECUTIVO
| Categoría | Cantidad |
|-----------|----------|
| Archivos solo en ORIGEN (nuevos) | 22+ |
| Archivos solo en DESTINO (obsoletos) | 47+ |
| Archivos con diferencias | 23+ |
| Áreas principales afectadas | 5 |
---
## 1. ARCHIVOS SOLO EN ORIGEN (A COPIAR AL DESTINO)
### 1.1 Scripts de Deployment (CRÍTICOS)
```
scripts/
├── setup-ssl-certbot.sh # NUEVO: Configuración SSL
└── validate-deployment.sh # NUEVO: Validación de deployment
```
### 1.2 Database - Scripts Nuevos
```
apps/database/scripts/
├── validations/ # NUEVO directorio
│ ├── README.md
│ ├── VALIDACIONES-RAPIDAS-POST-RECREACION.sql
│ └── validate-gap-fixes.sql
│ └── validate-generate-alerts-joins.sql
└── testing/
└── CREAR-USUARIOS-TESTING.sql # Actualizado
```
### 1.3 Frontend - Páginas Nuevas (Student Portal)
```
apps/frontend/src/apps/student/pages/
├── GamificationPage.tsx # NUEVO
├── GamificationTestPage.tsx # NUEVO
├── LoginPage.tsx # NUEVO
├── NewLeaderboardPage.tsx # NUEVO
├── PasswordRecoveryPage.tsx # NUEVO
├── ProfilePage.tsx # NUEVO
├── RegisterPage.tsx # NUEVO
├── TwoFactorAuthPage.tsx # NUEVO
└── admin/ # NUEVO directorio
```
### 1.4 Documentación Nueva
```
docs/90-transversal/arquitectura/
└── especificaciones/ # NUEVO directorio
docs/90-transversal/inventarios-database/inventarios/
└── 04-FUNCTIONS-INVENTORY.md # NUEVO
docs/90-transversal/migraciones/ # NUEVO directorio
docs/95-guias-desarrollo/
├── GUIA-DEPLOYMENT-RAPIDO.md # NUEVO
└── GUIA-SSL-CERTBOT-DEPLOYMENT.md # NUEVO
docs/database/functions/ # NUEVO directorio
docs/frontend/
├── admin/ # NUEVO directorio
├── guides/ # NUEVO directorio
└── teacher/ # NUEVO directorio
```
### 1.5 Orchestration - Análisis y Reportes
```
orchestration/
├── analisis-backend-2025-12-18/ # NUEVO directorio
├── analisis-frontend-validacion/ # NUEVO directorio
├── analisis-homologacion-database-2025-12-18/ # NUEVO
└── reportes/
├── FASE1-ANALISIS-CAMBIOS-CODIGO-VS-DOCS.md
├── FASE1-ANALISIS-DIFERENCIAS-DOCS.md
├── FASE2-ANALISIS-COMPLETO-CONSOLIDADO.md
├── FASE3-PLAN-IMPLEMENTACION-DOCUMENTACION.md
├── FASE4-VALIDACION-PLAN-IMPLEMENTACION.md
├── FASE5-REPORTE-FINAL-DOCUMENTACION.md
├── REPORTE-ANALISIS-PRODUCCION-COMPLETO-2025-12-18.md
├── REPORTE-HOMOLOGACION-DATABASE-2025-12-18.md
└── REPORTE-HOMOLOGACION-DOCS-DESARROLLO-2025-12-18.md
```
---
## 2. ARCHIVOS SOLO EN DESTINO (A ELIMINAR/DEPRECAR)
### 2.1 Raíz del Proyecto
```
./CODEOWNERS # Movido a .github/CODEOWNERS
```
### 2.2 Backend - Configuración Obsoleta
```
apps/backend/.eslintrc.js # Reemplazado por eslint.config.js
```
### 2.3 Database - Archivos Obsoletos (LIMPIEZA)
```
apps/database/
├── .env.database # Credenciales obsoletas
├── .env.dev # Credenciales obsoletas
├── CHANGELOG-PERFECT-SCORES.md # Histórico no necesario
├── DATABASE-RECREATION-SUCCESS-2025-11-24.txt # Log temporal
├── INDEX-RECREACION-BD-2025-11-24.md # Histórico
├── README-RECREACION-2025-11-24.md # Histórico
├── RESUMEN-EJECUTIVO-RECREACION-BD.md # Histórico
├── TEACHER-REPORTS-VISUAL-SCHEMA.txt # Temporal
├── VISUAL-DIFF-INITIALIZE-MISSIONS-2025-11-24.md # Temporal
├── analyze-image-complete.py # Script temporal Python
├── complete-crossword-design.py # Script temporal Python
├── create-database-*.log # Logs (6 archivos)
├── crossword-final-correct.py # Script temporal Python
├── crossword-from-image-final.py # Script temporal Python
├── database-credentials-dev.txt # SEGURIDAD: Credenciales en texto
├── exact-coordinates-layout.py # Script temporal Python
├── final-correct-layout.py # Script temporal Python
├── map-exact-from-image.py # Script temporal Python
├── map-image-exact-v2.py # Script temporal Python
├── migrations/ # Directorio obsoleto
│ └── add-ml-coins-multiplier-to-maya-ranks.sql
├── sync-prod-dev.py # Script temporal Python
├── validate-final-from-db.py # Script temporal Python
└── verify-unification.py # Script temporal Python
```
### 2.4 Database Scripts - Obsoletos
```
apps/database/scripts/
├── README-SETUP.md # Reemplazado por QUICK-START.md
├── README-VALIDATION-SCRIPTS.md # Movido a validations/README.md
├── VALIDACION-RAPIDA-RECREACION-2025-11-24.sql # Temporal
├── VALIDACIONES-RAPIDAS-POST-RECREACION.sql # Movido a validations/
├── apply-maya-ranks-v2.1.sql # Temporal
├── validate-gap-fixes.sql # Movido a validations/
├── validate-generate-alerts-joins.sql # Movido a validations/
├── validate-missions-objectives-structure.sql # Temporal
├── validate-seeds-integrity.sql # Temporal
├── validate-update-user-rank-fix.sql # Temporal
├── validate-user-initialization.sql # Temporal
├── validate_integrity.py # Script temporal Python
├── backup/ # Directorio vacío
├── deprecated/ # Scripts antiguos
│ ├── init-database-v1.sh
│ ├── init-database-v2.sh
│ └── init-database.sh.backup-20251102-235826
├── restore/ # Directorio vacío
└── utilities/ # Directorio vacío
```
### 2.5 Frontend - Archivos Obsoletos
```
apps/frontend/.eslintrc.cjs # Config antigua
apps/frontend/src/features/mechanics/auxiliar/CallToAction/
├── callToActionMockData.ts # Mock data no necesaria
├── callToActionSchemas.ts # Schema obsoleto
└── callToActionTypes.ts # Types obsoletos
```
---
## 3. ARCHIVOS CON DIFERENCIAS (A ACTUALIZAR)
### 3.1 CRÍTICOS - Backend Services
| Archivo | Impacto | Descripción |
|---------|---------|-------------|
| `apps/backend/src/modules/auth/services/email-verification.service.ts` | ALTO | Servicio verificación email |
| `apps/backend/src/modules/auth/services/password-recovery.service.ts` | ALTO | Servicio recuperación contraseña |
| `apps/backend/src/modules/progress/services/exercise-submission.service.ts` | ALTO | Servicio envío ejercicios |
### 3.2 CRÍTICOS - Frontend
| Archivo | Impacto | Descripción |
|---------|---------|-------------|
| `apps/frontend/package.json` | ALTO | Dependencias frontend |
| `apps/frontend/src/apps/teacher/components/grading/RubricEvaluator.tsx` | ALTO | Evaluador de rúbricas |
| `apps/frontend/src/apps/teacher/components/grading/index.ts` | MEDIO | Exports grading |
| `apps/frontend/src/apps/teacher/components/responses/ResponseDetailModal.tsx` | ALTO | Modal respuestas |
| `apps/frontend/src/apps/teacher/hooks/useClassroomRealtime.ts` | ALTO | Hook tiempo real |
| `apps/frontend/src/apps/teacher/hooks/useMasteryTracking.ts` | ALTO | Hook tracking dominio |
| `apps/frontend/src/apps/teacher/hooks/useMissionStats.ts` | MEDIO | Hook estadísticas |
| `apps/frontend/src/features/mechanics/module1/Emparejamiento/EmparejamientoExerciseDragDrop.tsx` | ALTO | Mecánica emparejamiento |
| `apps/frontend/src/services/api/missionsAPI.ts` | ALTO | API misiones |
| `apps/frontend/src/services/api/passwordAPI.ts` | ALTO | API contraseñas |
| `apps/frontend/src/services/api/profileAPI.ts` | ALTO | API perfiles |
| `apps/frontend/src/shared/components/mechanics/ExerciseContentRenderer.tsx` | ALTO | Renderizador ejercicios |
### 3.3 Configuración y Scripts
| Archivo | Impacto | Descripción |
|---------|---------|-------------|
| `scripts/README.md` | BAJO | Documentación scripts |
| `apps/database/scripts/QUICK-START.md` | BAJO | Guía rápida |
| `package-lock.json` | MEDIO | Lock de dependencias |
### 3.4 Datos y Backups (NO SINCRONIZAR)
```
# Estos archivos difieren pero NO deben sincronizarse (datos de producción)
apps/database/backup-prod/RESTORE_USUARIOS_PRODUCCION_2025-12-18.sql
apps/database/backup-prod/auth_users_2025-12-18.csv
apps/database/backup-prod/profiles_2025-12-18.csv
apps/database/backup-prod/usuarios_produccion_2025-12-18.sql
```
---
## 4. DEPENDENCIAS IDENTIFICADAS
### 4.1 Cadenas de Dependencia Backend
```
email-verification.service.ts
└── Depende de: auth.module.ts (ya sincronizado)
└── Usado por: auth.controller.ts
password-recovery.service.ts
└── Depende de: auth.module.ts
└── Usado por: auth.controller.ts
exercise-submission.service.ts
└── Depende de: progress.module.ts
└── Usado por: progress.controller.ts
```
### 4.2 Cadenas de Dependencia Frontend
```
Teacher Portal Components
├── RubricEvaluator.tsx
│ └── Importado en: index.ts (grading)
│ └── Usado en: ResponseDetailModal.tsx
├── ResponseDetailModal.tsx
│ └── Depende de: RubricEvaluator
│ └── Usado en: páginas de teacher
└── Hooks
├── useClassroomRealtime.ts
├── useMasteryTracking.ts
└── useMissionStats.ts
└── Usados en: páginas de teacher
Services API
├── missionsAPI.ts
├── passwordAPI.ts
└── profileAPI.ts
└── Usados en: múltiples páginas student/teacher
```
### 4.3 Nuevas Páginas Student (Verificar Router)
```
Las nuevas páginas requieren verificar:
- src/apps/student/routes/index.tsx o App.tsx
- Configuración de rutas existentes
```
---
## 5. CATEGORIZACIÓN POR PRIORIDAD
### P0 - CRÍTICO (Seguridad/Funcionalidad Core)
1. `email-verification.service.ts`
2. `password-recovery.service.ts`
3. `exercise-submission.service.ts`
4. Frontend API services (password, profile, missions)
5. Eliminar `database-credentials-dev.txt` del DESTINO
### P1 - ALTO (Funcionalidad)
1. Teacher portal components (grading, responses)
2. Teacher hooks (realtime, mastery, missions)
3. EmparejamientoExerciseDragDrop.tsx
4. ExerciseContentRenderer.tsx
5. Scripts de deployment nuevos
### P2 - MEDIO (Mejoras)
1. Nuevas páginas student portal
2. Documentación nueva
3. Orchestration reportes
### P3 - BAJO (Limpieza)
1. Eliminar archivos obsoletos de DESTINO
2. Eliminar scripts temporales Python
3. Eliminar logs de creación de base de datos
4. Eliminar directorios vacíos
---
## 6. RIESGOS IDENTIFICADOS
| Riesgo | Severidad | Mitigación |
|--------|-----------|------------|
| Credenciales en texto plano en DESTINO | CRÍTICO | Eliminar `database-credentials-dev.txt` inmediatamente |
| Archivos .env expuestos | ALTO | Verificar .gitignore incluye estos archivos |
| Pérdida de scripts de validación | MEDIO | Scripts movidos a `validations/`, no perdidos |
| Dependencias frontend desactualizadas | MEDIO | Sincronizar package.json y package-lock.json |
| Rutas de nuevas páginas no configuradas | MEDIO | Verificar router antes de copiar páginas |
---
## 7. SIGUIENTE FASE
### Fase 2: Ejecución del Análisis
- Analizar contenido exacto de archivos que difieren
- Verificar dependencias de nuevas páginas student
- Mapear imports/exports afectados
### Fase 3: Plan de Implementación
- Definir orden de sincronización
- Scripts de migración automatizada
- Validaciones post-migración
---
**Estado:** FASE 1 COMPLETADA
**Siguiente Acción:** Proceder a FASE 2 - Análisis Detallado de Contenido