michangarrito/orchestration/_archive/analisis/F6-PLAN-REFINADO-INTEGRIDAD-2026-01-10.md
Adrian Flores Cortes 2fb9f3f6b5
Some checks are pending
CI/CD Pipeline / Backend CI (push) Waiting to run
CI/CD Pipeline / Frontend CI (push) Waiting to run
CI/CD Pipeline / WhatsApp Service CI (push) Waiting to run
CI/CD Pipeline / Mobile CI (push) Waiting to run
CI/CD Pipeline / Docker Build (./apps/backend, ./apps/backend/Dockerfile, backend) (push) Blocked by required conditions
CI/CD Pipeline / Docker Build (./apps/frontend, ./apps/frontend/Dockerfile, frontend) (push) Blocked by required conditions
CI/CD Pipeline / Docker Build (./apps/whatsapp-service, ./apps/whatsapp-service/Dockerfile, whatsapp-service) (push) Blocked by required conditions
CI/CD Pipeline / Deploy to Production (push) Blocked by required conditions
[ESTANDAR-ORCHESTRATION] refactor: Consolidate to standard structure
- Move 7 non-standard folders to _archive/
- Archive 3 extra root files
- Update _MAP.md with standardized structure

Standard: SIMCO-ESTANDAR-ORCHESTRATION v1.0.0
Level: CONSUMER (L2)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 14:38:04 -06:00

281 lines
8.9 KiB
Markdown

# FASE 6: PLAN REFINADO DE CORRECCIONES
## Incorporando Hallazgos de F4 y F5
**Version:** 1.0.0
**Fecha:** 2026-01-10
**Ejecutado por:** Agente Orquestador (PERFIL-ORQUESTADOR)
**Sistema:** SIMCO v3.8.0 + CAPVED
---
## 1. CAMBIOS RESPECTO A F3
### Refinamientos Incorporados de F4
| # | Refinamiento | Incorporado |
|---|--------------|-------------|
| 1 | Incrementar version de inventarios | SI |
| 2 | Agregar paso de verificacion build | SI |
### Optimizaciones de F5
| # | Optimizacion | Incorporado |
|---|--------------|-------------|
| 1 | Ejecucion paralela donde sea posible | SI |
| 2 | Omitir MASTER_INVENTORY (referencia opcional) | SI |
---
## 2. PLAN REFINADO DE EJECUCION
### PASO 1: Correccion DATABASE_INVENTORY.yml (Paralelo)
**Archivo:** `orchestration/inventarios/DATABASE_INVENTORY.yml`
**Cambios:**
1. Linea 22: `total_tablas: 53``total_tablas: 47`
2. Linea 4: `Version: 2.2.0``Version: 2.2.1`
3. Linea 5: Actualizar fecha
### PASO 2: Crear supplier-favorites.entity.ts (Paralelo con Paso 1)
**Archivo:** `apps/backend/src/modules/marketplace/entities/supplier-favorites.entity.ts`
**Contenido completo:**
```typescript
import {
Entity,
PrimaryGeneratedColumn,
Column,
CreateDateColumn,
ManyToOne,
JoinColumn,
Unique,
} from 'typeorm';
import { Supplier } from './supplier.entity';
@Entity({ name: 'supplier_favorites', schema: 'marketplace' })
@Unique(['tenant_id', 'supplier_id'])
export class SupplierFavorites {
@PrimaryGeneratedColumn('uuid')
id: string;
@Column('uuid')
tenant_id: string;
@Column('uuid')
supplier_id: string;
@CreateDateColumn()
created_at: Date;
@ManyToOne(() => Supplier)
@JoinColumn({ name: 'supplier_id' })
supplier: Supplier;
}
```
### PASO 3: Actualizar marketplace.module.ts (Depende de Paso 2)
**Archivo:** `apps/backend/src/modules/marketplace/marketplace.module.ts`
**Cambios:**
1. Agregar import: `import { SupplierFavorites } from './entities/supplier-favorites.entity';`
2. Agregar a forFeature: `SupplierFavorites`
**Resultado esperado:**
```typescript
import { Module } from '@nestjs/common';
import { TypeOrmModule } from '@nestjs/typeorm';
import { Supplier } from './entities/supplier.entity';
import { SupplierProduct } from './entities/supplier-product.entity';
import { SupplierOrder } from './entities/supplier-order.entity';
import { SupplierOrderItem } from './entities/supplier-order-item.entity';
import { SupplierReview } from './entities/supplier-review.entity';
import { SupplierFavorites } from './entities/supplier-favorites.entity';
import { MarketplaceService } from './marketplace.service';
import { MarketplaceController } from './marketplace.controller';
@Module({
imports: [
TypeOrmModule.forFeature([
Supplier,
SupplierProduct,
SupplierOrder,
SupplierOrderItem,
SupplierReview,
SupplierFavorites,
]),
],
controllers: [MarketplaceController],
providers: [MarketplaceService],
exports: [MarketplaceService],
})
export class MarketplaceModule {}
```
### PASO 4: Correccion BACKEND_INVENTORY.yml (Paralelo con Paso 3)
**Archivo:** `orchestration/inventarios/BACKEND_INVENTORY.yml`
**Cambios:**
1. Linea 39: `total_entities: 35``total_entities: 37`
2. Linea 4: `Version: 2.2.0``Version: 2.2.1`
3. Agregar entidades faltantes en modulo marketplace (~linea 409):
- SupplierOrderItem (entities/supplier-order-item.entity.ts)
- SupplierReview (entities/supplier-review.entity.ts)
- SupplierFavorites (entities/supplier-favorites.entity.ts)
### PASO 5: Verificar Build (Depende de Pasos 2, 3)
```bash
cd apps/backend && npm run build
```
**Criterios de exito:**
- Sin errores de compilacion
- Sin warnings de TypeORM
---
## 3. DIAGRAMA DE EJECUCION
```
TIEMPO ────────────────────────────────────────────────────────────────►
T1 (PARALELO):
┌─────────────────────────────┐ ┌─────────────────────────────────┐
│ PASO 1 │ │ PASO 2 │
│ DATABASE_INVENTORY.yml │ │ supplier-favorites.entity.ts │
│ - total_tablas: 47 │ │ - Crear archivo │
│ - Version: 2.2.1 │ │ - TypeORM Entity │
└─────────────────────────────┘ └────────────────┬────────────────┘
T2 (SECUENCIAL): │
┌─────────────────────────────────┐
│ PASO 3 │
│ marketplace.module.ts │
│ - Import entity │
│ - Agregar a forFeature │
└────────────────┬────────────────┘
T3 (PARALELO): │
┌─────────────────────────────┐ │
│ PASO 4 │ │
│ BACKEND_INVENTORY.yml │◄──────────────────┘
│ - total_entities: 37 │
│ - Version: 2.2.1 │
│ - Agregar entities │
└─────────────────────────────┘
T4 (VERIFICACION):
┌─────────────────────────────────────────────────────────────────────┐
│ PASO 5: npm run build │
│ Verificar compilacion exitosa │
└─────────────────────────────────────────────────────────────────────┘
```
---
## 4. CHECKPOINTS REFINADOS
### Checkpoint 1: Post-Paralelo T1
- [ ] DATABASE_INVENTORY.yml modificado
- [ ] total_tablas: 47
- [ ] Version: 2.2.1
- [ ] supplier-favorites.entity.ts creado
- [ ] Archivo existe
- [ ] Schema: marketplace
- [ ] Columnas: id, tenant_id, supplier_id, created_at
### Checkpoint 2: Post-Secuencial T2
- [ ] marketplace.module.ts actualizado
- [ ] Import agregado
- [ ] forFeature incluye 6 entities
### Checkpoint 3: Post-Paralelo T3
- [ ] BACKEND_INVENTORY.yml modificado
- [ ] total_entities: 37
- [ ] Version: 2.2.1
- [ ] 6 entities en marketplace
### Checkpoint 4: Verificacion Final
- [ ] Build exitoso (npm run build)
- [ ] Sin errores de TypeORM
- [ ] Inventarios consistentes con codigo
---
## 5. COMANDOS DE EJECUCION
```bash
# Verificar estado inicial
cd /home/isem/workspace-v1/projects/michangarrito
# Paso 1 y 2 se ejecutan via herramientas de edicion
# Verificar entity creada
ls -la apps/backend/src/modules/marketplace/entities/
# Verificar imports
grep "SupplierFavorites" apps/backend/src/modules/marketplace/marketplace.module.ts
# Build verification
cd apps/backend && npm run build
# Verificar inventarios
grep "total_tablas" orchestration/inventarios/DATABASE_INVENTORY.yml
grep "total_entities" orchestration/inventarios/BACKEND_INVENTORY.yml
```
---
## 6. ROLLBACK REFINADO
### Si falla Paso 2 o 3:
```bash
# Eliminar entity
rm apps/backend/src/modules/marketplace/entities/supplier-favorites.entity.ts
# Revertir module
git checkout apps/backend/src/modules/marketplace/marketplace.module.ts
```
### Si falla Paso 1 o 4:
```bash
# Revertir inventarios
git checkout orchestration/inventarios/DATABASE_INVENTORY.yml
git checkout orchestration/inventarios/BACKEND_INVENTORY.yml
```
---
## 7. RESUMEN DEL PLAN REFINADO
| Paso | Archivo | Cambio | Paralelo |
|------|---------|--------|----------|
| 1 | DATABASE_INVENTORY.yml | total_tablas, version | SI |
| 2 | supplier-favorites.entity.ts | Crear | SI |
| 3 | marketplace.module.ts | Import, forFeature | NO |
| 4 | BACKEND_INVENTORY.yml | total_entities, version, entities | SI |
| 5 | Build | Verificacion | NO |
**Total cambios:** 4 archivos
**Archivos nuevos:** 1
**Tiempo estimado:** ~15 minutos
---
**Documento generado:** 2026-01-10
**Agente:** Orquestador (PERFIL-ORQUESTADOR)
**Sistema:** SIMCO v3.8.0 + CAPVED
**Estado:** PLAN LISTO PARA EJECUCION
**Proxima Fase:** F7 - Ejecucion