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>
647 lines
14 KiB
YAML
647 lines
14 KiB
YAML
# TRACEABILITY-MASTER.yml v3.0
|
|
# Proyecto: Mi Changarrito
|
|
# Prefijo: MCH
|
|
# Actualizado: 2026-01-10
|
|
# Sistema: SIMCO v4.0.1
|
|
|
|
traceability_version: "3.0"
|
|
|
|
project:
|
|
code: "MCH"
|
|
name: "Mi Changarrito - Sistema POS para Pequenos Comercios"
|
|
updated: "2026-01-10"
|
|
simco_version: "4.0.1"
|
|
|
|
# ============================================================================
|
|
# RESUMEN DE EPICAS
|
|
# ============================================================================
|
|
|
|
epics_summary:
|
|
total: 33
|
|
completed: 22
|
|
in_progress: 0
|
|
pending: 6
|
|
planned: 5
|
|
|
|
nomenclature_mapping:
|
|
current: "MCH-NNN"
|
|
legacy: "MCH-EP-NNN"
|
|
|
|
# ============================================================================
|
|
# EPICAS POR FASE
|
|
# ============================================================================
|
|
|
|
epics:
|
|
# FASE 1: MVP CORE
|
|
- id: "MCH-001"
|
|
name: "Infraestructura Base"
|
|
status: "completed"
|
|
phase: 1
|
|
priority: "P0"
|
|
story_points: 8
|
|
dependencies: []
|
|
blocks: ["MCH-002", "MCH-003", "MCH-010"]
|
|
integrations: []
|
|
adrs: ["ADR-0001"]
|
|
|
|
- id: "MCH-002"
|
|
name: "Autenticacion"
|
|
status: "completed"
|
|
phase: 1
|
|
priority: "P0"
|
|
story_points: 13
|
|
dependencies: ["MCH-001"]
|
|
blocks: ["MCH-006", "MCH-014"]
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-003"
|
|
name: "Catalogo de Productos"
|
|
status: "completed"
|
|
phase: 1
|
|
priority: "P0"
|
|
story_points: 13
|
|
dependencies: ["MCH-001"]
|
|
blocks: ["MCH-004", "MCH-007"]
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-004"
|
|
name: "Punto de Venta"
|
|
status: "completed"
|
|
phase: 1
|
|
priority: "P0"
|
|
story_points: 21
|
|
dependencies: ["MCH-003"]
|
|
blocks: ["MCH-005", "MCH-008"]
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-005"
|
|
name: "Integraciones de Pago"
|
|
status: "completed"
|
|
phase: 1
|
|
priority: "P0"
|
|
story_points: 13
|
|
dependencies: ["MCH-004"]
|
|
blocks: []
|
|
integrations: ["INT-002", "INT-004", "INT-005"]
|
|
adrs: []
|
|
|
|
# FASE 2: INTELIGENCIA
|
|
- id: "MCH-006"
|
|
name: "Onboarding Inteligente"
|
|
status: "completed"
|
|
phase: 2
|
|
priority: "P1"
|
|
story_points: 8
|
|
dependencies: ["MCH-002"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-007"
|
|
name: "Templates y Catalogos"
|
|
status: "completed"
|
|
phase: 2
|
|
priority: "P1"
|
|
story_points: 5
|
|
dependencies: ["MCH-003"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-008"
|
|
name: "Sistema de Fiados"
|
|
status: "completed"
|
|
phase: 2
|
|
priority: "P1"
|
|
story_points: 8
|
|
dependencies: ["MCH-004"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-009"
|
|
name: "Prediccion Inventario"
|
|
status: "completed"
|
|
phase: 2
|
|
priority: "P1"
|
|
story_points: 5
|
|
dependencies: ["MCH-003"]
|
|
blocks: []
|
|
integrations: ["INT-008"]
|
|
adrs: []
|
|
|
|
# FASE 3: ASISTENTE IA
|
|
- id: "MCH-010"
|
|
name: "MCP Server"
|
|
status: "completed"
|
|
phase: 3
|
|
priority: "P0"
|
|
story_points: 13
|
|
dependencies: ["MCH-001"]
|
|
blocks: ["MCH-011", "MCH-012", "MCH-013"]
|
|
integrations: ["INT-003"]
|
|
adrs: ["ADR-0003"]
|
|
|
|
- id: "MCH-011"
|
|
name: "WhatsApp Service"
|
|
status: "completed"
|
|
phase: 3
|
|
priority: "P0"
|
|
story_points: 13
|
|
dependencies: ["MCH-010"]
|
|
blocks: ["MCH-015"]
|
|
integrations: ["INT-001", "INT-009"]
|
|
adrs: ["ADR-0002"]
|
|
|
|
- id: "MCH-012"
|
|
name: "Chat LLM Dueno"
|
|
status: "completed"
|
|
phase: 3
|
|
priority: "P1"
|
|
story_points: 8
|
|
dependencies: ["MCH-010"]
|
|
blocks: []
|
|
integrations: ["INT-003"]
|
|
adrs: ["ADR-0003"]
|
|
|
|
- id: "MCH-013"
|
|
name: "Chat LLM Cliente"
|
|
status: "completed"
|
|
phase: 3
|
|
priority: "P1"
|
|
story_points: 5
|
|
dependencies: ["MCH-010"]
|
|
blocks: []
|
|
integrations: ["INT-003"]
|
|
adrs: ["ADR-0003"]
|
|
|
|
# FASE 4: PEDIDOS Y CLIENTES
|
|
- id: "MCH-014"
|
|
name: "Gestion de Clientes"
|
|
status: "completed"
|
|
phase: 4
|
|
priority: "P1"
|
|
story_points: 8
|
|
dependencies: ["MCH-002"]
|
|
blocks: ["MCH-015"]
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-015"
|
|
name: "Pedidos via WhatsApp"
|
|
status: "completed"
|
|
phase: 4
|
|
priority: "P1"
|
|
story_points: 13
|
|
dependencies: ["MCH-011", "MCH-014"]
|
|
blocks: ["MCH-016"]
|
|
integrations: ["INT-001"]
|
|
adrs: []
|
|
|
|
- id: "MCH-016"
|
|
name: "Entregas a Domicilio"
|
|
status: "completed"
|
|
phase: 4
|
|
priority: "P2"
|
|
story_points: 5
|
|
dependencies: ["MCH-015"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-017"
|
|
name: "Notificaciones"
|
|
status: "completed"
|
|
phase: 4
|
|
priority: "P1"
|
|
story_points: 5
|
|
dependencies: ["MCH-011"]
|
|
blocks: []
|
|
integrations: ["INT-007"]
|
|
adrs: []
|
|
|
|
# FASE 5: MONETIZACION
|
|
- id: "MCH-018"
|
|
name: "Planes y Suscripciones"
|
|
status: "completed"
|
|
phase: 5
|
|
priority: "P0"
|
|
story_points: 8
|
|
dependencies: ["MCH-002"]
|
|
blocks: ["MCH-019", "MCH-020"]
|
|
integrations: ["INT-002"]
|
|
adrs: []
|
|
|
|
- id: "MCH-019"
|
|
name: "Tienda de Tokens"
|
|
status: "completed"
|
|
phase: 5
|
|
priority: "P1"
|
|
story_points: 5
|
|
dependencies: ["MCH-018"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-020"
|
|
name: "Pagos Suscripcion"
|
|
status: "completed"
|
|
phase: 5
|
|
priority: "P0"
|
|
story_points: 8
|
|
dependencies: ["MCH-018"]
|
|
blocks: []
|
|
integrations: ["INT-002"]
|
|
adrs: []
|
|
|
|
- id: "MCH-021"
|
|
name: "Dashboard Web"
|
|
status: "completed"
|
|
phase: 5
|
|
priority: "P1"
|
|
story_points: 13
|
|
dependencies: ["MCH-018"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
# FASE 6: CRECIMIENTO
|
|
- id: "MCH-022"
|
|
name: "Modo Offline"
|
|
status: "completed"
|
|
phase: 6
|
|
priority: "P1"
|
|
story_points: 13
|
|
dependencies: ["MCH-004"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-023"
|
|
name: "Programa de Referidos"
|
|
status: "pending"
|
|
phase: 6
|
|
priority: "P2"
|
|
story_points: 5
|
|
dependencies: ["MCH-018"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-024"
|
|
name: "CoDi y SPEI"
|
|
status: "pending"
|
|
phase: 6
|
|
priority: "P2"
|
|
story_points: 8
|
|
dependencies: ["MCH-005"]
|
|
blocks: []
|
|
integrations: ["INT-006"]
|
|
adrs: []
|
|
|
|
- id: "MCH-025"
|
|
name: "Widgets y Atajos"
|
|
status: "pending"
|
|
phase: 6
|
|
priority: "P2"
|
|
story_points: 5
|
|
dependencies: ["MCH-004"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
# FASE 7: EXPANSION
|
|
- id: "MCH-026"
|
|
name: "Multi-idioma LATAM"
|
|
status: "pending"
|
|
phase: 7
|
|
priority: "P3"
|
|
story_points: 5
|
|
dependencies: []
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-027"
|
|
name: "Integracion SAT"
|
|
status: "pending"
|
|
phase: 7
|
|
priority: "P3"
|
|
story_points: 13
|
|
dependencies: []
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
- id: "MCH-028"
|
|
name: "Marketplace Proveedores"
|
|
status: "pending"
|
|
phase: 7
|
|
priority: "P3"
|
|
story_points: 8
|
|
dependencies: []
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
|
|
# FASE 7: EXPANSION SAAS (NUEVAS)
|
|
- id: "MCH-029"
|
|
name: "Infraestructura SaaS Avanzada"
|
|
status: "planned"
|
|
phase: 7
|
|
priority: "P0"
|
|
story_points: 24
|
|
sprint_target: "6-7"
|
|
dependencies: []
|
|
blocks: ["MCH-030", "MCH-032", "MCH-033"]
|
|
integrations: ["INT-010", "INT-011", "INT-013", "INT-014"]
|
|
adrs: ["ADR-0006", "ADR-0007", "ADR-0009", "ADR-0011"]
|
|
user_stories:
|
|
- id: "MCH-US-101"
|
|
name: "Email Multi-proveedor"
|
|
story_points: 5
|
|
- id: "MCH-US-102"
|
|
name: "Storage Abstracto"
|
|
story_points: 8
|
|
- id: "MCH-US-103"
|
|
name: "Redis Cache y Queue"
|
|
story_points: 3
|
|
- id: "MCH-US-104"
|
|
name: "Webhooks Outbound"
|
|
story_points: 5
|
|
- id: "MCH-US-112"
|
|
name: "Rate Limiting por Plan"
|
|
story_points: 3
|
|
|
|
- id: "MCH-030"
|
|
name: "Auth Social OAuth 2.0"
|
|
status: "planned"
|
|
phase: 7
|
|
priority: "P1"
|
|
story_points: 8
|
|
sprint_target: "8"
|
|
dependencies: ["MCH-029"]
|
|
blocks: []
|
|
integrations: ["INT-012"]
|
|
adrs: ["ADR-0010"]
|
|
user_stories:
|
|
- id: "MCH-US-105"
|
|
name: "Login con Google"
|
|
story_points: 5
|
|
- id: "MCH-US-106"
|
|
name: "Login con Apple"
|
|
story_points: 3
|
|
|
|
- id: "MCH-031"
|
|
name: "Auditoria Empresarial"
|
|
status: "planned"
|
|
phase: 7
|
|
priority: "P1"
|
|
story_points: 5
|
|
sprint_target: "7"
|
|
dependencies: []
|
|
blocks: []
|
|
integrations: []
|
|
adrs: ["ADR-0008"]
|
|
user_stories:
|
|
- id: "MCH-US-107"
|
|
name: "Registro de Acciones"
|
|
story_points: 3
|
|
- id: "MCH-US-108"
|
|
name: "Politica de Retencion"
|
|
story_points: 2
|
|
|
|
- id: "MCH-032"
|
|
name: "Feature Flags por Plan"
|
|
status: "planned"
|
|
phase: 7
|
|
priority: "P1"
|
|
story_points: 5
|
|
sprint_target: "8"
|
|
dependencies: ["MCH-029", "MCH-018"]
|
|
blocks: []
|
|
integrations: ["INT-013"]
|
|
adrs: ["ADR-0005"]
|
|
user_stories:
|
|
- id: "MCH-US-109"
|
|
name: "Feature Flags por Plan"
|
|
story_points: 3
|
|
- id: "MCH-US-110"
|
|
name: "Overrides por Tenant"
|
|
story_points: 2
|
|
|
|
# FASE 8: MEJORAS UX
|
|
- id: "MCH-033"
|
|
name: "Onboarding Wizard"
|
|
status: "planned"
|
|
phase: 8
|
|
priority: "P2"
|
|
story_points: 3
|
|
sprint_target: "9"
|
|
dependencies: ["MCH-029"]
|
|
blocks: []
|
|
integrations: []
|
|
adrs: []
|
|
user_stories:
|
|
- id: "MCH-US-111"
|
|
name: "Wizard de Configuracion"
|
|
story_points: 3
|
|
|
|
# ============================================================================
|
|
# INTEGRACIONES
|
|
# ============================================================================
|
|
|
|
integrations:
|
|
- id: "INT-001"
|
|
name: "WhatsApp Meta Business"
|
|
category: "Mensajeria"
|
|
status: "active"
|
|
epics: ["MCH-011", "MCH-015"]
|
|
|
|
- id: "INT-002"
|
|
name: "Stripe"
|
|
category: "Pagos"
|
|
status: "active"
|
|
epics: ["MCH-005", "MCH-018", "MCH-020"]
|
|
|
|
- id: "INT-003"
|
|
name: "OpenRouter LLM"
|
|
category: "AI/LLM"
|
|
status: "active"
|
|
epics: ["MCH-010", "MCH-012", "MCH-013"]
|
|
|
|
- id: "INT-004"
|
|
name: "MercadoPago"
|
|
category: "Pagos"
|
|
status: "pending"
|
|
epics: ["MCH-005"]
|
|
|
|
- id: "INT-005"
|
|
name: "Clip Mexico"
|
|
category: "Pagos"
|
|
status: "mock"
|
|
epics: ["MCH-005"]
|
|
|
|
- id: "INT-006"
|
|
name: "CoDi/SPEI Banxico"
|
|
category: "Pagos"
|
|
status: "mock"
|
|
epics: ["MCH-024"]
|
|
|
|
- id: "INT-007"
|
|
name: "Firebase FCM"
|
|
category: "Notificaciones"
|
|
status: "pending"
|
|
epics: ["MCH-017"]
|
|
|
|
- id: "INT-008"
|
|
name: "Google Cloud Vision"
|
|
category: "AI/ML"
|
|
status: "pending"
|
|
epics: ["MCH-009"]
|
|
|
|
- id: "INT-009"
|
|
name: "OpenAI Whisper"
|
|
category: "AI/ML"
|
|
status: "pending"
|
|
epics: ["MCH-011"]
|
|
|
|
# NUEVAS INTEGRACIONES SAAS
|
|
- id: "INT-010"
|
|
name: "Email Multi-Provider"
|
|
category: "Notificaciones"
|
|
status: "planned"
|
|
epics: ["MCH-029"]
|
|
providers: ["SendGrid", "AWS SES", "SMTP"]
|
|
|
|
- id: "INT-011"
|
|
name: "Storage Cloud"
|
|
category: "Almacenamiento"
|
|
status: "planned"
|
|
epics: ["MCH-029"]
|
|
providers: ["AWS S3", "Cloudflare R2", "MinIO"]
|
|
|
|
- id: "INT-012"
|
|
name: "OAuth Social"
|
|
category: "Autenticacion"
|
|
status: "planned"
|
|
epics: ["MCH-030"]
|
|
providers: ["Google", "Apple"]
|
|
|
|
- id: "INT-013"
|
|
name: "Redis Cache"
|
|
category: "Infraestructura"
|
|
status: "planned"
|
|
epics: ["MCH-029", "MCH-032"]
|
|
|
|
- id: "INT-014"
|
|
name: "Webhooks Outbound"
|
|
category: "Eventos"
|
|
status: "planned"
|
|
epics: ["MCH-029"]
|
|
|
|
# ============================================================================
|
|
# ADRS
|
|
# ============================================================================
|
|
|
|
adrs:
|
|
- id: "ADR-0001"
|
|
title: "Arquitectura Multi-Tenant"
|
|
status: "accepted"
|
|
epics: ["MCH-001"]
|
|
|
|
- id: "ADR-0002"
|
|
title: "WhatsApp First Approach"
|
|
status: "accepted"
|
|
epics: ["MCH-011"]
|
|
|
|
- id: "ADR-0003"
|
|
title: "LLM Agnostic Strategy"
|
|
status: "accepted"
|
|
epics: ["MCH-010", "MCH-012", "MCH-013"]
|
|
|
|
- id: "ADR-0004"
|
|
title: "Notificaciones en Tiempo Real"
|
|
status: "accepted"
|
|
epics: ["MCH-017"]
|
|
|
|
- id: "ADR-0005"
|
|
title: "Feature Flags por Plan"
|
|
status: "accepted"
|
|
epics: ["MCH-032"]
|
|
|
|
- id: "ADR-0006"
|
|
title: "Storage Abstraction"
|
|
status: "accepted"
|
|
epics: ["MCH-029"]
|
|
|
|
- id: "ADR-0007"
|
|
title: "Webhook Retry Strategy"
|
|
status: "accepted"
|
|
epics: ["MCH-029"]
|
|
|
|
- id: "ADR-0008"
|
|
title: "Audit Log Retention"
|
|
status: "accepted"
|
|
epics: ["MCH-031"]
|
|
|
|
- id: "ADR-0009"
|
|
title: "Rate Limiting Strategy"
|
|
status: "accepted"
|
|
epics: ["MCH-029"]
|
|
|
|
- id: "ADR-0010"
|
|
title: "OAuth Social Strategy"
|
|
status: "accepted"
|
|
epics: ["MCH-030"]
|
|
|
|
- id: "ADR-0011"
|
|
title: "Email Multi-Provider"
|
|
status: "accepted"
|
|
epics: ["MCH-029"]
|
|
|
|
# ============================================================================
|
|
# GRAFO DE DEPENDENCIAS
|
|
# ============================================================================
|
|
|
|
dependency_graph:
|
|
MCH-001: ["MCH-002", "MCH-003", "MCH-010"]
|
|
MCH-002: ["MCH-006", "MCH-014", "MCH-018"]
|
|
MCH-003: ["MCH-004", "MCH-007", "MCH-009"]
|
|
MCH-004: ["MCH-005", "MCH-008", "MCH-022"]
|
|
MCH-010: ["MCH-011", "MCH-012", "MCH-013"]
|
|
MCH-011: ["MCH-015", "MCH-017"]
|
|
MCH-014: ["MCH-015"]
|
|
MCH-015: ["MCH-016"]
|
|
MCH-018: ["MCH-019", "MCH-020", "MCH-021", "MCH-023"]
|
|
MCH-029: ["MCH-030", "MCH-032", "MCH-033"]
|
|
|
|
# ============================================================================
|
|
# INVENTARIOS
|
|
# ============================================================================
|
|
|
|
inventories:
|
|
master: "orchestration/inventarios/MASTER_INVENTORY.yml"
|
|
backend: "orchestration/inventarios/BACKEND_INVENTORY.yml"
|
|
frontend: "orchestration/inventarios/FRONTEND_INVENTORY.yml"
|
|
database: "orchestration/inventarios/DATABASE_INVENTORY.yml"
|
|
|
|
# ============================================================================
|
|
# HEALTH
|
|
# ============================================================================
|
|
|
|
health:
|
|
last_validated: "2026-01-10"
|
|
score: 1.0
|
|
issues: []
|
|
saas_integration:
|
|
status: "completed"
|
|
date: "2026-01-10"
|
|
new_epics: 5
|
|
new_integrations: 5
|
|
new_adrs: 8
|
|
story_points: 45
|