flowchart TB
  inv["① Relever l'état, les retenues<br/>et poser le témoin"]
  sauv["② Sauvegarder<br/>/etc/docker et les définitions"]
  lr["③ Ajouter live-restore par fusion<br/>jq, validate, puis recharger"]
  sauv2["④ Sauvegarder à nouveau<br/>/etc/docker"]
  monte["⑤ Monter à la version nommée<br/>unhold, installer, hold"]
  preuves{"⑥ PID, StartedAt, compteur<br/>et empreinte inchangés ?"}:::accent
  garde["⑦ Garder la version<br/>retenues reposées"]
  retour["Revenir à la version précédente<br/>unhold, --allow-downgrades, hold"]
  limite["Démon en start-limit-hit ?<br/>reset-failed, puis start"]
  inv ==> sauv
  sauv ==> lr
  lr ==> sauv2
  sauv2 ==> monte
  monte ==> preuves
  preuves ==>|oui| garde
  preuves -.->|non| retour
  retour -.-> limite
