Items de deuda
122
en 3 archivos escaneados
↑ +18 vs. baseline ene.
Alta prioridad
3
complejidad crítica
Sin critical severity
Esfuerzo estimado
1.251
horas totales de remediación
≈ 94 sprints al ritmo actual
Impacto velocidad
-40%
caída dev velocity
↓ Reduciría a -12% en 3 sprints
Densidad deuda
40.7
items / 100 líneas
↑ Alta — acción urgente
🥧 Distribución por prioridad
Alta severidad
3 (2.5%)
Media severidad
78 (63.9%)
Baja severidad
41 (33.6%)
📊 Deuda por categoría
💊 Health score (histórico)
87.3
/ 100 — Tendencia: mejorando ↑
81.8
Calidad
72.7
Mantenibilidad
38.2
Riesgo técnico
0
Score actual
🎯 Backlog priorizado — Top 10 items (framework WSJF)
| ID | Tipo | Archivo | Descripción | Severidad | Score WSJF | Esfuerzo (h) | Coste de demora/día | Tags |
|---|---|---|---|---|---|---|---|---|
| DEBT-0001 | alta complejidad | payment_processor.py | Función process_payment con ciclomatic complexity 28 | Alta | 32 h | € 18.4 | blocker-salesforce | |
| DEBT-0002 | alta complejidad | user_service.py | handle_user_auth con 6 bloques if anidados | Alta | 24 h | € 14.2 | blocker-salesforce | |
| DEBT-0003 | alta complejidad | frontend.js | renderLeadCard() — 4 callbacks asíncronos sin manejo de errores | Alta | 18 h | € 11.6 | quick-refactor | |
| DEBT-0004 | rutas hardcoded | payment_processor.py | /var/www/leadflow/uploads hardcoded en línea 47 | Media | 4 h | € 5.8 | quick-win | |
| DEBT-0055 | código duplicado | frontend.js | Bloque duplicado en 2 archivos — línea 99 | Media | 15 h | € 4.8 | quick-win | |
| DEBT-0008 | sin docstring | user_service.py | 22 funciones públicas sin documentación | Media | 11 h | € 3.1 | onboarding-impact | |
| DEBT-0022 | TODO comment | payment_processor.py | TODO: validar webhook Stripe antes de launch — sin ticket | Media | 8 h | € 4.2 | blocker-salesforce | |
| DEBT-0034 | catch vacío | frontend.js | except: pass en llamada a API de scoring | Media | 3 h | € 3.9 | quick-win | |
| DEBT-0041 | función larga | user_service.py | sync_leads_to_crm() — 312 líneas, violación SRP | Media | 20 h | € 2.8 | srp-violation | |
| DEBT-0060 | muchos params | user_service.py | create_lead(name, email, phone, src, score, tags, owner, pipeline) — 8 params | Baja | 6 h | € 1.4 | refactor |
🏃 Plan de sprint — próximas 3 iteraciones
Sprint 1 — Estabilización crítica
20 pts · 74 h
DEBT-0001 proceso pago
DEBT-0002 auth user
DEBT-0022 TODO Stripe
Deuda crítica eliminada
0% → 100%
Sprint 2 — Quick wins alto impacto
20 pts · 40 h
DEBT-0003 frontend async
DEBT-0004 rutas config
DEBT-0034 catch vacío
DEBT-0055 deduplicar
Reducción densidad
40.7 → 32 items/100L
Sprint 3 — Documentación + refactor
20 pts · 37 h
DEBT-0008 docstrings
DEBT-0041 sync_leads split
DEBT-0060 create_lead DTO
Mantenibilidad
72.7 → 85+
📈 Tendencias (ene→feb)
Health score
+3.7 ↑
Densidad deuda
-0.31 ↑
Impacto velocidad
-2.9% ↑
Riesgo técnico
-47.5 ↑
Calidad código
-3.9 ↓
Pronóstico a 30 días
Health score: 91.0/100
Densidad: 0.5 items/archivo
Impacto velocidad: 9.4% (vs. actual -40%)
Densidad: 0.5 items/archivo
Impacto velocidad: 9.4% (vs. actual -40%)
💡 Recomendaciones clave
Bloqueo lanzamiento Salesforce
3 items críticos en payment_processor y user_service deben resolverse antes de la integración enterprise. Riesgo reputacional alto.
68 duplicados = ganancia inmediata
El 55.7% de los items son código duplicado. Un refactor de extracción de helpers reduciría la deuda a la mitad en 1 sprint.
17 TODOs sin ticket de Jira
Convertir TODOs a issues antes del sprint de integraciones. Incluye validación crítica del webhook de Stripe.
Añadir deuda al DoD
Incluir "sin nuevos items high severity" en la Definition of Done para no acumular más deuda de aquí al lanzamiento.