🔍

Análisis de Consistencia — speckit-analyze

Proyecto: vion-core / feature/auth-redesign  ·  Solo lectura · 16 Jun 2026 · 11:42

3 inconsistencias
Cobertura
87%
Requisitos trazados
Críticos
2
Bloquean implementación
Advertencias
5
Ambigüedades detectadas
Artefactos
3
spec · plan · tasks

🚨 Inconsistencias Críticas

2 críticos
1
Endpoint de token difiere entre spec y plan
spec.md §3.2 define POST /api/v2/auth/token pero plan.md §Implementation referencia POST /api/v1/auth/refresh. Las tareas derivan del plan, por lo que implementarán la ruta errónea.
spec.md §3.2 plan.md §5.1 tasks.md T-14, T-15
CRÍTICO
2
Campo refresh_token ausente en schema de tareas
spec.md §4.1 exige persistir refresh_token en almacenamiento seguro (Keychain/EncryptedSharedPreferences). plan.md lo menciona pero ninguna tarea del backlog lo implementa explícitamente.
spec.md §4.1 plan.md §6.3 tasks.md — ⚠️ ausente
CRÍTICO

⚠️ Advertencias y Ambigüedades

5 items
3
Timeout de sesión no especificado cuantitativamente
spec.md §2.4 indica "la sesión debe expirar tras inactividad" sin definir el intervalo. plan.md asume 30 min sin respaldo en spec. Puede generar deuda de requisito.
spec.md §2.4 plan.md §4.2
AMBIGUO
4
Tarea T-08 duplicada como T-22
Ambas describen "Implementar middleware de validación JWT". T-22 parece un clon con redacción ligeramente distinta. Riesgo de doble trabajo o conflicto de merge.
tasks.md T-08 tasks.md T-22
DUPLICADO
5
Criterios de aceptación infraespecificados en T-17
T-17 "Tests de integración OAuth" carece de escenarios concretos (happy path, token expirado, usuario deshabilitado). Sin criterios medibles no puede darse por completa.
tasks.md T-17
INFRA-SPEC

📋 Plan de Remediación Propuesto Pendiente aprobación

P1
Reconciliar endpoint en spec.md o plan.md
Confirmar con el equipo cuál es la versión de la API correcta y actualizar el artefacto que contenga el error.
P1
Crear tarea explícita para persistencia de refresh_token
Añadir T-31 "Almacenamiento seguro de refresh_token (Keychain/ESP)" con criterios de aceptación y asignarla al sprint actual.
P2
Definir valor de timeout en spec.md §2.4
Añadir valor concreto (propuesta: 30 min inactividad, 8 h absoluto) y obtener sign-off del Product Owner.
P2
Eliminar tarea duplicada T-22
Fusionar cualquier contenido diferencial de T-22 en T-08 y cerrar T-22 como duplicado.
P3
Añadir escenarios de aceptación a T-17
Incluir al menos: happy path OAuth, token expirado devuelve 401, usuario deshabilitado rechaza login.