Navegación Bilingüe: English · Español (este documento)
Estado del Documento: Borrador
Tipo: Plan de Implementación
Satélite: Evolith Tracker
Upstream: Evolith Core
Fecha: 2026-06-07
Autor: Architect Agent (BMAD)
| Fase | Enfoque | Duración | Entregables Clave |
|---|---|---|---|
| Fase 0 | Análisis y Fundación | M (2 semanas) | Repositorio, CI/CD, primitivas de dominio compartidas, esquemas PostgreSQL, esqueleto MCP Server |
| Fase 1 | Core Sync + Auth + CLI Foundation | M (2 semanas) | Adaptador SDK de Core, adaptador auth UMS, guards de permisos, fundación CLI (evolith init, auth, --format=json), bootstrap MCP Server |
| Fase 2 | Discovery + Design + CLI | M (2 semanas) | Módulos Initiative, Backlog, Blueprint, Contract, ADR, comandos CLI de Discovery |
| Fase 3 | Construction + QA + CLI | M (2 semanas) | Cycle, Story, PeerReview, TestCycle, Execution, Defect, comandos CLI de Design |
| Fase 4 | Release + Governance + CLI | M (2 semanas) | ReleasePackage, Deployment, SatelliteProduct, SDLCExecution, comandos CLI de Construction |
| Fase 5 | QA + MCP Tool Suite | M (2 semanas) | Finalización módulo QA, comandos CLI de QA, suite final de herramientas MCP, SDK de agentes |
| Fase 6 | Métricas + Scorecards + CLI | M (2 semanas) | Cómputo DORA/SPACE, alertas de drift, dashboards, comandos CLI de Release |
| Fase 7 | Integraciones + Gate CLI | M (2 semanas) | ACL GitHub, ACL Jira, handlers de webhooks, comandos CLI de Gate y Agentes, suite MCP completa |
| Fase 8 | Endurecimiento + Release | M (2 semanas) | Auditoría de seguridad, tests E2E, charts Helm, preparación para producción |
Duración Total Estimada: ~18.5 semanas (~4.6 meses)
| Módulo | Stories | Puntos | Complejidad |
|---|---|---|---|
| Discovery | 12 | 45 | Media |
| Design | 10 | 34 | Media |
| Construction | 14 | 48 | Alta |
| QA | 11 | 35 | Media |
| Release | 9 | 27 | Media |
| Governance | 9 | 25 | Media |
| Artifacts | 6 | 16 | Baja |
| Metrics | 5 | 14 | Baja |
| Integration | 8 | 26 | Alta |
| Infrastructure | 8 | 26 | Media |
| CLI + MCP | 10 | 34 | Alta |
| Total | 103 | 330 | — |
Establecer el monorepo, pipeline CI/CD, primitivas de dominio compartidas e infraestructura de esquemas PostgreSQL.
- Workspace monorepo (npm workspaces o Nx)
- Bootstrap de app API NestJS con TypeScript strict mode
- App Web React con Vite + TanStack Query + Zustand
-
libs/domaincompartido con clases base (AggregateRoot,BaseDomainEvent,Result) - 10 esquemas PostgreSQL creados con migraciones DDL
- Políticas RLS configuradas para multi-tenancy
- Pipeline CI GitHub Actions (lint, typecheck, test)
- Docker Compose para desarrollo local
- Skeleton de chart Helm para deployment en Kubernetes
- Paquete esqueleto MCP Server (
@evolith/tracker-mcpscaffold)
- ORM: TypeORM (según ADR-0043)
- Versionado de API: Prefijo URI (
/api/v1/) - Validación: class-validator (presentación), zod (aplicación)
Integrar con Evolith Core (rulesets, definiciones de artefactos) y UMS (validación JWT, resolución de permisos). Establecer la fundación CLI y el bootstrap del MCP Server para que los agentes puedan interactuar desde la Fase 1.
-
CoreIntegrationServicecon cliente REST, caché, tracking de versión -
CoreCacheServicecon Redis + fallback en memoria -
JwksServicepara verificación de firma JWT -
UmsSecurityAdaptercon obtención de authorization graph -
PermissionMapper(UMS → permisos canónicos de Tracker) -
JwtAuthGuard+TrackerPermissionGuardpara NestJS - Provider de contexto de permisos para React
- Store de auth con lógica de refresh de token
- Paquete CLI
evolithskeleton (evolith init, auth login, flag global--format=json) - Bootstrap MCP Server con herramientas básicas
@evolith/tracker-mcp
- Requiere URL y credenciales de API de Core
- Requiere acceso a endpoint JWKS de UMS
Implementar bounded contexts de Gate 1 (Discovery) y Gate 2 (Design) con sus comandos CLI.
- Aggregate
Initiativecon create, approve, reject, generateBacklog - Aggregate
Backlogcon ordenamiento de stories - Aggregate
Epiccon referencias externas - Aggregate
UserStorycon prioridad, estimación - Comandos y queries CQRS de Discovery
- Formulario Discovery Canvas (React)
- Aggregate
TechnicalBlueprintcon flujo de aprobación - Aggregate
TechnicalContractcon validación de contenido - Aggregate
ADRcon ciclo de vida de estado - Aggregate
DataSchema - Comandos y queries CQRS de Design
- Tablero de revisión de Design (React)
- Comandos CLI de Discovery (
evolith discovery submit,evolith backlog list) - Comandos CLI de Design (
evolith blueprint create,evolith adr list)
- Evaluador de Gate 1 con requirement checklist
- Evaluador de Gate 2 con verificación de cumplimiento ADR
- Lógica de avance de fase en
SDLCExecution
Implementar bounded contexts de Gate 3 (Construction) y Gate 4 (QA) con sus comandos CLI.
- Aggregate
ImplementationCyclecon gestión de sprint - Aggregate
TechnicalStorycon registro de tiempo - Aggregate
PeerReviewcon integración de webhook de GitHub - Servicio de detección de drift (
DriftDetectionService) - Tablero de Construction con overlay de drift index (React)
- Aggregate
TestCyclecon cálculo de tasa de aprobación - Aggregate
TestExecutioncon registro de resultados - Aggregate
Defectcon ciclo de vida de severidad/prioridad - Adaptador ACL
.harness(pendiente inspección de API) - Centro de Comando QA (React)
- Comandos CLI de Construction (
evolith task list,evolith drift status) - Comandos CLI de QA (
evolith test run,evolith defect list)
- Evaluador de Gate 3 con peer review + verificación DoD
- Evaluador de Gate 4 con tasa de aprobación de tests + umbral de defectos
Implementar contextos de Gate 5 (Release) y Governance con sus comandos CLI.
- Aggregate
ReleasePackagecon gestión de versiones - Aggregate
DeploymentRecord(independiente para actualizaciones async de CI/CD) - Entity
Environment - Motor de flujo Re-Do
- Calendario planificador de Release (React)
- Aggregate
SatelliteProductpara tracking de tenant - Aggregate
SDLCExecutionpara gestión de estado de fases - Aggregate
PhaseGateStatecon tracking de criterios - Aggregate
ExceptionRequestpara manejo de excepciones de gate - Vista de Pipeline (React) — la pantalla principal
- Comandos CLI de Release (
evolith release plan,evolith deployment status) - Comandos CLI de Governance (
evolith gate status,evolith exception list)
Completar el módulo QA y finalizar la suite de herramientas MCP. Los comandos CLI de QA se entregan con el módulo QA, y las herramientas MCP restantes se terminan.
- Comandos CLI de QA (
evolith qa status,evolith qa run,evolith qa report) - Finalización del módulo QA según entregables de Fase 3 QA
- Suite completa de herramientas
@evolith/tracker-mcp - Definiciones: initiative, design, construction, qa, release, gate
- Endpoint de polling/sampling MCP para domain events
- SDK de agentes para integración con agentes
Implementar métricas DORA/SPACE, alertas de drift, dashboards y sus comandos CLI.
- Aggregate
ScorecardDefinition - Aggregate
MetricSnapshotcon valores computados - Aggregate
DriftAlertcon tracking de resolución - Servicio de cómputo de métricas (deployment frequency, lead time, etc.)
- Dashboard de Scorecard (React)
- Sistema de notificación de alertas de drift
- Comandos CLI de Métricas (
evolith metrics scorecard,evolith drift alerts)
Implementar adaptadores ACL para sistemas externos (GitHub, Jira, Azure DevOps). Finalizar comandos CLI de Gate y Agentes, completar la suite de herramientas MCP.
- Aggregate
IntegrationEndpointpara configuración de sistema externo - Aggregate
SyncRecordpara historial de sincronización - ACL de GitHub (eventos PR → actualizaciones de PeerReview)
- ACL de Jira (issues → importación de Initiatives)
- Handler de webhooks para eventos de sistemas externos
- Endpoint de registro de checkpoint externo (US-INT-008)
- Sincronización outbound para gestión de defectos
- Comandos CLI de Gate (
evolith gate evaluate,evolith gate approve) - Comandos CLI de Agentes (
evolith agent status,evolith agent assign) - Finalización de MCP Tool Suite (todas las definiciones, polling/sampling, SDK de agente)
Preparación para producción, auditoría de seguridad y preparación de release.
- Auditoría de seguridad (revisión OWASP Top 10, pruebas de penetración)
- Tests E2E (Playwright) para journeys críticos del usuario
- Pruebas de rendimiento (k6) para manejo de carga de API
- Chart Helm finalizado con valores de producción
- Observabilidad (trazas OpenTelemetry, métricas, logs)
- Documentación de runbook de producción
- Definiciones SLO/SLA
| Riesgo | Impacto | Probabilidad | Mitigación |
|---|---|---|---|
| Esquema de Authorization Graph de UMS difiere del diseño | Alto | Media | Prototipar integración temprano; fallback a claims JWT |
| SDK de Core no disponible cuando Fase 1 inicia | Medio | Media | Implementar cliente REST con tipos manuales como fallback |
API de .harness desconocida |
Alto | Alta | Elevar brecha a Core inmediatamente; diseñar adaptador abstracto |
| Rendimiento de RLS de PostgreSQL a escala | Medio | Baja | Probar con 1000+ tenants; optimizar índices |
| Cambios en protocolo de agentes | Medio | Baja | Versionar herramientas MCP; implementar degradación elegante |
| Dependencia | Impacto | Propietario | Estado |
|---|---|---|---|
| API REST de Evolith Core | Todas las fases | Equipo Core | No disponible |
| Endpoint JWKS de UMS | Fase 1 | Equipo UMS | No confirmado |
| API de Authorization Graph de UMS | Fase 1 | Equipo UMS | No inspeccionado |
| SDK de Core (si está disponible) | Fase 1 | Equipo Core | No confirmado |
- Tracker Target Architecture — TAD primario
- NestJS Backend Design — Estructura de módulos
- React Frontend Design — Arquitectura de UI
- PostgreSQL Data Design — Diseño de esquemas
- UMS Authentication Integration — Diseño de auth
- Core Integration Design — Integración con Core