Failproof AI está diseñado para que un fallo de aplicación sea visible, en lugar de permitir silenciosamente trabajo riesgoso.
Diagnosticar un bloqueo por fallo cerrado
- Ve a Admin → enforcement y abre la máquina.
- Revisa su último registro de entrada, el despliegue asignado y el despliegue reportado.
- Ve a Observe → policy y abre la sesión de la decisión denegada.
- Confirma si el motivo reporta inaccesibilidad del daemon, desajuste de versión o la política en sí.
Volver a ejecutar failproofai config actualiza y reinicia el daemon tras una actualización del paquete.
En una máquina configurada para usar failproofaid, el daemon es el único evaluador. Si no es accesible o su versión de protocolo no coincide con la CLI, la evaluación del hook falla en modo cerrado. La acción se deniega con un motivo que indica al operador que verifique o actualice el daemon.
Antes de configurar el daemon, los hooks evalúan las políticas en proceso. Una vez que la configuración del daemon queda registrada, Failproof AI no recurre silenciosamente a un segundo evaluador cuando el daemon falla.
Responder a una decisión de fallo cerrado
- Ejecuta
failproofai config --status.
- Si las versiones difieren, vuelve a ejecutar
failproofai config después de actualizar el paquete.
- Si el daemon no es accesible, inspecciona el estado de su servicio y los logs locales.
- Reanuda el trabajo del agente solo después de confirmar que la ruta de evaluación de políticas conocida está en buen estado.
No reintentes repetidamente la acción bloqueada. Una respuesta de fallo cerrado significa que el sistema no pudo establecer que la acción era segura.
Un pack no carga
Una máquina a la que se le indicó aplicar un pack, y no puede ejecutarlo, deniega en lugar de continuar silenciosamente. El disparador es una expectativa registrada, nunca una vacía: una máquina sin packs instalados permanece en silencio, mientras que un pack que está declarado y no se puede resolver — o que registra menos de lo que declara su manifiesto — deniega.
La denegación es acotada, a diferencia de un daemon inaccesible. Un daemon que no puede alcanzarse significa que no se realizó ninguna evaluación, por lo que nada puede considerarse seguro. Un pack que no carga tiene un conjunto enumerable de guardas faltantes, ya que cada política declarada lleva su propio match — por lo tanto, deniega solo los eventos y herramientas que esas políticas cubrían, y todo lo demás continúa.
No se activa para:
- un pack de
observe, que evalúa y descarta por construcción
- políticas que nunca tomaste, o que desactivaste explícitamente
- un pack que el cargador nunca recibió, donde “sin registros” no se puede distinguir de una omisión deliberada
- una pausa de sesión activa
- un tiempo de espera de carga, que es transitorio — un momento de disco lento no debe denegar hasta que intervenga un humano
UserPromptSubmit instructs en lugar de denegar, independientemente de lo que declarara la política faltante. Una denegación general lo incluiría y te dejaría sin acceso al agente que podría solucionar el problema.
Qué hacer
Nombra cualquier pack instalado que no cargue, indica el motivo y termina con código distinto de cero. Luego reinstálalo (failproofai pack add <source>) o elimínalo (failproofai pack remove <publisher/name>) — eliminarlo retira la expectativa, y la denegación cesa con ella.