workspace-v1/00-plan-maestro/PLAN-MAESTRO-MIGRACION.md
Adrian Flores Cortes 967ab360bb Initial commit: Workspace v1 with 3-layer architecture
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>
2025-12-23 00:35:19 -06:00

17 KiB

PLAN MAESTRO DE MIGRACION - WORKSPACE V1

Fecha: 2025-12-18 Version: 1.0.0 Estado: Planificacion Ubicacion Destino: /home/adrian/Documentos/workspace-v1


TABLA DE CONTENIDOS

  1. Vision General de la Migracion
  2. Arquitectura Objetivo
  3. Estructura de Fases
  4. Metodologia por Fase
  5. Mapa de Dependencias
  6. Cronograma de Ejecucion
  7. Roles de Agentes

1. VISION GENERAL

1.1 Objetivo de la Migracion

Transformar el workspace actual de una estructura "monolitica" a una arquitectura de 3 capas de repositorios:

ESTADO ACTUAL                          ESTADO OBJETIVO
================                       ================

workspace/                             workspace-control-plane/
  +-- core/                              +-- control-plane/
  +-- projects/                          +-- registries/
      +-- gamilit/                        +-- manifests/
      +-- erp-suite/                      +-- ci/
      +-- trading/                        +-- devtools/
  +-- knowledge-base/
  +-- devtools/                        repos-productos/ (separados)
                                         +-- gamilit-platform/
                                         +-- erp-suite/
                                         +-- trading-platform/

                                       repos-shared/
                                         +-- shared-libs/
                                         +-- shared-infra/
                                         +-- knowledge-base/

1.2 Beneficios Esperados

Problema Actual Solucion Beneficio
Colision de puertos Registry + Enforcement Cero conflictos por diseno
Acoplamiento de despliegue Repos separados Deploy independiente por producto
Duplicacion de codigo shared-libs versionado Reutilizacion real
Agentes sin contratos service.descriptor.yml Menos errores, mas velocidad
Dev/Prod mezclados Redes + dominios separados Aislamiento garantizado

1.3 Principios de Migracion

  1. Incremental: No romper lo que funciona
  2. Reversible: Poder volver atras en cada fase
  3. Validado: Cada fase termina con validacion completa
  4. Documentado: Trazabilidad de cada cambio

2. ARQUITECTURA OBJETIVO

2.1 Diagrama de Arquitectura de Repos

+===========================================================================+
|                    ARQUITECTURA DE 3 CAPAS DE REPOS                       |
+===========================================================================+
|                                                                           |
|  CAPA A: CONTROL PLANE (workspace-control-plane)                          |
|  ================================================                         |
|  +-- control-plane/                                                       |
|  |     +-- orchestration/       # SIMCO, CAPVED, Agentes                 |
|  |     +-- registries/          # Puertos, Dominios, BDs                 |
|  |     +-- manifests/           # repos.manifest, environments           |
|  |     +-- ci/                  # Jenkins templates, shared-library       |
|  |     +-- devtools/            # Scripts, Docker configs                |
|  +-- docs/                      # Governance, Onboarding                 |
|                                                                           |
|  CAPA B: REPOS POR PRODUCTO                                               |
|  ==========================                                               |
|  gamilit-platform/                                                        |
|  +-- apps/                                                                |
|  |     +-- backend/                                                       |
|  |     +-- frontend/                                                      |
|  |     +-- database/                                                      |
|  +-- docker/                                                              |
|  +-- orchestration/             # Inventarios locales                    |
|  +-- service.descriptor.yml     # CONTRATO del servicio                  |
|                                                                           |
|  erp-suite/                                                               |
|  +-- apps/                                                                |
|  |     +-- erp-core/                                                      |
|  |     +-- verticales/                                                    |
|  +-- docker/                                                              |
|  +-- orchestration/                                                       |
|  +-- service.descriptor.yml                                              |
|                                                                           |
|  CAPA C: REPOS COMPARTIDOS                                                |
|  =========================                                                |
|  shared-libs/                                                             |
|  +-- packages/                                                            |
|  |     +-- utils/                                                         |
|  |     +-- auth/                                                          |
|  |     +-- ui-components/                                                 |
|  +-- package.json               # npm workspaces                         |
|                                                                           |
|  shared-infra/                                                            |
|  +-- reverse-proxy/             # Traefik config                         |
|  +-- observability/             # Prometheus, Grafana                    |
|  +-- docker/                                                              |
|                                                                           |
|  knowledge-base/                                                          |
|  +-- sources/                   # Markdown, ADRs, specs                  |
|  +-- indexes/                   # Embeddings, metadatos RAG              |
|                                                                           |
+===========================================================================+

2.2 Modelo de Red y Puertos

+===========================================================================+
|                         MODELO DE RED OBJETIVO                            |
+===========================================================================+
|                                                                           |
|  INTERNET                                                                 |
|      |                                                                    |
|      v                                                                    |
|  +-------------------+                                                    |
|  |  TRAEFIK (80/443) |  <-- UNICO PUNTO DE ENTRADA PUBLICO               |
|  +--------+----------+                                                    |
|           |                                                               |
|     +-----+-----+-----+-----+                                             |
|     |     |     |     |     |                                             |
|     v     v     v     v     v                                             |
|  +-----+ +-----+ +-----+ +-----+                                          |
|  | net | | net | | net | | net |                                          |
|  | dev | |prod | | dev | |prod |                                          |
|  |gami | |gami | | erp | | erp |                                          |
|  +--+--+ +--+--+ +--+--+ +--+--+                                          |
|     |       |       |       |                                             |
|     v       v       v       v                                             |
|  [api:3000] [api:3000] [api:3100] [api:3100]                             |
|  [web:3001] [web:3001] [web:3101] [web:3101]                             |
|                                                                           |
|  Dominios:                                                                |
|    DEV:  *.dev.tu-dominio.com                                            |
|    PROD: *.tu-dominio.com                                                |
|                                                                           |
+===========================================================================+

2.3 Modelo de Base de Datos

PostgreSQL Instance (compartida)
|
+-- gamilit_db
|     +-- owner: app_gamilit_owner
|     +-- runtime: app_gamilit_runtime
|     +-- migrator: app_gamilit_migrator
|
+-- erp_suite_db
|     +-- owner: app_erp_owner
|     +-- runtime: app_erp_runtime
|     +-- migrator: app_erp_migrator
|
+-- trading_db
      +-- owner: app_trading_owner
      +-- runtime: app_trading_runtime
      +-- migrator: app_trading_migrator

3. ESTRUCTURA DE FASES

3.1 Mapa de Fases

FASE 0: PLAN MAESTRO (Este documento)
    |
    v
FASE 1: CONTROL PLANE
    +-- 1.1 Estructura base
    +-- 1.2 Registries
    +-- 1.3 Manifests
    +-- 1.4 CI/CD Templates
    |
    v
FASE 2: CORE ORCHESTRATION
    +-- 2.1 Migracion SIMCO
    +-- 2.2 Perfiles de Agentes (actualizados)
    +-- 2.3 Templates y Checklists
    +-- 2.4 Service Descriptor Standard
    |
    v
FASE 3: REGISTRIES Y ENFORCEMENT
    +-- 3.1 ports.registry.yml
    +-- 3.2 domains.registry.yml
    +-- 3.3 databases.registry.yml
    +-- 3.4 Scripts de validacion
    |
    v
FASE 4: PROYECTOS (por cada uno)
    +-- 4.1 Gamilit
    +-- 4.2 ERP Suite
    +-- 4.3 Trading Platform
    +-- 4.4 Betting Analytics
    |
    v
FASE 5: SHARED LIBS
    +-- 5.1 Estructura de packages
    +-- 5.2 Extraccion de codigo comun
    +-- 5.3 Publicacion npm local
    |
    v
FASE 6: KNOWLEDGE BASE
    +-- 6.1 Reorganizacion sources/indexes
    +-- 6.2 Pipelines de indexado
    |
    v
FASE 7: VALIDACION FINAL
    +-- 7.1 Tests de integracion
    +-- 7.2 Validacion de registries
    +-- 7.3 Documentacion final

3.2 Metodologia CAPVED por Fase

Cada fase sigue el ciclo CAPVED adaptado:

SUBFASE A: PLANEACION DEL ANALISIS
    - Definir alcance del analisis
    - Identificar archivos/componentes a revisar
    - Asignar agente responsable

SUBFASE B: EJECUCION DEL ANALISIS
    - Ejecutar analisis segun plan
    - Documentar hallazgos
    - Identificar dependencias

SUBFASE C: PLANEACION DE IMPLEMENTACION
    - Definir tareas especificas
    - Crear prompts para agentes
    - Establecer orden de ejecucion

SUBFASE D: VALIDACION DE PLANEACION
    - Verificar completitud vs analisis
    - Validar dependencias
    - Confirmar que no faltan objetos

SUBFASE E: EJECUCION DE IMPLEMENTACION
    - Ejecutar tareas segun plan
    - Documentar cambios
    - Actualizar inventarios

4. METODOLOGIA POR FASE

4.1 Template de Documentacion por Fase

Cada carpeta de fase contendra:

XX-fase-nombre/
|
+-- README.md                      # Descripcion de la fase
+-- ANALISIS/
|     +-- 00-PLAN-ANALISIS.md      # Subfase A
|     +-- 01-EJECUCION-ANALISIS.md # Subfase B
|     +-- 02-HALLAZGOS.md          # Resultados
|
+-- PLANEACION/
|     +-- 00-TAREAS.md             # Subfase C
|     +-- 01-VALIDACION.md         # Subfase D
|     +-- 02-DEPENDENCIAS.md       # Mapa de dependencias
|
+-- IMPLEMENTACION/
|     +-- 00-EJECUCION.md          # Subfase E
|     +-- 01-CAMBIOS.md            # Log de cambios
|     +-- 02-ROLLBACK.md           # Plan de rollback
|
+-- PROMPTS/
|     +-- PROMPT-AGENTE-X.md       # Prompt para cada agente
|     +-- PROMPT-AGENTE-Y.md
|
+-- VALIDACION/
      +-- CHECKLIST.md             # Checklist de validacion
      +-- REPORTE.md               # Reporte final de fase

4.2 Criterios de Completitud por Fase

Una fase se considera COMPLETA cuando:

[ ] Analisis documentado completamente
[ ] Todas las tareas ejecutadas
[ ] Inventarios actualizados
[ ] Dependencias validadas
[ ] Tests pasan (si aplica)
[ ] Documentacion actualizada
[ ] Reporte de fase generado
[ ] Aprobacion para siguiente fase

5. MAPA DE DEPENDENCIAS

5.1 Dependencias entre Fases

FASE 1 (Control Plane)
    |
    +---> FASE 2 (Core Orchestration) [requiere estructura base]
    |
    +---> FASE 3 (Registries) [requiere estructura + SIMCO actualizado]
              |
              +---> FASE 4 (Proyectos) [requiere registries]
              |         |
              |         +---> FASE 5 (Shared Libs) [requiere proyectos separados]
              |
              +---> FASE 6 (Knowledge Base) [puede paralelo con 4-5]
                          |
                          +---> FASE 7 (Validacion) [requiere todo]

5.2 Dependencias Internas por Fase

Fase 1: Control Plane

1.1 Estructura --> 1.2 Registries --> 1.3 Manifests --> 1.4 CI

Fase 2: Core Orchestration

2.1 SIMCO --> 2.2 Perfiles --> 2.3 Templates --> 2.4 Service Descriptor

Fase 3: Registries

3.1 Ports --> 3.2 Domains --> 3.3 Databases --> 3.4 Scripts
    (pueden ser paralelas 3.1-3.3, scripts al final)

Fase 4: Proyectos

4.1 Gamilit (prioritario, mas avanzado)
    |
    +---> 4.2 ERP Suite (segundo, mas complejo)
    |
    +---> 4.3 Trading (tercero)
    |
    +---> 4.4 Betting (ultimo, menos avanzado)

6. CRONOGRAMA

6.1 Estimacion por Fase

Fase Duracion Estimada Dependencias
0 - Plan Maestro 1 dia Ninguna
1 - Control Plane 2-3 dias Fase 0
2 - Core Orchestration 3-5 dias Fase 1
3 - Registries 2-3 dias Fase 2
4 - Proyectos 5-10 dias Fase 3
5 - Shared Libs 3-5 dias Fase 4
6 - Knowledge Base 2-3 dias Fase 3
7 - Validacion 2-3 dias Todo
TOTAL 20-32 dias -

6.2 Puntos de Control

Checkpoint Criterio de Exito
CP1 (Post Fase 1) Control plane estructura lista
CP2 (Post Fase 2) SIMCO v2 operativo
CP3 (Post Fase 3) Registries con enforcement
CP4 (Post Fase 4) Proyectos separados y funcionando
CP5 (Post Fase 5) Shared libs publicadas
CP6 (Post Fase 7) Migracion completa y validada

7. ROLES DE AGENTES

7.1 Agentes por Fase

Fase Agente Principal Agentes Soporte
0 Tech-Leader Requirements-Analyst
1 Architecture-Analyst DevOps-Agent
2 Tech-Leader Documentation-Validator
3 DevOps-Agent Backend-Agent
4.x Backend-Agent, Frontend-Agent, Database-Agent Tech-Leader
5 Backend-Agent Architecture-Analyst
6 Knowledge-Agent Tech-Leader
7 QA-Agent Todos

7.2 Responsabilidades por Agente

Tech-Leader:
  - Coordinacion general
  - Validacion de completitud
  - Toma de decisiones arquitectonicas
  - Aprobacion de fases

Architecture-Analyst:
  - Diseno de estructura de repos
  - Definicion de contratos
  - ADRs
  - Validacion de patrones

DevOps-Agent:
  - Configuracion de CI/CD
  - Scripts de validacion
  - Docker/Compose configs
  - Reverse proxy

Backend-Agent:
  - Migracion de codigo backend
  - Service descriptors
  - APIs y servicios

Frontend-Agent:
  - Migracion de codigo frontend
  - Componentes compartidos

Database-Agent:
  - Roles y permisos de BD
  - Migraciones
  - Seeds

Documentation-Validator:
  - Validacion de docs
  - Actualizacion de inventarios

Knowledge-Agent:
  - Reorganizacion de knowledge base
  - Pipelines de indexado

QA-Agent:
  - Tests de integracion
  - Validacion final
  - Reporte de calidad

8. ARCHIVOS DE REFERENCIA

8.1 Del Workspace Actual a Preservar

core/orchestration/directivas/simco/     -> Migrar y actualizar
core/orchestration/agents/perfiles/      -> Migrar y actualizar
core/catalog/                            -> Migrar a shared-libs
projects/gamilit/                        -> Separar a repo propio
projects/erp-suite/                      -> Separar a repo propio
knowledge-base/                          -> Migrar a repo shared

8.2 Archivos Nuevos a Crear

control-plane/registries/ports.registry.yml
control-plane/registries/domains.registry.yml
control-plane/registries/databases.registry.yml
control-plane/registries/services.registry.yml
control-plane/manifests/repos.manifest.yml
control-plane/manifests/environments.manifest.yml
devtools/scripts/validate-ports.sh
devtools/scripts/validate-domains.sh
devtools/scripts/validate-databases.sh
{proyecto}/service.descriptor.yml (por cada servicio)

9. SIGUIENTE PASO

Proceder a Fase 1: Control Plane con:

  1. Leer 01-fase-control-plane/README.md
  2. Ejecutar subfases A-E
  3. Generar reporte de fase
  4. Obtener aprobacion para Fase 2

Documento generado por: Tech-Leader Agent Fecha: 2025-12-18 Version: 1.0.0