Exploitation OpenClaw 24 avril 2026

2026 Mises à jour OpenClaw, épinglage de version et rollback launchctl sur une Mac mini ProxyMac louée

Équipe d’ingénierie ProxyMac 24 avril 2026 ~11 min de lecture

Les passerelles d’automatisation vieillissent vite : un bump semver mineur peut retourner les défauts TLS, renommer des drapeaux CLI ou resserrer des chemins de bac à sable que vos LaunchAgents tenaient pour stables. Sur une Mac mini ProxyMac à Hong Kong, au Japon, en Corée du Sud, à Singapour ou aux États-Unis, le contrat opérationnel est simple : redémarrages prévisibles, rollbacks auditables et sondes de santé avant que les clients ne remarquent la dérive. Ce guide indique qui doit garder la barrière des upgrades (les propriétaires plateforme, pas chaque équipe fonctionnelle), une matrice pré-upgrade avec seuils concrets (disque libre ≥20 %, ratio 5xx webhooks 24 h <0,5 %), des rituels de snapshot + sommes de contrôle, la danse ordonnée launchctl bootout / kickstart -k alignée sur la récupération passerelle, une table comparant quatre stratégies de rollback, des hooks post-upgrade vers les sondes de santé et le logging JSONL, plus une FAQ sur les upgrades sans surveillance. Traitez le GitOps de configuration et le dépannage de déploiement comme lectures obligatoires dans la même fenêtre de changement.

Épingler les versions, réduire le blast radius, refuser « latest » en production

Étiqueter chaque plist de production avec le chemin binaire exact ou le digest de conteneur que la conformité peut citer. « Toujours tirer main » va sur un portable de dev ; sur du métal loué qui exécute des règlements, du routage de modèles ou de l’ETL nocturne, c’est un générateur d’incidents. Conserver une mini de staging dans la même région que la production pour aligner la latence TLS—les tarifs listent les cinq régions hébergeant des minis de classe M4.

  • Lockfiles sémantiques à côté du YAML OpenClaw pour que les diffs montrent l’intention.
  • Respecter ThrottleInterval : ne jamais enchaîner les upgrades plus vite que launchd ne laisse vider les workers.
  • Rotation des secrets découplée des bumps binaires—calendrier propre.

Matrice avant mise à niveau

SignalSeuil vertSi rouge
Espace APFS libre≥20 % sur le volume systèmeArchiver le JSONL, purger les caches avant de toucher aux binaires
Ratio 5xx webhooks (24 h glissantes)<0,5 %Réparer l’amont d’abord—les upgrades masquent la cause racine
Dernier code de sortie du LaunchAgent0 sur les trois derniers redémarragesLire les boucles de crash dans Unified Logging
Dérive d’horloge<2 s vs NTPAprès upgrade, les validateurs JWT/HMAC échouent mystérieusement

Snapshotter configuration, files et caches modèle avec sommes de contrôle

Copier d’abord l’arbre complet ~/Library/Application Support/OpenClaw (noms variables selon l’install) vers un tar daté sur le même volume—les copies SMB transfrontalières pendant un incident sont la voie des écritures partielles. Exécuter shasum -a 256 sur le tar et stocker le hach dans le ticket. Aligner la rétention sur le guide logging pour que le juridique réponde « qu’avons-nous conservé ? » sans sprint forensique.

Git n’est pas une base de données : les shards de modèles binaires et les grosses files SQLite vont dans l’objet stockage ou des snapshots ZFS, pas dans git push. Suivre leurs versions en métadonnées à côté du tag Git.

Séquence launchctl : bootout, attente, bootstrap, kickstart

macOS moderne récompense la patience. Après déchargement de l’agent, attendre que launchctl print user/$(id -u)/com.openclaw.gateway n’affiche plus de PID, installer la nouvelle build dans un répertoire versionné et symlinker current. Ensuite seulement launchctl bootstrap et launchctl kickstart -k gui/$(id -u)/com.openclaw.gateway. Sauter l’attente laisse des workers orphelins sur d’anciennes régions de mémoire partagée—la classe de bugs que le dépannage documente comme « ça marche jusqu’à mardi ».

# séquence illustrative—remplacer votre label launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/com.openclaw.gateway.plist sleep 2 # échanger dossier versionné + symlink ici launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.openclaw.gateway.plist launchctl kickstart -k gui/$(id -u)/com.openclaw.gateway

Matrice de rollback : symlink vs restauration tar vs ré-image

StratégieTemps pour revenirRisqueQuand
Symlink vers le dossier semver précédent30–90 sMigrations DB manquéesRégressions binaires/API pures
Restauration tar complète3–10 minÉcrase des files de file en volSuspicion de corruption de config
Ré-imager la mini (dernier recours)15–45 minErreur humaine à la restaurationEnchevêtrement d’extensions noyau ou TCC
Bascule régionale vers une seconde minilié au TTL DNSSplit-brain si DB partagéeCVE majeur sans hotfix
Entraînez le rollback chaque trimestre : si l’astreinte n’a jamais symlinké en arrière sous stress, votre MTTR reste théorique, pas mesuré.

Hooks de santé et observabilité post-upgrade

Pendant les premières 15 minutes après kickstart, lancer des sondes synthétiques sur les ports d’admin localhost, échantillonner la profondeur de file et vérifier les appels modèle sortants avec un prompt canary à quelques centimes. Lier les alarmes à un décalage p95 >15 % par rapport à la baseline pré-changement, pas seulement aux échecs durs. Exporter des lignes structurées avec upgrade_from, upgrade_to, change_ticket pour que le pipeline de logs facette les incidents par release.

FAQ

Puis-je utiliser brew upgrade en maintenance ? Seulement si la politique de conformité autorise les chemins Homebrew en prod ; beaucoup de clients ProxyMac vendorisent des tarballs dans /opt/openclaw/releases/<semver>.

Les migrations avant ou après le démarrage du nouveau binaire ? Migrations rétrocompatibles avant le trafic ; migrations destructrices sur un déploiement de drapeaux en deux phases sur plusieurs jours.

Et les helpers XPC ? Les démarrer dans l’ordre de dépendance documenté à côté du plist principal—graphe parent/enfant dans la récupération de redémarrage.

Pourquoi la Mac mini ProxyMac est le bon lieu pour durcir la discipline d’upgrade

Les minis Apple Silicon M4 offrent des noms d’hôte longue durée, des performances déterministes et assez de marge pour faire tourner des workers canary à côté de la production pendant des bascules bleu/vert—sans combattre le bruit de voisinage hyperviseur chaque mardi patch. Ancrer l’automatisation en HK / JP / KR / SG / US, garder l’humain dans la boucle pour les bumps majeurs, et laisser le métal que vous ne montez pas vous porter la charge opérationnelle. Pour les invites GUI, retomber sur VNC ; si SSH est façonné par des proxys, lire le guide CONNECT d’entreprise publié la même semaine.

Automatiser sur du métal que vous pouvez upgrader en sécurité

HK / JP / KR / SG / US · prêt pour OpenClaw