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>
242 lines
4.8 KiB
Markdown
242 lines
4.8 KiB
Markdown
# GAMILIT - PLAN DE ANALISIS
|
|
|
|
**Proyecto:** Gamilit Platform
|
|
**Fase:** 4.1 - Migracion de Gamilit
|
|
**Estado:** Pendiente
|
|
**Prioridad:** P0 (Proyecto Modelo)
|
|
**Agente Principal:** Tech-Leader + Backend-Agent + Frontend-Agent
|
|
|
|
---
|
|
|
|
## OBJETIVO
|
|
|
|
Migrar Gamilit al nuevo modelo de repositorio independiente, creando:
|
|
1. Estructura de carpetas standalone
|
|
2. Service descriptors para cada servicio
|
|
3. Docker compose con redes aisladas
|
|
4. Integracion con registries del Control Plane
|
|
|
|
---
|
|
|
|
## INFORMACION DEL PROYECTO
|
|
|
|
### Datos Generales
|
|
|
|
| Campo | Valor |
|
|
|-------|-------|
|
|
| Nombre | Gamilit Platform |
|
|
| Tipo | Plataforma SaaS de gamificacion educativa |
|
|
| Estado MVP | 60% completado |
|
|
| Stack Backend | NestJS + TypeScript |
|
|
| Stack Frontend | React + TypeScript |
|
|
| Base de Datos | PostgreSQL |
|
|
| Servicios | API, Web, WebSocket |
|
|
|
|
### Ubicacion Actual
|
|
|
|
```
|
|
/home/adrian/Documentos/workspace/projects/gamilit/
|
|
|
|
|
+-- backend/
|
|
+-- frontend/
|
|
+-- database/
|
|
+-- docker/
|
|
+-- docs/
|
|
+-- orchestration/
|
|
```
|
|
|
|
---
|
|
|
|
## TAREAS DE ANALISIS
|
|
|
|
### Tarea A1: Inventario de Archivos
|
|
|
|
```markdown
|
|
OBJETIVO: Listar todos los archivos del proyecto actual
|
|
|
|
PASOS:
|
|
1. Ejecutar find en directorio del proyecto
|
|
2. Clasificar por tipo (codigo, config, docs)
|
|
3. Identificar archivos a migrar vs regenerar
|
|
4. Documentar en 01-INVENTARIO-ACTUAL.md
|
|
|
|
COMANDO:
|
|
find /home/adrian/Documentos/workspace/projects/gamilit -type f \
|
|
-not -path "*node_modules*" \
|
|
-not -path "*.git*" | sort
|
|
```
|
|
|
|
### Tarea A2: Analisis de Servicios
|
|
|
|
```markdown
|
|
OBJETIVO: Identificar y documentar cada servicio
|
|
|
|
PASOS:
|
|
1. Identificar servicios en backend/ y frontend/
|
|
2. Para cada servicio:
|
|
- Puerto actual
|
|
- Endpoints principales
|
|
- Dependencias
|
|
- Variables de entorno requeridas
|
|
3. Documentar en 02-SERVICIOS.md
|
|
|
|
SERVICIOS ESPERADOS:
|
|
- gamilit-api (Backend NestJS)
|
|
- gamilit-web (Frontend React)
|
|
- gamilit-ws (WebSocket server, si existe)
|
|
```
|
|
|
|
### Tarea A3: Analisis de Base de Datos
|
|
|
|
```markdown
|
|
OBJETIVO: Documentar estructura de BD
|
|
|
|
PASOS:
|
|
1. Identificar schemas/tablas
|
|
2. Identificar DDL scripts
|
|
3. Identificar migraciones
|
|
4. Verificar contra databases.registry.yml
|
|
5. Documentar en 03-DATABASE.md
|
|
```
|
|
|
|
### Tarea A4: Analisis de Docker
|
|
|
|
```markdown
|
|
OBJETIVO: Documentar configuracion Docker actual
|
|
|
|
PASOS:
|
|
1. Leer docker-compose.yml actual
|
|
2. Identificar:
|
|
- Servicios definidos
|
|
- Puertos expuestos
|
|
- Volumenes
|
|
- Redes
|
|
3. Comparar con ports.registry.yml
|
|
4. Documentar cambios necesarios
|
|
```
|
|
|
|
### Tarea A5: Analisis de Dependencias
|
|
|
|
```markdown
|
|
OBJETIVO: Mapear dependencias del proyecto
|
|
|
|
PASOS:
|
|
1. Leer package.json de backend
|
|
2. Leer package.json de frontend
|
|
3. Identificar dependencias compartidas
|
|
4. Identificar dependencias externas (APIs, servicios)
|
|
5. Documentar en 04-DEPENDENCIAS.md
|
|
```
|
|
|
|
---
|
|
|
|
## ESTRUCTURA OBJETIVO
|
|
|
|
```
|
|
gamilit-platform/ # Nuevo repo
|
|
|
|
|
+-- apps/
|
|
| +-- backend/
|
|
| | +-- service.descriptor.yml
|
|
| | +-- src/
|
|
| | +-- package.json
|
|
| | +-- Dockerfile
|
|
| | +-- tsconfig.json
|
|
| |
|
|
| +-- frontend/
|
|
| | +-- service.descriptor.yml
|
|
| | +-- src/
|
|
| | +-- package.json
|
|
| | +-- Dockerfile
|
|
| |
|
|
| +-- database/
|
|
| +-- ddl/
|
|
| +-- seeds/
|
|
| +-- migrations/
|
|
|
|
|
+-- docker/
|
|
| +-- docker-compose.yml
|
|
| +-- docker-compose.dev.yml
|
|
| +-- docker-compose.prod.yml
|
|
| +-- .env.example
|
|
|
|
|
+-- orchestration/ # Migrado de projects/gamilit/orchestration
|
|
| +-- inventarios/
|
|
| +-- trazas/
|
|
| +-- 00-guidelines/
|
|
|
|
|
+-- docs/
|
|
|
|
|
+-- .github/
|
|
| +-- workflows/
|
|
|
|
|
+-- package.json # Root (workspaces)
|
|
+-- README.md
|
|
```
|
|
|
|
---
|
|
|
|
## VERIFICACIONES CONTRA REGISTRIES
|
|
|
|
### ports.registry.yml
|
|
|
|
```yaml
|
|
# Verificar que estos puertos estan asignados:
|
|
gamilit:
|
|
api: 3000 # Debe coincidir con backend
|
|
web: 3001 # Debe coincidir con frontend
|
|
websocket: 3002 # Si aplica
|
|
```
|
|
|
|
### domains.registry.yml
|
|
|
|
```yaml
|
|
# Verificar dominios asignados:
|
|
gamilit:
|
|
local:
|
|
api: api.gamilit.localhost
|
|
web: gamilit.localhost
|
|
development:
|
|
api: api.gamilit.dev.example.com
|
|
web: gamilit.dev.example.com
|
|
```
|
|
|
|
### databases.registry.yml
|
|
|
|
```yaml
|
|
# Verificar BD asignada:
|
|
gamilit:
|
|
database: gamilit_db
|
|
roles:
|
|
owner: gamilit_owner
|
|
runtime: gamilit_app
|
|
migrator: gamilit_migrator
|
|
```
|
|
|
|
---
|
|
|
|
## CRITERIOS DE COMPLETITUD
|
|
|
|
El analisis esta completo cuando:
|
|
|
|
1. [ ] Inventario de archivos documentado
|
|
2. [ ] Servicios identificados y documentados
|
|
3. [ ] Base de datos analizada
|
|
4. [ ] Docker compose actual analizado
|
|
5. [ ] Dependencias mapeadas
|
|
6. [ ] Verificacion contra registries completada
|
|
7. [ ] Estructura objetivo definida
|
|
|
|
---
|
|
|
|
## SIGUIENTE PASO
|
|
|
|
Una vez completado el analisis:
|
|
1. Revisar PLANEACION/00-TAREAS.md
|
|
2. Validar plan contra analisis
|
|
3. Proceder a implementacion
|
|
|
|
---
|
|
|
|
**Responsable:** Tech-Leader
|