platform-marketing-content/docs/05-user-stories/EPIC-002-CRM.md
rckrdmrd 74b5ed7f38 feat: Complete documentation update and orchestration configuration
- Update vision, architecture and technical documentation
- Update module definitions (PMC-001 to PMC-008)
- Update requirements documentation
- Add CONTEXT-MAP.yml and ENVIRONMENT-INVENTORY.yml
- Add orchestration guidelines and references

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 05:38:31 -06:00

250 lines
6.1 KiB
Markdown

---
id: "EPIC-002"
title: "Gestion de CRM"
type: "Epic"
status: "Done"
priority: "Alta"
project: "platform_marketing_content"
phase: 1
story_points: 60
user_stories_count: 12
created_date: "2025-12-08"
updated_date: "2026-01-04"
---
# EPIC-002: Gestión de CRM
**Versión:** 1.0.0
**Fecha:** 2025-12-08
**Fase:** 1 - MVP Core
---
## Descripción
Esta épica cubre la gestión de clientes, contactos, marcas y productos del CRM integrado.
---
## User Stories
### US-002-001: Crear Cliente
**Como** miembro del equipo creativo
**Quiero** registrar un nuevo cliente
**Para** organizar el trabajo por cliente
**Criterios de Aceptación:**
- [ ] Formulario con campos: nombre, nombre legal, industria, tamaño, website
- [ ] Campo de notas para información adicional
- [ ] Cliente se crea con status "prospect"
- [ ] Redirección a ficha del cliente después de crear
**Prioridad:** Must Have
---
### US-002-002: Ver Ficha de Cliente
**Como** miembro del equipo
**Quiero** ver toda la información de un cliente en un solo lugar
**Para** tener contexto completo al trabajar
**Criterios de Aceptación:**
- [ ] Vista con tabs: Info, Contactos, Marcas, Proyectos
- [ ] Resumen de actividad reciente
- [ ] Acciones rápidas: nueva marca, nuevo proyecto, nuevo contacto
- [ ] Datos editables inline o en modal
**Prioridad:** Must Have
---
### US-002-003: Listar y Buscar Clientes
**Como** miembro del equipo
**Quiero** ver todos los clientes y buscar uno específico
**Para** encontrar rápidamente al cliente que necesito
**Criterios de Aceptación:**
- [ ] Lista con nombre, industria, status, fecha de creación
- [ ] Filtros por status e industria
- [ ] Búsqueda por nombre
- [ ] Ordenamiento por nombre o fecha
- [ ] Paginación funcional
**Prioridad:** Must Have
---
### US-002-004: Crear Contacto de Cliente
**Como** miembro del equipo
**Quiero** agregar contactos a un cliente
**Para** saber con quién comunicarme
**Criterios de Aceptación:**
- [ ] Formulario con: nombre, apellido, email, teléfono, cargo
- [ ] Checkbox para marcar como contacto primario
- [ ] Contacto asociado al cliente seleccionado
- [ ] Validación de formato de email
**Prioridad:** Must Have
---
### US-002-005: Crear Marca de Cliente
**Como** creativo
**Quiero** crear marcas asociadas a un cliente
**Para** organizar el contenido por marca
**Criterios de Aceptación:**
- [ ] Formulario con nombre y descripción
- [ ] Marca asociada al cliente seleccionado
- [ ] Opción de configurar identidad visual después de crear
**Prioridad:** Must Have
---
### US-002-006: Configurar Identidad Visual de Marca
**Como** creativo
**Quiero** definir la identidad visual de una marca
**Para** que el contenido generado sea consistente
**Criterios de Aceptación:**
- [ ] Subir logo (drag & drop o file picker)
- [ ] Selector de color para color primario
- [ ] Agregar colores secundarios
- [ ] Campo para tono de voz (dropdown + texto libre)
- [ ] Lista de keywords positivas
- [ ] Lista de palabras prohibidas
- [ ] Campo de estilo visual preferido
- [ ] Preview visual de la paleta de colores
**Prioridad:** Must Have
---
### US-002-007: Crear Producto de Marca
**Como** creativo
**Quiero** agregar productos a una marca
**Para** generar contenido específico por producto
**Criterios de Aceptación:**
- [ ] Formulario con: nombre, SKU, descripción, categoría
- [ ] Producto asociado a la marca seleccionada
- [ ] Opción de subir imágenes de referencia
**Prioridad:** Must Have
---
### US-002-008: Subir Imágenes de Referencia de Producto
**Como** creativo
**Quiero** subir fotos del producto real
**Para** que la IA genere contenido más preciso
**Criterios de Aceptación:**
- [ ] Upload múltiple de imágenes
- [ ] Drag & drop soportado
- [ ] Formatos: JPG, PNG, WebP
- [ ] Tamaño máximo 10MB por imagen
- [ ] Preview de imágenes subidas
- [ ] Posibilidad de eliminar imágenes
**Prioridad:** Must Have
---
### US-002-009: Generar Contenido desde Producto
**Como** creativo
**Quiero** lanzar generación de contenido desde la ficha de producto
**Para** crear assets rápidamente
**Criterios de Aceptación:**
- [ ] Botón "Generar contenido" visible en ficha de producto
- [ ] Modal para seleccionar workflow y opciones
- [ ] Datos del producto cargados automáticamente
- [ ] Identidad de marca aplicada automáticamente
- [ ] Feedback de que el job fue creado
- [ ] Link para ir a ver el progreso
**Prioridad:** Must Have
---
### US-002-010: Asociar LoRA a Marca
**Como** creativo
**Quiero** vincular modelos LoRA entrenados con una marca
**Para** que se usen automáticamente al generar contenido
**Criterios de Aceptación:**
- [ ] Sección "Modelos IA" en configuración de marca
- [ ] Lista de LoRAs disponibles del tenant
- [ ] Checkbox para seleccionar cuáles usar
- [ ] LoRA se aplica automáticamente en generación
- [ ] Indicador visual de que la marca tiene LoRAs configurados
**Prioridad:** Should Have
---
### US-002-011: Crear Oportunidad
**Como** analista CRM
**Quiero** registrar oportunidades de negocio
**Para** hacer seguimiento del pipeline de ventas
**Criterios de Aceptación:**
- [ ] Formulario con: nombre, cliente, valor, moneda, fecha esperada
- [ ] Stage inicial "lead"
- [ ] Asociar contacto opcional
- [ ] Campo de notas
**Prioridad:** Should Have
---
### US-002-012: Vista Kanban de Oportunidades
**Como** analista CRM
**Quiero** ver las oportunidades en un tablero Kanban
**Para** gestionar el pipeline visualmente
**Criterios de Aceptación:**
- [ ] Columnas por stage (lead, qualified, proposal, negotiation, won, lost)
- [ ] Cards con nombre, cliente, valor
- [ ] Drag & drop para mover entre stages
- [ ] Al mover a "won" o "lost", solicitar confirmación/motivo
- [ ] Filtros por cliente y fecha
- [ ] Totales por columna
**Prioridad:** Should Have
---
## Notas Técnicas
- Implementar RLS para aislamiento de datos
- Identidad visual almacenada como JSONB
- Imágenes de referencia en S3 con path estructurado
- Considerar cache de identidad de marca para generación
---
## Dependencias
- EPIC-001: Autenticación y usuarios
---
**Documento generado por:** Requirements-Analyst
**Fecha:** 2025-12-08