miinventario-v2/orchestration/analisis/PLAN-CORRECCION-DOCUMENTACION-2026-01-13.md
rckrdmrd c24f889f70
Some checks failed
Build / Build Backend (push) Has been cancelled
Build / Build Mobile (TypeScript Check) (push) Has been cancelled
Lint / Lint Backend (push) Has been cancelled
Lint / Lint Mobile (push) Has been cancelled
Test / Backend E2E Tests (push) Has been cancelled
Test / Mobile Unit Tests (push) Has been cancelled
Build / Build Docker Image (push) Has been cancelled
[MIINVENTARIO] feat: Add exports, reports, integrations modules and CI/CD pipeline
- Add exports module with PDF/CSV/Excel generation
- Add reports module for inventory analytics
- Add POS integrations module
- Add database migrations for exports, movements and integrations
- Add GitHub Actions CI/CD workflow with Docker support
- Add mobile export and reports screens with tests
- Update epic documentation with traceability
- Add deployment and security guides

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 06:06:34 -06:00

400 lines
13 KiB
Markdown

# Plan de Corrección de Documentación - MiInventario
---
id: PLAN-CORR-DOC-20260113
type: Plan
status: Draft
version: "1.0.0"
created_date: 2026-01-13
updated_date: 2026-01-13
simco_version: "4.0.0"
analyst: "Claude Opus 4.5 (Arquitecto de Documentación)"
depends_on: "ANALISIS-VALIDACION-DOCUMENTACION-2026-01-13.md"
---
## 1. Objetivo
Corregir todas las inconsistencias, referencias rotas y desincronizaciones detectadas en el análisis de documentación, para que la documentación refleje fielmente el estado real del proyecto (100% completado).
---
## 2. Decisiones Previas Requeridas
Antes de ejecutar las correcciones, se necesita confirmar:
| # | Decisión | Opciones | Recomendación |
|---|----------|----------|---------------|
| D-001 | Estado real del proyecto | A) 100% completado B) Parcial | **A) 100%** (basado en PROJECT-STATUS.md y trazas) |
| D-002 | Puerto backend definitivo | A) 3142 B) 3150 | **A) 3142** (usado en PROJECT-STATUS) |
| D-003 | Archivos 02-especificaciones/ | A) Crear B) Eliminar referencias | **B) Eliminar** (la info está en inventarios) |
| D-004 | Archivos 90-transversal/ | A) Crear B) Eliminar referencias | **A) Crear** (son críticos para operaciones) |
---
## 3. Plan de Correcciones por Fases
### FASE A: CORRECCIONES CRÍTICAS (1-2 horas)
#### A.1 Sincronizar estados de épicas a "Completado"
**Archivos a modificar (16):**
```
docs/01-epicas/MII-001-infraestructura-base.md
docs/01-epicas/MII-002-autenticacion.md
docs/01-epicas/MII-003-gestion-tiendas.md
docs/01-epicas/MII-004-captura-video.md
docs/01-epicas/MII-005-procesamiento-ia.md
docs/01-epicas/MII-006-reportes-inventario.md
docs/01-epicas/MII-007-retroalimentacion.md
docs/01-epicas/MII-008-validacion-aleatoria.md
docs/01-epicas/MII-009-wallet-creditos.md
docs/01-epicas/MII-010-paquetes-recarga.md
docs/01-epicas/MII-011-pagos-tarjeta.md
docs/01-epicas/MII-012-pagos-oxxo.md
docs/01-epicas/MII-013-pagos-7eleven.md
docs/01-epicas/MII-014-referidos.md
docs/01-epicas/MII-015-admin-saas.md
```
**Cambios por archivo:**
1. Cambiar `status: Pendiente``status: Completado`
2. Actualizar `updated_date: 2026-01-13`
3. En cada tarea, cambiar `Estado: Pendiente``Estado: Completado`
#### A.2 Actualizar CONTEXT-MAP.yml
**Archivo:** `orchestration/CONTEXT-MAP.yml`
**Cambios:**
```yaml
# ANTES
version: "0.1.0"
estado: planificacion
# DESPUÉS
version: "1.2.0"
estado: completado
```
También actualizar todas las épicas de `estado: pendiente` a `estado: completado`.
#### A.3 Actualizar MASTER_INVENTORY.yml
**Archivo:** `orchestration/inventarios/MASTER_INVENTORY.yml`
**Cambios:**
1. Actualizar `version: "3.0.0"`
2. Cambiar `estado_general: "100% - Completado"`
3. Marcar Fase 2 como completada (21/21 SP)
4. Marcar Fase 4 como completada (34/34 SP)
5. Actualizar contadores:
- modulos_backend: 14
- endpoints: 61
- screens_mobile: 22
- tablas: 21
#### A.4 Eliminar módulo videos de BACKEND_INVENTORY.yml
**Archivo:** `orchestration/inventarios/BACKEND_INVENTORY.yml`
**Cambio:** Eliminar la sección completa del módulo `videos` que no existe.
#### A.5 Corregir puerto backend
**Archivos a modificar:**
1. `orchestration/CONTEXT-MAP.yml` - Cambiar 3150 → 3142
2. `orchestration/environment/ENVIRONMENT-INVENTORY.yml` - Cambiar 3150 → 3142
---
### FASE B: CORRECCIONES DE ALTA PRIORIDAD (2-3 horas)
#### B.1 Documentar módulos backend faltantes
**Archivo:** `orchestration/inventarios/BACKEND_INVENTORY.yml`
**Agregar secciones para:**
1. **Módulo admin:**
- 6 servicios: dashboard, moderation, packages, promotions, providers, audit-log
- 17 endpoints documentados
- 3 entidades: AuditLog, Promotion, IaProvider
2. **Módulo feedback:**
- 1 servicio: feedback.service.ts
- 6 endpoints
- 3 entidades: Correction, GroundTruth, ProductSubmission
3. **Módulo validations:**
- 2 servicios: validations.service.ts, validation-engine.service.ts
- 4 endpoints
- 2 entidades: ValidationRequest, ValidationResponse
#### B.2 Actualizar DATABASE_INVENTORY.yml
**Archivo:** `orchestration/inventarios/DATABASE_INVENTORY.yml`
**Agregar:**
1. **8 entidades faltantes:**
- audit_logs
- promotions
- ia_providers
- corrections
- ground_truth
- product_submissions
- validation_requests
- validation_responses
2. **2 migraciones faltantes:**
- 1736502000000-CreateFeedbackTables.ts
- 1736600000000-CreateAdminTables.ts
3. **4 ENUMs faltantes:**
- corrections_type_enum
- ground_truth_status_enum
- product_submissions_status_enum
- promotions_type_enum
4. **Actualizar enum users_role_enum:**
- Agregar: VIEWER, MODERATOR, SUPER_ADMIN
5. **Documentar campos de fraude en referrals:**
- fraudHold, fraudReason, reviewedBy, reviewedAt
#### B.3 Actualizar FRONTEND_INVENTORY.yml
**Archivo:** `orchestration/inventarios/FRONTEND_INVENTORY.yml`
**Agregar:**
1. **Screens:**
- validation/items.tsx
- validation/complete.tsx
- validation/_layout.tsx
2. **Stores:**
- validations.store.ts
- feedback.store.ts
3. **Services:**
- validations.service.ts
- feedback.service.ts
4. **Componentes:**
- validation/ValidationPromptModal.tsx
- validation/ValidationItemCard.tsx
- validation/ValidationProgressBar.tsx
- feedback/ConfirmItemButton.tsx
- feedback/CorrectionHistoryCard.tsx
- feedback/CorrectSkuModal.tsx
- feedback/CorrectQuantityModal.tsx
#### B.4 Crear documentos transversales críticos
**Crear:** `docs/90-transversal/GUIA-DESPLIEGUE.md`
**Contenido mínimo:**
- Requisitos previos
- Comandos Docker Compose
- Variables de entorno requeridas
- Verificación de despliegue
- Troubleshooting común
**Crear:** `docs/90-transversal/SEGURIDAD.md`
**Contenido mínimo:**
- Autenticación JWT + OTP
- Roles y permisos (RBAC)
- Row-Level Security
- Sanitización de inputs
- Secretos y variables de entorno
---
### FASE C: CORRECCIONES DE MEDIA PRIORIDAD (3-4 horas)
#### C.1 Mover frontmatter antes del título H1
**Archivos (20 total):**
Patrón de cambio:
```markdown
# ANTES:
# Título del Documento
---
id: XXX
type: Epic
...
---
# DESPUÉS:
---
id: XXX
type: Epic
...
---
# Título del Documento
```
**docs/00-vision-general/ (4 archivos):**
- VISION-PROYECTO.md
- REQUERIMIENTOS-FUNCIONALES.md
- ARQUITECTURA-TECNICA.md
- _MAP.md
**docs/01-epicas/ (16 archivos):**
- MII-001 a MII-015
- _MAP.md
#### C.2 Eliminar referencias rotas
**Actualizar `docs/00-vision-general/_MAP.md`:**
- Eliminar referencia a `REQUERIMIENTOS-ORIGINALES.md`
**Actualizar `docs/00-vision-general/REQUERIMIENTOS-FUNCIONALES.md`:**
- Eliminar referencia a `REQUERIMIENTOS-ORIGINALES.md`
**Actualizar `docs/02-especificaciones/_MAP.md`:**
- Cambiar estado de archivos de "Pendiente" a "No Planificado" o eliminar entradas
**Actualizar `docs/README.md`:**
- Eliminar referencias a archivos inexistentes
#### C.3 Corregir nomenclatura de archivos
**Opción A:** Renombrar `INT-002-oxxo.md``INT-002-oxxo-voucher.md`
**Opción B:** Actualizar referencias en `docs/_MAP.md` de `INT-002-oxxo-voucher.md``INT-002-oxxo.md`
**Recomendación:** Opción B (menos cambios)
#### C.4 Actualizar PLAN-IMPLEMENTACION.md
**Archivo:** `orchestration/PLAN-IMPLEMENTACION.md`
**Cambios:**
- Marcar checkboxes de criterios de éxito como completados [x]
- Actualizar fecha de última modificación
---
### FASE D: CORRECCIONES DE BAJA PRIORIDAD (1 hora)
#### D.1 Documentar Guards y Decorators
**Archivo:** `orchestration/inventarios/BACKEND_INVENTORY.yml`
**Agregar:**
```yaml
guards:
- nombre: RolesGuard
ruta: src/common/guards/roles.guard.ts
estado: implementado
decorators:
- nombre: Roles
ruta: src/common/decorators/roles.decorator.ts
estado: implementado
```
#### D.2 Agregar referencias a integraciones
**Archivos a actualizar:**
- MII-002-autenticacion.md - Agregar ref a INT-004-firebase-fcm.md
- MII-009-wallet-creditos.md - Agregar ref a INT-004-firebase-fcm.md
#### D.3 Actualizar información técnica
**INT-001-stripe.md:**
- Verificar y actualizar `apiVersion` si hay versión más reciente
**INT-006-ia-provider.md:**
- Actualizar nombre de modelo OpenAI Vision (gpt-4-vision-preview → gpt-4o)
---
## 4. Orden de Ejecución
```
┌─────────────────────────────────────────────────────────────────┐
│ ORDEN DE EJECUCIÓN │
├─────────────────────────────────────────────────────────────────┤
│ │
│ FASE A: CRÍTICA (1-2h) │
│ ├── A.1: Sincronizar estados épicas (16 archivos) │
│ ├── A.2: Actualizar CONTEXT-MAP.yml │
│ ├── A.3: Actualizar MASTER_INVENTORY.yml │
│ ├── A.4: Eliminar módulo videos │
│ └── A.5: Corregir puerto backend │
│ │ │
│ ▼ │
│ FASE B: ALTA (2-3h) [puede ejecutarse en paralelo] │
│ ├── B.1: Documentar módulos backend ────┐ │
│ ├── B.2: Actualizar DATABASE_INVENTORY ├──► En paralelo │
│ ├── B.3: Actualizar FRONTEND_INVENTORY ─┘ │
│ └── B.4: Crear docs transversales │
│ │ │
│ ▼ │
│ FASE C: MEDIA (3-4h) │
│ ├── C.1: Mover frontmatter (20 archivos) │
│ ├── C.2: Eliminar referencias rotas │
│ ├── C.3: Corregir nomenclatura │
│ └── C.4: Actualizar PLAN-IMPLEMENTACION │
│ │ │
│ ▼ │
│ FASE D: BAJA (1h) │
│ ├── D.1: Documentar Guards/Decorators │
│ ├── D.2: Agregar referencias integraciones │
│ └── D.3: Actualizar info técnica │
│ │
└─────────────────────────────────────────────────────────────────┘
```
---
## 5. Validación Post-Ejecución
Después de ejecutar todas las correcciones, validar:
| # | Verificación | Comando/Acción |
|---|--------------|----------------|
| V-001 | Todos los estados de épicas = "Completado" | `grep -r "status: Pendiente" docs/01-epicas/` → debe retornar vacío |
| V-002 | CONTEXT-MAP.yml version = 1.2.0 | `grep "version:" orchestration/CONTEXT-MAP.yml` |
| V-003 | Puerto backend consistente | `grep -r "3150" orchestration/` → debe retornar vacío |
| V-004 | Sin módulo videos en inventory | `grep "videos" orchestration/inventarios/BACKEND_INVENTORY.yml` → debe retornar vacío |
| V-005 | 14 módulos en backend inventory | Contar módulos en BACKEND_INVENTORY.yml |
| V-006 | 21 entidades en database inventory | Contar entidades en DATABASE_INVENTORY.yml |
| V-007 | Frontmatter antes de título | Verificar primeras líneas de cada .md comienzan con `---` |
| V-008 | Sin referencias rotas | `grep -r "REQUERIMIENTOS-ORIGINALES" docs/` → debe retornar vacío |
---
## 6. Resumen de Esfuerzo
| Fase | Archivos | Tiempo | Paralelizable |
|------|----------|--------|---------------|
| A - Crítica | ~7 | 1-2h | Parcialmente |
| B - Alta | ~7 + 2 nuevos | 2-3h | Sí |
| C - Media | ~25 | 3-4h | Parcialmente |
| D - Baja | ~6 | 1h | Sí |
| **TOTAL** | **~47** | **7-10h** | - |
---
## 7. Riesgos del Plan
| Riesgo | Probabilidad | Impacto | Mitigación |
|--------|--------------|---------|------------|
| Cambios masivos rompen referencias | Media | Alto | Validar después de cada fase |
| Estado real no es 100% completado | Baja | Alto | Verificar código antes de asumir |
| Documentos transversales incompletos | Media | Medio | Crear versión mínima, iterar |
---
**Plan creado por:** Claude Opus 4.5
**Fecha:** 2026-01-13
**Versión del plan:** 1.0.0
**Requiere aprobación antes de ejecución**