Hecho
1. Verificación completa
Ejecuta el nivel completo ahora: verify-full si está presente, de lo contrario verify. Cita la línea más corta y concluyente.
- Rojo → aún no estás aquí. Vuelve al bucle.
- No existe un comando
verify→ usa/ready; no afirmes que está hecho. - Debe haberse ejecutado realmente ahora, no antes en la sesión.
2. Revisión escéptica del diff
Vuelve a leer el diff final como un revisor hostil. Comprueba:
- Casos límite: vacíos, cero, Unicode, fronteras, concurrencia.
- Caminos de error: fallos, archivos faltantes, red caída, limpieza.
- Contratos cambiados: APIs, formatos, esquemas, configuración, consumidores anteriores.
- Contenido accidental: archivos no relacionados, código de depuración, secretos, dependencias sueltas.
- Honestidad de las pruebas: ¿las pruebas modificadas fallarían si la implementación se revierte?
Cuando corresponda, ejecuta:
<this-skill-dir>/scripts/revert-probe.sh "<verify-cmd>". Las comprobaciones debilitadas son hallazgos. Corrige los hallazgos y repite la verificación completa.
3. Revisión independiente orientada al riesgo
Elige el enfoque:
security: autenticación, permisos, entrada, rutas, comandos, secretos, endpoints.contract: API/CLI pública, esquema, configuración, migración, consumidores.general: dinero, concurrencia, recursos, o un diff amplio e incierto.
Prefiere el comando de revisión incorporado del arnés; de lo contrario, utiliza un agente revisor. Si aplican tanto seguridad como contrato, solicita dos pases independientes centrados. El revisor lee los invocadores y consumidores.
Corrige y vuelve a verificar cada blocker o major, a menos que el usuario acepte explícitamente el riesgo nombrado. Un minor puede diferirse solo cuando se informa. Un diff pequeño y bien comprendido sin riesgo dirigido puede detenerse después del pase escéptico.
4. Verificación del alcance
Vuelve a leer la solicitud original. Cada elemento está entregado, o se menciona como omitido con una razón. Nunca omitas alcance en silencio. Una tarea del bus que hayas reclamado mediante /lucia-bus debe estar completed o blocked, con su resultado publicado, a menos que el usuario la haya cancelado.
5. Lecciones
Para un callejón sin salida, un riesgo oculto o un enfoque refutado, ejecuta /retro. Si es necesario transferir un estado incompleto, usa /lucia-relay en su lugar.
6. Informe
Hecho: <lo que cambió, una línea>
Prueba: <comando de verificación> → <línea concluyente>
No cubierto: <brecha de verificación>
Omitido: <alcance omitido + razón, o nada>
Sin ambigüedades: informa "hecho" solo después de que cada paso pase. La salida de la máquina refleja los mismos hechos; la salida bloqueada usa "status": "blocked" y su línea fallida.
{
"status": "done",
"verify": {"command": "./test.sh", "exit_code": 0, "decisive_line": "PASS todas las comprobaciones en verde"},
"not_covered": "<brecha de verificación>",
"left_out": "nada"
}