erp-suite/orchestration/prompts/PROMPT-BACKEND-AGENT.md

3.5 KiB

PROMPT BACKEND-AGENT - EXTENSIÓN ERP-SUITE

Versión: 1.0.0 Fecha: 2025-12-05 Tipo: Extensión de prompt global Proyecto: ERP Suite - Sistema ERP Multi-Vertical


HERENCIA

EXTIENDE: core/orchestration/agents/PROMPT-BACKEND-AGENT.md
CONTEXTO: orchestration/00-guidelines/CONTEXTO-PROYECTO.md

IMPORTANTE: Este archivo NO duplica el prompt global. Solo contiene:

  1. Resolución de variables para ERP-Suite
  2. Extensiones específicas del proyecto (si las hay)

RESOLUCIÓN DE VARIABLES PARA ERP-SUITE

Al leer el prompt global, resolver estos placeholders:

{PROJECT_NAME}:    ERP-Suite
{BACKEND_ROOT}:    apps/erp-core/backend
{BACKEND_SRC}:     apps/erp-core/backend/src
{BACKEND_TESTS}:   apps/erp-core/backend/tests
{DB_NAME}:         erp_platform
{AUTH_SCHEMA}:     auth_management
{FRONTEND_ROOT}:   apps/erp-core/frontend
{DB_DDL_PATH}:     apps/erp-core/database/ddl

ARQUITECTURA MULTI-VERTICAL

Backend Core (Express.js)

Módulo Propósito
auth Autenticación JWT
users Gestión de usuarios
catalogs Catálogos compartidos
audit Auditoría

Backend Vertical Construcción

Módulo Path Propósito
projects apps/verticales/construccion/backend/ Proyectos y desarrollos
financial apps/verticales/construccion/backend/ Presupuestos
purchasing apps/verticales/construccion/backend/ Compras
quality apps/verticales/construccion/backend/ Inspecciones

RUTAS DE TRABAJO

Core

apps/erp-core/backend/src/modules/{modulo}/
apps/erp-core/backend/src/shared/

Vertical Construcción

apps/verticales/construccion/backend/src/modules/{modulo}/

EXTENSIONES ESPECÍFICAS

Stack Express.js (no NestJS)

ERP-Suite usa Express.js en lugar de NestJS:

// Estructura típica de módulo
src/modules/{modulo}/
├── {modulo}.routes.ts      // Router Express
├── {modulo}.controller.ts  // Handler de requests
├── {modulo}.service.ts     // Lógica de negocio
├── {modulo}.entity.ts      // TypeORM Entity
└── dto/
    ├── create-{modulo}.dto.ts
    └── update-{modulo}.dto.ts

Multi-tenant Middleware

// Middleware de tenant
export const tenantMiddleware = (req, res, next) => {
    const constructoraId = req.user?.constructoraId;
    if (constructoraId) {
        // Set PostgreSQL context
        await pool.query(`SET app.current_constructora_id = $1`, [constructoraId]);
    }
    next();
};

Validación con Zod

// ERP-Suite usa Zod para validación
import { z } from 'zod';

export const CreateProjectSchema = z.object({
    code: z.string().min(1).max(50),
    name: z.string().min(1).max(200),
    // ...
});

FLUJO DE INICIO

Cuando el usuario diga "lee el prompt de Backend Agent para ERP-Suite":

  1. Leer prompt global: core/orchestration/agents/PROMPT-BACKEND-AGENT.md
  2. Leer este archivo: Para resolver variables y ver extensiones
  3. Leer contexto: orchestration/00-guidelines/CONTEXTO-PROYECTO.md
  4. Listo para recibir tarea

Nota: Cualquier mejora a las directivas generales se hace en core/orchestration/agents/PROMPT-BACKEND-AGENT.md y se refleja automáticamente en todos los proyectos.