Sistema NEXUS v3.4 migrado con: Estructura principal: - core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles) - core/catalog: Catalogo de funcionalidades reutilizables - shared/knowledge-base: Base de conocimiento compartida - devtools/scripts: Herramientas de desarrollo - control-plane/registries: Control de servicios y CI/CD - orchestration/: Configuracion de orquestacion de agentes Proyectos incluidos (11): - gamilit (submodule -> GitHub) - trading-platform (OrbiquanTIA) - erp-suite con 5 verticales: - erp-core, construccion, vidrio-templado - mecanicas-diesel, retail, clinicas - betting-analytics - inmobiliaria-analytics - platform_marketing_content - pos-micro, erp-basico Configuracion: - .gitignore completo para Node.js/Python/Docker - gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git) - Sistema de puertos estandarizado (3005-3199) Generated with NEXUS v3.4 Migration System EPIC-010: Configuracion Git y Repositorios
8.7 KiB
8.7 KiB
TEMPLATE: CONTEXTO DE PROYECTO
Versión: 1.1.0 Sistema: SIMCO + Catálogo Propósito: Template para crear el archivo CONTEXTO-PROYECTO.md en cada proyecto
INSTRUCCIONES DE USO
- Copiar este template a:
projects/{proyecto}/orchestration/00-guidelines/CONTEXTO-PROYECTO.md - Reemplazar todos los
{PLACEHOLDER}con valores reales del proyecto - Eliminar secciones que no apliquen
- Este archivo es la fuente de verdad para resolver aliases en el proyecto
CONTEXTO: {PROJECT_NAME}
Proyecto: {PROJECT_NAME} Descripción: {Descripción breve del proyecto} Fecha creación: {YYYY-MM-DD} Última actualización: {YYYY-MM-DD} Versión: 1.0.0
INFORMACIÓN GENERAL
Proyecto:
nombre: "{PROJECT_NAME}"
descripcion: "{Descripción del proyecto}"
tipo: "standalone | multi-vertical | monorepo"
estado: "desarrollo | staging | producción"
Equipo:
tech_lead: "{nombre o sistema}"
repository: "{URL del repositorio}"
Stack:
database: "PostgreSQL {versión}"
backend: "NestJS {versión}"
frontend: "React {versión}"
otros: []
VARIABLES DEL PROYECTO (ALIAS RESUELTOS)
Database
# Variables para @DDL, @SEEDS, etc.
DB_NAME: "{nombre_base_datos}"
DB_DDL_PATH: "{ruta}/ddl"
DB_SCRIPTS_PATH: "{ruta}"
DB_SEEDS_PATH: "{ruta}/seeds"
RECREATE_CMD: "{script_recreacion}.sh"
# Schemas del proyecto
SCHEMAS:
- name: "{schema_1}"
descripcion: "{propósito}"
- name: "{schema_2}"
descripcion: "{propósito}"
Ejemplo resuelto:
DB_NAME: "gamilit_platform"
DB_DDL_PATH: "apps/database/ddl"
DB_SCRIPTS_PATH: "apps/database"
DB_SEEDS_PATH: "apps/database/seeds"
RECREATE_CMD: "drop-and-recreate-database.sh"
SCHEMAS:
- name: "auth_management"
descripcion: "Autenticación y usuarios"
- name: "gamification_system"
descripcion: "Sistema de gamificación"
Backend
# Variables para @BACKEND, @BACKEND_ROOT, etc.
BACKEND_ROOT: "{ruta_backend}"
BACKEND_SRC: "{ruta_backend}/src"
BACKEND_TESTS: "{ruta_backend}/tests"
BACKEND_PORT: "{puerto}"
# Módulos principales
MODULES:
- name: "{modulo_1}"
descripcion: "{propósito}"
- name: "{modulo_2}"
descripcion: "{propósito}"
Ejemplo resuelto:
BACKEND_ROOT: "apps/backend"
BACKEND_SRC: "apps/backend/src"
BACKEND_TESTS: "apps/backend/tests"
BACKEND_PORT: "3000"
MODULES:
- name: "auth"
descripcion: "Autenticación JWT"
- name: "users"
descripcion: "Gestión de usuarios"
- name: "gamification"
descripcion: "Sistema de puntos y badges"
Frontend
# Variables para @FRONTEND, @FRONTEND_ROOT, etc.
FRONTEND_ROOT: "{ruta_frontend}"
FRONTEND_SRC: "{ruta_frontend}/src"
FRONTEND_PORT: "{puerto}"
API_BASE_URL: "{url_api}"
# Apps del frontend
APPS:
- name: "{app_1}"
descripcion: "{propósito}"
ruta: "{path}"
Ejemplo resuelto:
FRONTEND_ROOT: "apps/frontend/web"
FRONTEND_SRC: "apps/frontend/web/src"
FRONTEND_PORT: "5173"
API_BASE_URL: "http://localhost:3000/api"
APPS:
- name: "main"
descripcion: "Aplicación principal"
ruta: "/"
- name: "admin"
descripcion: "Panel de administración"
ruta: "/admin"
ALIAS RESUELTOS PARA ESTE PROYECTO
Copia de @ALIASES con valores concretos:
# ═══════════════════════════════════════════════════════════════
# ALIAS RESUELTOS - {PROJECT_NAME}
# ═══════════════════════════════════════════════════════════════
# Código
@DDL: "{DB_DDL_PATH}/schemas/"
@DDL_ROOT: "{DB_DDL_PATH}/"
@SEEDS: "{DB_SEEDS_PATH}/"
@SEEDS_DEV: "{DB_SEEDS_PATH}/dev/"
@SEEDS_PROD: "{DB_SEEDS_PATH}/prod/"
@DB_SCRIPTS: "{DB_SCRIPTS_PATH}/"
@BACKEND: "{BACKEND_SRC}/modules/"
@BACKEND_ROOT: "{BACKEND_ROOT}/"
@BACKEND_SHARED: "{BACKEND_SRC}/shared/"
@FRONTEND: "{FRONTEND_SRC}/apps/"
@FRONTEND_ROOT: "{FRONTEND_ROOT}/"
@FRONTEND_SHARED: "{FRONTEND_SRC}/shared/"
# Orchestration
@ORCH: "orchestration/"
@INVENTORY: "orchestration/inventarios/MASTER_INVENTORY.yml"
@INV_DB: "orchestration/inventarios/DATABASE_INVENTORY.yml"
@INV_BE: "orchestration/inventarios/BACKEND_INVENTORY.yml"
@INV_FE: "orchestration/inventarios/FRONTEND_INVENTORY.yml"
@TRAZA_DB: "orchestration/trazas/TRAZA-TAREAS-DATABASE.md"
@TRAZA_BE: "orchestration/trazas/TRAZA-TAREAS-BACKEND.md"
@TRAZA_FE: "orchestration/trazas/TRAZA-TAREAS-FRONTEND.md"
# Documentación
@DOCS: "docs/"
@GUIAS: "docs/95-guias-desarrollo/"
@ADR: "docs/97-adr/"
Ejemplo resuelto para GAMILIT:
@DDL: "apps/database/ddl/schemas/"
@DDL_ROOT: "apps/database/ddl/"
@SEEDS: "apps/database/seeds/"
@DB_SCRIPTS: "apps/database/"
@BACKEND: "apps/backend/src/modules/"
@BACKEND_ROOT: "apps/backend/"
@BACKEND_SHARED: "apps/backend/src/shared/"
@FRONTEND: "apps/frontend/web/src/apps/"
@FRONTEND_ROOT: "apps/frontend/web/"
@INVENTORY: "orchestration/inventarios/MASTER_INVENTORY.yml"
# ... etc
COMANDOS FRECUENTES
# Database
recrear_db: "cd {DB_SCRIPTS_PATH} && ./{RECREATE_CMD}"
crear_db: "cd {DB_SCRIPTS_PATH} && ./create-database.sh"
psql_connect: "psql -d {DB_NAME}"
# Backend
build_be: "cd {BACKEND_ROOT} && npm run build"
lint_be: "cd {BACKEND_ROOT} && npm run lint"
test_be: "cd {BACKEND_ROOT} && npm run test"
start_be: "cd {BACKEND_ROOT} && npm run start:dev"
# Frontend
build_fe: "cd {FRONTEND_ROOT} && npm run build"
lint_fe: "cd {FRONTEND_ROOT} && npm run lint"
start_fe: "cd {FRONTEND_ROOT} && npm run dev"
ESTRUCTURA DEL PROYECTO
{PROJECT_NAME}/
├── apps/
│ ├── database/
│ │ ├── ddl/
│ │ │ ├── 00-init.sql
│ │ │ └── schemas/
│ │ │ └── {schema}/
│ │ ├── seeds/
│ │ │ ├── dev/
│ │ │ └── prod/
│ │ ├── create-database.sh
│ │ └── {RECREATE_CMD}
│ │
│ ├── backend/
│ │ ├── src/
│ │ │ ├── shared/
│ │ │ └── modules/
│ │ │ └── {modulo}/
│ │ ├── tests/
│ │ └── package.json
│ │
│ └── frontend/
│ └── web/
│ ├── src/
│ │ ├── apps/
│ │ └── shared/
│ └── package.json
│
├── docs/
│ ├── 00-vision-general/
│ ├── 01-fase-*/
│ ├── 95-guias-desarrollo/
│ ├── 97-adr/
│ └── README.md
│
├── orchestration/
│ ├── 00-guidelines/
│ │ └── CONTEXTO-PROYECTO.md ← ESTE ARCHIVO
│ ├── inventarios/
│ │ ├── MASTER_INVENTORY.yml
│ │ ├── DATABASE_INVENTORY.yml
│ │ ├── BACKEND_INVENTORY.yml
│ │ └── FRONTEND_INVENTORY.yml
│ ├── trazas/
│ │ ├── TRAZA-TAREAS-DATABASE.md
│ │ ├── TRAZA-TAREAS-BACKEND.md
│ │ └── TRAZA-TAREAS-FRONTEND.md
│ └── PROXIMA-ACCION.md
│
└── README.md
REFERENCIAS A CORE/ORCHESTRATION
Este proyecto usa el sistema SIMCO definido en:
SIMCO:
indice: "core/orchestration/directivas/simco/_INDEX.md"
principios: "core/orchestration/directivas/principios/"
aliases_globales: "core/orchestration/referencias/ALIASES.yml"
perfiles: "core/orchestration/agents/perfiles/"
# 🆕 CATÁLOGO DE FUNCIONALIDADES REUTILIZABLES
CATALOGO:
indice: "core/catalog/CATALOG-INDEX.yml"
reutilizar: "core/orchestration/directivas/simco/SIMCO-REUTILIZAR.md"
funcionalidades:
- auth: "core/catalog/auth/"
- session: "core/catalog/session-management/"
- rate-limiting: "core/catalog/rate-limiting/"
- notifications: "core/catalog/notifications/"
- multi-tenancy: "core/catalog/multi-tenancy/"
- feature-flags: "core/catalog/feature-flags/"
- websocket: "core/catalog/websocket/"
- payments: "core/catalog/payments/"
🆕 FUNCIONALIDADES DEL CATÁLOGO USADAS EN ESTE PROYECTO
# Marcar las funcionalidades que este proyecto usa del catálogo global
funcionalidades_del_catalogo:
- nombre: "{funcionalidad}"
version: "{version del catálogo}"
adaptaciones: "{cambios específicos del proyecto}"
fecha_implementacion: "{YYYY-MM-DD}"
NOTAS ESPECÍFICAS DEL PROYECTO
{Agregar notas específicas, decisiones de arquitectura locales, particularidades del proyecto, etc.}
Creado: {YYYY-MM-DD} Autor: {nombre} Basado en: TEMPLATE-CONTEXTO-PROYECTO.md v1.0.0