Failproof AI è progettato in modo che un errore di enforcement sia visibile anziché permettere silenziosamente lavori rischiosi.
Diagnosticare un blocco failure-closed
- Vai a Admin → enforcement e apri la macchina.
- Controlla il suo ultimo check-in, deployment assegnato e deployment segnalato.
- Vai a Observe → policy e apri la sessione della decisione negata.
- Conferma se il motivo riporta raggiungibilità del daemon, version skew o la policy stessa.
Rieseguire failproofai config aggiorna e riavvia il daemon dopo un aggiornamento del package.
Su una macchina configurata per usare failproofaid, il daemon è l’unico valutatore. Se non è raggiungibile o la sua versione di protocollo non corrisponde a quella della CLI, la valutazione dell’hook fallisce in modalità closed. L’azione viene negata con un motivo che guida l’operatore a verificare o aggiornare il daemon.
Prima della configurazione del daemon, gli hook valutano le policy in process. Una volta registrata la configurazione del daemon, Failproof AI non ritorna silenziosamente a un secondo valutatore quando il daemon fallisce.
Rispondere a una decisione failure-closed
- Esegui
failproofai config --status.
- Se le versioni differiscono, riesegui
failproofai config dopo aver aggiornato il package.
- Se il daemon non è raggiungibile, ispeziona lo stato del suo servizio e i log locali.
- Riprendi il lavoro dell’agent solo dopo aver verificato che un percorso di valutazione della policy noto sia salubre.
Non ritentare ripetutamente l’azione bloccata. Una risposta failure-closed significa che il sistema non ha potuto stabilire che l’azione fosse sicura.
Un pack non si carica
Una macchina a cui è stato detto di enforcement di un pack, e che non può eseguirlo, nega anziché continuare silenziosamente. Il trigger è un’aspettativa registrata, mai vuota: una macchina senza pack installati è silenziosa, mentre un pack dichiarato che non si risolve — o che registra meno di quanto dichiara il suo manifest — nega.
Il deny è ristretto, diversamente da un daemon non raggiungibile. Un daemon che non può essere raggiunto significa che nessuna valutazione è accaduta, quindi nulla può essere conosciuto come sicuro. Un pack che non si carica ha un insieme enumerabile di guard mancanti, perché ogni policy dichiarata porta il suo proprio match — quindi nega solo gli eventi e gli strumenti che quelle policy coprivano, e tutto il resto procede.
Non si attiva per:
- un pack di tipo
observe, che valuta e scarta per costruzione
- policy che non hai mai preso, o esplicitamente disattivato
- un pack che il loader non ha mai ricevuto, dove “nessuna registrazione” non può essere distinto da un skip deliberato
- una pausa di sessione attiva
- un timeout di caricamento, che è transitorio — un momento di disco lento non deve negare finché non interviene un umano
UserPromptSubmit istruisce anziché negare, indipendentemente da ciò che la policy mancante ha dichiarato. Un deny universale lo includerebbe e ti bloccherebbe fuori dall’agent che potrebbe risolvere il problema.
Cosa fare
Nomina qualsiasi pack installato che non si caricherà, dice il motivo ed esce con codice non-zero. Quindi reinstallalo (failproofai pack add <source>) o rimuovilo (failproofai pack remove <publisher/name>) — rimuoverlo ritira l’aspettativa, e il deny si interrompe con essa.