Nuevas Épicas (MCH-029 a MCH-033): - Infraestructura SaaS multi-tenant - Auth Social (OAuth2) - Auditoría Empresarial - Feature Flags - Onboarding Wizard Nuevas Integraciones (INT-010 a INT-014): - Email Providers (SendGrid, Mailgun, SES) - Storage Cloud (S3, GCS, Azure) - OAuth Social - Redis Cache - Webhooks Outbound Nuevos ADRs (0004 a 0011): - Notifications Realtime - Feature Flags Strategy - Storage Abstraction - Webhook Retry Strategy - Audit Log Retention - Rate Limiting - OAuth Social Implementation - Email Multi-provider Actualizados: - MASTER_INVENTORY.yml - CONTEXT-MAP.yml - HERENCIA-SIMCO.md - Mapas de documentación Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
454 lines
16 KiB
YAML
454 lines
16 KiB
YAML
# CONTEXT-MAP: MICHANGARRITO
|
|
# Sistema: SIMCO - NEXUS v4.0
|
|
# Proposito: Mapear contexto automatico por nivel y tarea
|
|
# Version: 2.1.0
|
|
# Fecha: 2026-01-10
|
|
# Actualizado: Sincronizacion con desarrollo - 11 schemas, 17 modulos, integraciones SPEI/SAT
|
|
|
|
metadata:
|
|
proyecto: "michangarrito"
|
|
nivel: "STANDALONE"
|
|
version: "2.1.0"
|
|
ultima_actualizacion: "2026-01-10"
|
|
workspace_root: "/home/isem/workspace-v2"
|
|
project_root: "/home/isem/workspace-v2/projects/michangarrito"
|
|
codigo: "MCH"
|
|
|
|
# ===============================================================================
|
|
# VARIABLES DEL PROYECTO (PRE-RESUELTAS)
|
|
# ===============================================================================
|
|
|
|
variables:
|
|
# Identificacion
|
|
PROJECT: "michangarrito"
|
|
PROJECT_NAME: "MICHANGARRITO"
|
|
PROJECT_LEVEL: "STANDALONE"
|
|
PROJECT_CODE: "MCH"
|
|
|
|
# Base de datos
|
|
DB_NAME: "michangarrito"
|
|
DB_DDL_PATH: "/home/isem/workspace-v2/projects/michangarrito/database/schemas"
|
|
DB_SCRIPTS_PATH: "/home/isem/workspace-v2/projects/michangarrito/database"
|
|
DB_SEEDS_PATH: "/home/isem/workspace-v2/projects/michangarrito/database/seeds"
|
|
RECREATE_CMD: "drop-and-recreate-database.sh"
|
|
|
|
# Backend
|
|
BACKEND_ROOT: "/home/isem/workspace-v2/projects/michangarrito/apps/backend"
|
|
BACKEND_SRC: "/home/isem/workspace-v2/projects/michangarrito/apps/backend/src"
|
|
BACKEND_TESTS: "/home/isem/workspace-v2/projects/michangarrito/apps/backend/tests"
|
|
BACKEND_PORT: 3141
|
|
|
|
# Frontend Web
|
|
FRONTEND_ROOT: "/home/isem/workspace-v2/projects/michangarrito/apps/web"
|
|
FRONTEND_SRC: "/home/isem/workspace-v2/projects/michangarrito/apps/web/src"
|
|
FRONTEND_PORT: 3140
|
|
|
|
# Mobile
|
|
MOBILE_ROOT: "/home/isem/workspace-v2/projects/michangarrito/apps/mobile"
|
|
MOBILE_PORT: 8081
|
|
|
|
# MCP Server
|
|
MCP_SERVER_ROOT: "/home/isem/workspace-v2/projects/michangarrito/apps/mcp-server"
|
|
MCP_SERVER_PORT: 3142
|
|
|
|
# WhatsApp Service
|
|
WHATSAPP_ROOT: "/home/isem/workspace-v2/projects/michangarrito/apps/whatsapp-service"
|
|
WHATSAPP_PORT: 3143
|
|
|
|
# Documentacion
|
|
DOCS_PATH: "/home/isem/workspace-v2/projects/michangarrito/docs"
|
|
ORCHESTRATION_PATH: "/home/isem/workspace-v2/projects/michangarrito/orchestration"
|
|
|
|
# ===============================================================================
|
|
# ALIASES RESUELTOS
|
|
# ===============================================================================
|
|
|
|
aliases:
|
|
# Directivas globales
|
|
"@SIMCO": "/home/isem/workspace-v2/orchestration/directivas/simco"
|
|
"@PRINCIPIOS": "/home/isem/workspace-v2/orchestration/directivas/principios"
|
|
"@PERFILES": "/home/isem/workspace-v2/orchestration/agents/perfiles"
|
|
"@CATALOG": "/home/isem/workspace-v2/shared/catalog"
|
|
|
|
# Proyecto especifico
|
|
"@DDL": "/home/isem/workspace-v2/projects/michangarrito/database/schemas"
|
|
"@SEEDS": "/home/isem/workspace-v2/projects/michangarrito/database/seeds"
|
|
"@BACKEND": "/home/isem/workspace-v2/projects/michangarrito/apps/backend/src"
|
|
"@WEB": "/home/isem/workspace-v2/projects/michangarrito/apps/web/src"
|
|
"@MOBILE": "/home/isem/workspace-v2/projects/michangarrito/apps/mobile"
|
|
"@MCP": "/home/isem/workspace-v2/projects/michangarrito/apps/mcp-server"
|
|
"@WHATSAPP": "/home/isem/workspace-v2/projects/michangarrito/apps/whatsapp-service"
|
|
"@DOCS": "/home/isem/workspace-v2/projects/michangarrito/docs"
|
|
|
|
# Inventarios
|
|
"@INVENTORY": "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios"
|
|
"@INV_MASTER": "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/MASTER_INVENTORY.yml"
|
|
"@INV_DB": "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/DATABASE_INVENTORY.yml"
|
|
"@INV_BE": "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/BACKEND_INVENTORY.yml"
|
|
"@INV_FE": "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/FRONTEND_INVENTORY.yml"
|
|
|
|
# Trazas
|
|
"@TRAZA_DB": "/home/isem/workspace-v2/projects/michangarrito/orchestration/trazas/TRAZA-TAREAS-DATABASE.md"
|
|
"@TRAZA_BE": "/home/isem/workspace-v2/projects/michangarrito/orchestration/trazas/TRAZA-TAREAS-BACKEND.md"
|
|
"@TRAZA_FE": "/home/isem/workspace-v2/projects/michangarrito/orchestration/trazas/TRAZA-TAREAS-FRONTEND.md"
|
|
|
|
# ===============================================================================
|
|
# CONTEXTO POR NIVEL
|
|
# ===============================================================================
|
|
|
|
contexto_por_nivel:
|
|
L0_sistema:
|
|
descripcion: "Principios fundamentales y perfil de agente"
|
|
tokens_estimados: 4500
|
|
obligatorio: true
|
|
archivos:
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-CAPVED.md"
|
|
proposito: "Ciclo de vida de tareas"
|
|
tokens: 800
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-DOC-PRIMERO.md"
|
|
proposito: "Documentacion antes de codigo"
|
|
tokens: 500
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-ANTI-DUPLICACION.md"
|
|
proposito: "Verificar catalogo antes de crear"
|
|
tokens: 600
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-VALIDACION-OBLIGATORIA.md"
|
|
proposito: "Build/lint deben pasar"
|
|
tokens: 600
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-ECONOMIA-TOKENS.md"
|
|
proposito: "Limites de contexto"
|
|
tokens: 500
|
|
- path: "/home/isem/workspace-v2/orchestration/directivas/principios/PRINCIPIO-NO-ASUMIR.md"
|
|
proposito: "Preguntar si falta informacion"
|
|
tokens: 500
|
|
- path: "/home/isem/workspace-v2/orchestration/referencias/ALIASES.yml"
|
|
proposito: "Resolucion de @ALIAS"
|
|
tokens: 400
|
|
|
|
L1_proyecto:
|
|
descripcion: "Contexto especifico de MICHANGARRITO"
|
|
tokens_estimados: 3500
|
|
obligatorio: true
|
|
archivos:
|
|
- path: "/home/isem/workspace-v2/projects/michangarrito/orchestration/00-guidelines/CONTEXTO-PROYECTO.md"
|
|
proposito: "Variables y configuracion del proyecto"
|
|
tokens: 1500
|
|
- path: "/home/isem/workspace-v2/projects/michangarrito/orchestration/PROXIMA-ACCION.md"
|
|
proposito: "Estado actual y siguiente paso"
|
|
tokens: 500
|
|
- path: "/home/isem/workspace-v2/projects/michangarrito/orchestration/PROJECT-STATUS.md"
|
|
proposito: "Estado detallado del proyecto"
|
|
tokens: 1000
|
|
- path: "/home/isem/workspace-v2/projects/michangarrito/orchestration/PLAN-IMPLEMENTACION.md"
|
|
proposito: "Plan de fases del proyecto"
|
|
tokens: 500
|
|
|
|
L2_operacion:
|
|
descripcion: "SIMCO especificos segun operacion y dominio"
|
|
tokens_estimados: 2500
|
|
archivos_por_operacion:
|
|
CREAR:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-CREAR.md"
|
|
MODIFICAR:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-MODIFICAR.md"
|
|
VALIDAR:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-VALIDAR.md"
|
|
DELEGAR:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-DELEGACION.md"
|
|
archivos_por_dominio:
|
|
DDL:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-DDL.md"
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/DATABASE_INVENTORY.yml"
|
|
BACKEND:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-BACKEND.md"
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/BACKEND_INVENTORY.yml"
|
|
FRONTEND:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-FRONTEND.md"
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/inventarios/FRONTEND_INVENTORY.yml"
|
|
MOBILE:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-MOBILE.md"
|
|
MCP:
|
|
- "/home/isem/workspace-v2/orchestration/directivas/simco/SIMCO-MCP.md"
|
|
|
|
L3_tarea:
|
|
descripcion: "Contexto especifico de la tarea"
|
|
tokens_max: 8000
|
|
dinamico: true
|
|
|
|
# ===============================================================================
|
|
# INTEGRACION CON DOCUMENTACION (docs/)
|
|
# ===============================================================================
|
|
|
|
integracion_docs:
|
|
mapa_docs: "@DOCS/_MAP.md"
|
|
|
|
estructura:
|
|
vision: "@DOCS/00-vision-general/"
|
|
epicas: "@DOCS/01-epicas/"
|
|
especificaciones: "@DOCS/02-especificaciones/"
|
|
transversal: "@DOCS/90-transversal/"
|
|
|
|
epicas_por_fase:
|
|
fase1_infraestructura_base:
|
|
- MCH-001-infraestructura-base
|
|
- MCH-002-autenticacion
|
|
- MCH-003-catalogo-productos
|
|
- MCH-004-punto-venta
|
|
- MCH-005-integraciones-pago
|
|
fase2_inteligencia:
|
|
- MCH-006-onboarding-inteligente
|
|
- MCH-007-templates-catalogos
|
|
- MCH-008-sistema-fiados
|
|
- MCH-009-prediccion-inventario
|
|
fase3_asistente_ia:
|
|
- MCH-010-mcp-server
|
|
- MCH-011-whatsapp-service
|
|
- MCH-012-chat-llm-dueno
|
|
- MCH-013-chat-llm-cliente
|
|
fase4_pedidos_clientes:
|
|
- MCH-014-gestion-clientes
|
|
- MCH-015-pedidos-whatsapp
|
|
- MCH-016-entregas-domicilio
|
|
- MCH-017-notificaciones
|
|
fase5_monetizacion:
|
|
- MCH-018-planes-suscripciones
|
|
- MCH-019-tienda-tokens
|
|
- MCH-020-pagos-suscripcion
|
|
- MCH-021-dashboard-web
|
|
fase6_mobile_offline:
|
|
- MCH-022-modo-offline
|
|
- MCH-023-programa-referidos
|
|
- MCH-024-codi-spei
|
|
- MCH-025-widgets-atajos
|
|
fase7_expansion_latam:
|
|
- MCH-026-multi-idioma-latam
|
|
- MCH-027-integracion-sat
|
|
- MCH-028-marketplace-proveedores
|
|
|
|
# ===============================================================================
|
|
# MAPA TAREA -> ARCHIVOS (Especifico MICHANGARRITO)
|
|
# ===============================================================================
|
|
|
|
mapa_tarea_contexto:
|
|
database:
|
|
crear_tabla:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-DDL.md"]
|
|
inventario: "@INV_DB"
|
|
referencia: "@DDL/*.sql"
|
|
docs: "@DOCS/02-especificaciones/"
|
|
|
|
crear_schema:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-DDL.md"]
|
|
inventario: "@INV_DB"
|
|
referencia: "@DDL/*.sql"
|
|
|
|
backend:
|
|
crear_module:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-BACKEND.md"]
|
|
inventario: "@INV_BE"
|
|
referencia: "@BACKEND/modules/*/*.module.ts"
|
|
|
|
crear_entity:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-BACKEND.md"]
|
|
inventario: "@INV_BE"
|
|
referencia: "@BACKEND/modules/*/entities/*.entity.ts"
|
|
|
|
crear_service:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-BACKEND.md"]
|
|
inventario: "@INV_BE"
|
|
referencia: "@BACKEND/modules/*/services/*.service.ts"
|
|
|
|
crear_controller:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-BACKEND.md"]
|
|
inventario: "@INV_BE"
|
|
referencia: "@BACKEND/modules/*/controllers/*.controller.ts"
|
|
|
|
frontend:
|
|
crear_componente:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-FRONTEND.md"]
|
|
inventario: "@INV_FE"
|
|
referencia: "@WEB/components/**/*.tsx"
|
|
|
|
crear_pagina:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-FRONTEND.md"]
|
|
inventario: "@INV_FE"
|
|
referencia: "@WEB/pages/**/*.tsx"
|
|
|
|
mobile:
|
|
crear_screen:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-MOBILE.md"]
|
|
referencia: "@MOBILE/src/screens/*.tsx"
|
|
|
|
mcp:
|
|
crear_tool:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-MCP.md"]
|
|
referencia: "@MCP/src/tools/*.ts"
|
|
|
|
whatsapp:
|
|
crear_handler:
|
|
simco: ["SIMCO-CREAR.md", "SIMCO-BACKEND.md"]
|
|
referencia: "@WHATSAPP/src/handlers/*.ts"
|
|
|
|
# ===============================================================================
|
|
# INFORMACION ESPECIFICA DEL PROYECTO
|
|
# ===============================================================================
|
|
|
|
info_proyecto:
|
|
tipo: "SaaS - Punto de Venta + IA para Micro-negocios"
|
|
estado: "95% MVP Implementado"
|
|
version: "3.2.0"
|
|
|
|
stack:
|
|
backend: "NestJS"
|
|
frontend: "React + Vite + TailwindCSS"
|
|
mobile: "React Native (Expo)"
|
|
database: "PostgreSQL (multi-tenant)"
|
|
cache: "Redis"
|
|
mcp_server: "TypeScript + MCP SDK"
|
|
whatsapp: "NestJS + Meta API"
|
|
llm: "Agnostico (OpenRouter/OpenAI/Claude)"
|
|
|
|
apps:
|
|
- backend: "API NestJS"
|
|
- web: "Dashboard React"
|
|
- mobile: "App Expo"
|
|
- mcp-server: "Gateway LLM"
|
|
- whatsapp-service: "Bot WhatsApp"
|
|
|
|
schemas:
|
|
- public # Tenants, configuracion global
|
|
- auth # Usuarios, sesiones, tokens
|
|
- catalog # Productos, categorias
|
|
- sales # Ventas, pagos, CoDi, SPEI
|
|
- inventory # Stock, movimientos
|
|
- customers # Clientes, fiados
|
|
- orders # Pedidos WhatsApp
|
|
- subscriptions # Planes, tokens, referidos
|
|
- messaging # Conversaciones, mensajes
|
|
- billing # CFDI 4.0, facturas
|
|
- marketplace # Proveedores B2B
|
|
|
|
modulos_backend:
|
|
implementados:
|
|
- auth
|
|
- users
|
|
- tenants
|
|
- products
|
|
- categories
|
|
- sales
|
|
- payments
|
|
- customers
|
|
- inventory
|
|
- orders
|
|
- subscriptions
|
|
- messaging
|
|
- notifications
|
|
- reports
|
|
- billing
|
|
- referrals
|
|
- marketplace
|
|
- integrations
|
|
|
|
modelo_negocio:
|
|
planes:
|
|
- Changarrito: "$99/mes + 500 tokens IA"
|
|
- Tiendita: "$199/mes + 2000 tokens + WhatsApp propio"
|
|
tokens_adicionales:
|
|
- "$29 = 1,000 tokens"
|
|
- "$69 = 3,000 tokens"
|
|
- "$149 = 8,000 tokens"
|
|
- "$299 = 20,000 tokens"
|
|
|
|
# ===============================================================================
|
|
# VALIDACION DE TOKENS
|
|
# ===============================================================================
|
|
|
|
validacion_tokens:
|
|
limite_absoluto: 25000
|
|
limite_seguro: 18000
|
|
limite_alerta: 20000
|
|
|
|
presupuesto:
|
|
L0_sistema: 4500
|
|
L1_proyecto: 3500
|
|
L2_operacion: 2500
|
|
L3_tarea_max: 8000
|
|
total_base: 10500
|
|
disponible_tarea: 7500
|
|
|
|
# ===============================================================================
|
|
# HERENCIA
|
|
# ===============================================================================
|
|
|
|
herencia:
|
|
tipo: "STANDALONE"
|
|
hereda_de:
|
|
- "/home/isem/workspace-v2/orchestration/"
|
|
usa_catalog:
|
|
- payments (Stripe, Mercado Pago)
|
|
- notifications (WhatsApp, Push)
|
|
- auth (JWT)
|
|
- multi-tenancy (RLS)
|
|
|
|
# ===============================================================================
|
|
# INTEGRACIONES EXTERNAS
|
|
# ===============================================================================
|
|
|
|
integraciones:
|
|
whatsapp:
|
|
proveedor: "Meta WhatsApp Business API"
|
|
proposito: "Canal principal de comunicacion"
|
|
estado: "implementado"
|
|
stripe:
|
|
proveedor: "Stripe"
|
|
proposito: "Suscripciones, pagos, OXXO"
|
|
estado: "implementado"
|
|
mercado_pago:
|
|
proveedor: "Mercado Pago"
|
|
proposito: "Terminal de pago con tarjeta"
|
|
estado: "implementado"
|
|
clip:
|
|
proveedor: "Clip"
|
|
proposito: "Terminal de pago con tarjeta"
|
|
estado: "pendiente"
|
|
codi:
|
|
proveedor: "CoDi (Banxico) via Openpay"
|
|
proposito: "Pagos QR sin comision"
|
|
estado: "implementado"
|
|
spei:
|
|
proveedor: "STP (Sistema de Transferencias y Pagos)"
|
|
proposito: "Transferencias bancarias, CLABEs virtuales"
|
|
estado: "implementado"
|
|
sat_cfdi:
|
|
proveedor: "Facturapi / PAC"
|
|
proposito: "Facturacion electronica CFDI 4.0"
|
|
estado: "implementado"
|
|
llm:
|
|
proveedor: "OpenRouter (Claude, GPT-4o, DeepSeek)"
|
|
proposito: "Gateway LLM para IA"
|
|
estado: "implementado"
|
|
firebase:
|
|
proveedor: "Firebase Cloud Messaging"
|
|
proposito: "Push notifications"
|
|
estado: "implementado"
|
|
ocr:
|
|
proveedor: "Google Vision"
|
|
proposito: "OCR de imagenes"
|
|
estado: "pendiente"
|
|
whisper:
|
|
proveedor: "OpenAI Whisper"
|
|
proposito: "Transcripcion de audio"
|
|
estado: "implementado"
|
|
|
|
# ===============================================================================
|
|
# BUSQUEDA DE HISTORICO
|
|
# ===============================================================================
|
|
|
|
busqueda_historico:
|
|
habilitado: true
|
|
ubicaciones:
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/trazas/"
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/analisis/"
|
|
- "/home/isem/workspace-v2/projects/michangarrito/orchestration/reportes/"
|
|
- "/home/isem/workspace-v2/orchestration/errores/REGISTRO-ERRORES.yml"
|
|
- "/home/isem/workspace-v2/shared/knowledge-base/lessons-learned/"
|