workspace/projects/gamilit/orchestration/reportes/REPORTE-HOMOLOGACION-DATABASE-2025-12-18.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

5.8 KiB

REPORTE DE HOMOLOGACIÓN - BASE DE DATOS GAMILIT

Fecha: 2025-12-18 (Actualizado) Perfil: Requirements-Analyst Tipo: Análisis de Homologación ACTUAL vs OLD (Remoto)


1. RESUMEN EJECUTIVO

Componente Estado Acción Requerida
DDL (Esquema) HOMOLOGADO Ninguna
educational_content HOMOLOGADO Ninguna
gamification_system HOMOLOGADO Ninguna
social_features HOMOLOGADO Ninguna
system_configuration HOMOLOGADO Ninguna
auth/ DESINCRONIZADO Copiar de OLD → ACTUAL
auth_management/ DESINCRONIZADO Copiar de OLD → ACTUAL

2. DIFERENCIAS DETECTADAS

2.1 Archivos CON DIFERENCIAS de Contenido (ACTUAL ≠ OLD)

Archivo ACTUAL OLD Acción
auth/01-demo-users.sql Hash dinámico crypt() Hash estático bcrypt Copiar OLD → ACTUAL
auth/02-production-users.sql 39,139 bytes 39,412 bytes (excluye rckrdmrd) Copiar OLD → ACTUAL
auth_management/01-tenants.sql Diferente Diferente Verificar y copiar
auth_management/02-auth_providers.sql Diferente Diferente Verificar y copiar
auth_management/06-profiles-production.sql v2.0 (13 perfiles) v3.0 (45 perfiles) CRÍTICO: Copiar OLD → ACTUAL
auth_management/07-user_roles.sql Diferente Diferente Copiar OLD → ACTUAL

2.2 Archivos NUEVOS en ACTUAL (faltan en OLD)

Archivo Tamaño Líneas Decisión
auth/02-test-users.sql 8,489 bytes 223 ¿Copiar a OLD?
auth_management/03-profiles.sql 4,719 bytes 119 ¿Copiar a OLD?
auth_management/04-user_roles.sql 6,086 bytes 214 ¿Copiar a OLD?
auth_management/05-user_preferences.sql 5,665 bytes 208 ¿Copiar a OLD?
auth_management/06-auth_attempts.sql 3,776 bytes 122 ¿Copiar a OLD?
auth_management/07-security_events.sql 5,721 bytes 186 ¿Copiar a OLD?

3. ANÁLISIS CRÍTICO

3.1 Problema Principal: 06-profiles-production.sql

ACTUAL (workspace):
- Versión: 2.0
- Perfiles: 13 usuarios
- Fecha: 2025-11-19

OLD (workspace-old - REMOTO):
- Versión: 3.0
- Perfiles: 45 usuarios (44 activos + 1 excluido)
- Fecha: 2025-12-18
- Incluye: LOTE 1-4 (todos los usuarios de producción)

IMPACTO: El proyecto ACTUAL está 32 usuarios desactualizado respecto al servidor de producción.

3.2 Cambio en Hash de Contraseñas

-- ACTUAL (dinámico - puede variar en cada ejecución)
crypt('Test1234', gen_salt('bf', 10))

-- OLD (estático - consistente)
'$2b$10$pkqX0/v7H3F5TBTuDTaoYeBjH581pXpjlcNcYmMtXofd/2HjfTuga'

IMPACTO: En ACTUAL el hash cambia cada vez que se ejecuta el seed. En OLD es fijo y predecible.

3.3 Exclusión de Usuario de Pruebas

OLD excluye: rckrdmrd@gmail.com (usuario de pruebas del owner)
ACTUAL no tiene esta exclusión

4. ACCIONES DE SINCRONIZACIÓN REQUERIDAS

4.1 CRÍTICO (Ejecutar Inmediatamente)

# 1. Sincronizar perfiles de producción (OLD → ACTUAL)
cp /home/isem/workspace-old/.../seeds/prod/auth_management/06-profiles-production.sql \
   /home/isem/workspace/projects/gamilit/apps/database/seeds/prod/auth_management/

# 2. Sincronizar usuarios de producción
cp /home/isem/workspace-old/.../seeds/prod/auth/02-production-users.sql \
   /home/isem/workspace/projects/gamilit/apps/database/seeds/prod/auth/

# 3. Sincronizar demo users (hash estático)
cp /home/isem/workspace-old/.../seeds/prod/auth/01-demo-users.sql \
   /home/isem/workspace/projects/gamilit/apps/database/seeds/prod/auth/

4.2 RECOMENDADO (Verificar y Decidir)

Archivo Decisión
auth_management/01-tenants.sql Comparar contenido y decidir
auth_management/02-auth_providers.sql Comparar contenido y decidir
auth_management/07-user_roles.sql Sincronizar OLD → ACTUAL

4.3 OPCIONAL (Archivos nuevos en ACTUAL)

Los siguientes archivos existen en ACTUAL pero no en OLD:

  • auth/02-test-users.sql - Usuarios de testing
  • auth_management/03-profiles.sql - Perfiles adicionales
  • auth_management/04-user_roles.sql - Roles de usuario
  • auth_management/05-user_preferences.sql - Preferencias
  • auth_management/06-auth_attempts.sql - Intentos de auth
  • auth_management/07-security_events.sql - Eventos de seguridad

Decisión: ¿Se deben copiar al proyecto OLD para desplegar a producción?


5. CARPETAS HOMOLOGADAS (Sin Acción)

Carpeta Estado Archivos
ddl/ IDÉNTICO 395 archivos
educational_content/ IDÉNTICO Todos los ejercicios
gamification_system/ IDÉNTICO Achievements, ranks, etc.
social_features/ IDÉNTICO Schools, classrooms
system_configuration/ IDÉNTICO Settings, flags
content_management/ IDÉNTICO Templates
notifications/ IDÉNTICO Templates
lti_integration/ IDÉNTICO Consumers
progress_tracking/ IDÉNTICO Module progress
audit_logging/ IDÉNTICO Default config

6. CONCLUSIÓN

Estado: DESINCRONIZACIÓN CRÍTICA EN AUTH

El proyecto OLD (remoto) tiene 32 usuarios de producción más que el proyecto ACTUAL.

La base de datos de producción se ha actualizado con nuevos usuarios en los lotes 2, 3 y 4, pero estos cambios no se han reflejado en el proyecto de trabajo actual.

Prioridad de Acción:

  1. URGENTE: Sincronizar 06-profiles-production.sql (OLD → ACTUAL)
  2. IMPORTANTE: Sincronizar 02-production-users.sql (OLD → ACTUAL)
  3. NORMAL: Sincronizar otros archivos de auth_management
  4. DECIDIR: ¿Copiar archivos nuevos de ACTUAL → OLD?

Generado por: Requirements-Analyst Agent Sistema: SIMCO + CAPVED Versión: 1.4.0