# Plan Sprint 1: Documentacion Base - MiChangarrito **Fecha**: 2026-01-10 **Version**: 1.0.0 **Estado**: EN_PLANIFICACION **Responsable**: Agente Orquestador --- ## 1. OBJETIVO DEL SPRINT Crear la documentacion base SIMCO para el proyecto michangarrito, incluyendo: 1. `docs/_MAP.md` - Mapa de navegacion de documentacion 2. `DATABASE_INVENTORY.yml` - Inventario de base de datos 3. `BACKEND_INVENTORY.yml` - Inventario de backend NestJS 4. `FRONTEND_INVENTORY.yml` - Inventario de frontend React --- ## 2. RESUMEN DEL ANALISIS ### 2.1 Documentacion (docs/) | Metrica | Valor | |---------|-------| | Total archivos MD | 42 | | Secciones principales | 4 (00-vision, 01-epicas, 02-especificaciones, 90-transversal) | | Epicas documentadas | 28 (MCH-001 a MCH-028) | | MAPs existentes | 3 (raiz, epicas, especificaciones) | | Duplicados detectados | 1 (ARQUITECTURA-DATABASE.md) | ### 2.2 Base de Datos (database/) | Metrica | Valor | |---------|-------| | Archivos SQL | 15 | | Schemas | 9 | | Tablas | 27 | | ENUMs | 2 | | Funciones | 5 | | Triggers | 14+ | | Foreign Keys | 25+ | | Extensiones | 4 (uuid-ossp, pgcrypto, unaccent, pg_trgm) | ### 2.3 Backend (apps/backend/) | Metrica | Valor | |---------|-------| | Framework | NestJS 10.3.0 | | Modulos | 12 | | Controladores | 14 | | Servicios | 14+ | | Entidades | 20+ | | Endpoints | 100+ | | Puerto | 3141 | ### 2.4 Frontend (apps/frontend/) | Metrica | Valor | |---------|-------| | Framework | React 19.2.0 + Vite 7.2.4 | | Paginas | 9 | | Componentes | 1 (Layout) | | Contextos | 1 (AuthContext) | | Servicios API | 1 (api.ts con 6 grupos) | | Puerto | 3140 | --- ## 3. ENTREGABLES ### 3.1 docs/_MAP.md (ACTUALIZAR) **Ubicacion**: `/home/isem/workspace-v1/projects/michangarrito/docs/_MAP.md` **Accion**: ACTUALIZAR archivo existente **Contenido requerido**: - [ ] Estructura jerarquica completa - [ ] Estadisticas actualizadas (42 archivos, 28 epicas) - [ ] Referencias correctas a subdirectorios - [ ] Estado por seccion - [ ] Navegacion rapida por componente **Dependencias**: - Ningun archivo depende directamente de este - Es archivo de referencia/navegacion --- ### 3.2 DATABASE_INVENTORY.yml (CREAR) **Ubicacion**: `/home/isem/workspace-v1/projects/michangarrito/orchestration/inventarios/DATABASE_INVENTORY.yml` **Accion**: CREAR nuevo archivo **Contenido requerido**: - [ ] Metadata (version, proyecto, engine, puerto, database) - [ ] Resumen (9 schemas, 27 tablas, 5 funciones, 14+ triggers) - [ ] Detalle de cada schema: - public: tenants, tenant_configs, tenant_integration_credentials, tenant_whatsapp_numbers - auth: users, sessions, otp_codes - catalog: categories, products, product_templates - sales: sales, sale_items, payments, daily_closures - inventory: inventory_movements, stock_alerts - customers: customers, fiados, fiado_payments - orders: orders, order_items - subscriptions: plans, subscriptions, token_packages, token_usage, tenant_token_balance - messaging: conversations, messages, notifications - [ ] Scripts de BD (create-database.sh, recreate-database.sh, validate-integrations.sh) - [ ] Rutas base **Dependencias**: - Archivos SQL en database/schemas/ - Seeds en database/seeds/ - Scripts en database/scripts/ --- ### 3.3 BACKEND_INVENTORY.yml (CREAR) **Ubicacion**: `/home/isem/workspace-v1/projects/michangarrito/orchestration/inventarios/BACKEND_INVENTORY.yml` **Accion**: CREAR nuevo archivo **Contenido requerido**: - [ ] Metadata (version, proyecto, framework, lenguaje) - [ ] Configuracion (puerto 3141, base_path /api, version v1, swagger /docs) - [ ] Resumen (12 modulos, 100+ endpoints, 20+ entities) - [ ] Detalle de cada modulo: - auth: Tenant, User, AuthController, AuthService - products: Product, ProductsController, ProductsService - categories: Category, CategoriesController, CategoriesService - sales: Sale, SaleItem, SalesController, SalesService - customers: Customer, Fiado, FiadoPayment, CustomersController, CustomersService - orders: Order, OrderItem, OrdersController, OrdersService - inventory: InventoryMovement, StockAlert, InventoryController, InventoryService - payments: PaymentMethod, PaymentsController, PaymentsService - subscriptions: Plan, Subscription, TokenBalance, TokenUsage, SubscriptionsController - messaging: Conversation, Message, Notification, MessagingController - billing: BillingController, BillingService - integrations: TenantIntegrationCredential, TenantWhatsAppNumber, IntegrationsController - [ ] Guards (JwtAuthGuard) - [ ] Estrategias (JwtStrategy) - [ ] Scripts NPM **Dependencias**: - Archivos en apps/backend/src/ - Entidades TypeORM que mapean a database/schemas/ - package.json --- ### 3.4 FRONTEND_INVENTORY.yml (CREAR) **Ubicacion**: `/home/isem/workspace-v1/projects/michangarrito/orchestration/inventarios/FRONTEND_INVENTORY.yml` **Accion**: CREAR nuevo archivo **Contenido requerido**: - [ ] Metadata (version, proyecto, framework, lenguaje) - [ ] Configuracion (puerto 3140, proxy a backend 3141) - [ ] Resumen (9 paginas, 1 componente, 1 contexto) - [ ] Detalle de paginas: - Dashboard: Metricas y resumen del negocio - Products: Catalogo de productos - Orders: Gestion de pedidos - Customers: Directorio de clientes - Fiado: Gestion de creditos - Inventory: Control de inventario - Settings: Configuracion - Login: Autenticacion - Register: Registro de negocios - [ ] Componentes (Layout) - [ ] Contextos (AuthContext) - [ ] Servicios API (api.ts) - [ ] Rutas configuradas - [ ] Dependencias principales **Dependencias**: - Archivos en apps/frontend/src/ - package.json - Consume API de backend --- ## 4. ESTRUCTURA DE ARCHIVOS A CREAR ``` michangarrito/ ├── docs/ │ └── _MAP.md [ACTUALIZAR] └── orchestration/ └── inventarios/ ├── DATABASE_INVENTORY.yml [CREAR] ├── BACKEND_INVENTORY.yml [CREAR] └── FRONTEND_INVENTORY.yml [CREAR] ``` --- ## 5. ORDEN DE EJECUCION | # | Archivo | Accion | Razon | |---|---------|--------|-------| | 1 | docs/_MAP.md | ACTUALIZAR | Base de navegacion, sin dependencias | | 2 | DATABASE_INVENTORY.yml | CREAR | Base de datos es fundamento de todo | | 3 | BACKEND_INVENTORY.yml | CREAR | Depende del inventario de BD | | 4 | FRONTEND_INVENTORY.yml | CREAR | Depende del inventario de backend | --- ## 6. VALIDACIONES REQUERIDAS ### 6.1 docs/_MAP.md - [ ] Todas las secciones documentadas - [ ] Referencias a archivos existentes correctas - [ ] Estadisticas actualizadas ### 6.2 DATABASE_INVENTORY.yml - [ ] 9 schemas documentados - [ ] 27 tablas listadas - [ ] Columnas principales de cada tabla - [ ] Foreign keys documentadas - [ ] Triggers y funciones listados ### 6.3 BACKEND_INVENTORY.yml - [ ] 12 modulos documentados - [ ] Endpoints por modulo - [ ] Entidades mapeadas a tablas de BD - [ ] Guards y estrategias ### 6.4 FRONTEND_INVENTORY.yml - [ ] 9 paginas documentadas - [ ] Componentes y sus props - [ ] Servicios API utilizados - [ ] Rutas configuradas --- ## 7. CRITERIOS DE ACEPTACION 1. **Completitud**: Todos los elementos del analisis estan documentados 2. **Precision**: Los conteos y estadisticas son correctos 3. **Consistencia**: Formato SIMCO respetado segun templates 4. **Navegabilidad**: docs/_MAP.md permite encontrar cualquier archivo 5. **Trazabilidad**: Inventarios referencian archivos reales --- ## 8. DEPENDENCIAS IDENTIFICADAS ### 8.1 Dependencias Internas | Archivo Origen | Archivo Destino | Tipo | |----------------|-----------------|------| | DATABASE_INVENTORY.yml | database/schemas/*.sql | DOCUMENTA | | BACKEND_INVENTORY.yml | apps/backend/src/** | DOCUMENTA | | BACKEND_INVENTORY.yml | DATABASE_INVENTORY.yml | REFERENCIA | | FRONTEND_INVENTORY.yml | apps/frontend/src/** | DOCUMENTA | | FRONTEND_INVENTORY.yml | BACKEND_INVENTORY.yml | REFERENCIA | ### 8.2 Archivos Criticos (No Modificar) - database/schemas/*.sql - apps/backend/src/** - apps/frontend/src/** --- ## 9. TEMPLATES DE REFERENCIA | Template | Ubicacion | |----------|-----------| | MASTER | /home/isem/workspace-v1/shared/knowledge-base/templates/inventories/TEMPLATE-MASTER-INVENTORY.yml | | DATABASE | /home/isem/workspace-v1/shared/knowledge-base/templates/inventories/TEMPLATE-DATABASE-INVENTORY.yml | | BACKEND | /home/isem/workspace-v1/shared/knowledge-base/templates/inventories/TEMPLATE-BACKEND-INVENTORY.yml | | MAP | /home/isem/workspace-v1/orchestration/templates/TEMPLATE-MAP.md | --- ## 10. NOTAS - El proyecto ya tiene un docs/_MAP.md existente que debe ser ACTUALIZADO, no recreado - Los inventarios se crean en orchestration/inventarios/ (crear directorio si no existe) - Seguir estructura SIMCO de templates del workspace - Usar ejemplo de gamilit como referencia de inventario completo --- **Fin del Plan**