/bi-kickoff production flow
Flujo de producción: proyecto nuevo, Codex-first, Git obligatorio, modelo demo por MCP, eliminación del ejemplo de ventas y validación persistida antes de declarar éxito.
flowchart TD
A["Usuario invoca /bi-kickoff"] --> B{"Proyecto nuevo?"}
B -->|"No / PBIP existente"| Ref["Derivar a /bi-refactor"]
B -->|"Si / carpeta vacia"| C["Primer mensaje simple
pregunta nombre"]
C --> D["Scaffold desde base-template
sin narrar checks"]
D --> E{"Existe Git?"}
E -->|"No"| F["git init"]
E -->|"Si"| G["Commit scaffold inicial"]
F --> G
G --> H["Agente abre PBIP en Desktop"]
H --> I["Aclarar: aún es plantilla
siguiente mensaje genera modelo"]
I --> J["Conectar MCP"]
J --> K{"MCP puede refrescar?"}
K -->|"Si"| L["Primer refresh automático"]
K -->|"No"| M["Pedir Inicio > Actualizar
y esperar confirmación"]
L --> N["Onboarding negocio
una pregunta por vez"]
M --> N
N --> O["Métricas, dimensiones y tiempo
con opciones numeradas"]
O --> P{"Mapeo de datos ahora?"}
P -->|"No"| Q["Pendiente para /bi-powerquery"]
P -->|"Si"| R["docs/mapeo-de-datos.md
sin conectar fuentes reales"]
Q --> S["AGENTS.md + ROADMAP.md + LEARNINGS.md
Codex-only"]
R --> S
S --> T["Proponer modelo demo
cada fila representa algo medible"]
T --> U{"Agregamos o quitamos algo?"}
U -->|"Cambios"| T
U -->|"Aprobado"| Gen["Crear modelo por MCP"]
Gen --> Model["Crear facts, dims, relaciones, métricas, dispatchers"]
Model --> Clean["Eliminar star schema demo de Ventas
si el dominio no es ventas"]
Clean --> V{"Verificación MCP pasa?"}
V -->|"No"| Gen
V -->|"Si"| W["Usuario guarda y cierra Desktop"]
W --> X{"TMDL persistido valida?"}
X -->|"No"| W
X -->|"Si"| Y{"Visual bindings validados?"}
Y -->|"Rebind tool"| RB["Rebind seguro
backup + dry-run + validación"]
Y -->|"Manual"| MH["Handoff manual explícito
reporte pendiente"]
RB --> Cmt["Actualizar ROADMAP/docs
commit modelo generado"]
MH --> Cmt
Cmt --> Z["Handoff: report rebind, authoring o /bi-powerquery"]
Codex-only por defecto: sin CLAUDE.md, GEMINI.md, .github ni .kilo.
Git obligatorio: commit del scaffold antes de tocar el modelo.
El agente abre el PBIP y ejecuta el primer refresh, o pide Inicio > Actualizar si MCP no puede.
El usuario ve "cada fila representa..." en lugar de jerga como grano.
Se preservan nombres técnicos bindeados al reporte; si no alcanza, hay gate de rebind visual.
REPORT TOPOLOGY LOCK: no borrar, renombrar, mover o recrear páginas, visuales, layouts mobile o bookmarks.
El ejemplo de ventas se elimina en proyectos que no son de ventas.
Nada queda completo hasta guardar, cerrar Desktop, validar TMDL y resolver el estado visual.