Obtenir AX Code · GratuitDocumentation

Cette page est traduite de la documentation anglaise. Les commandes, identifiants et exemples sont inchangés. Runtime 7.24.4 · SDK 2.6.7. Source anglaise

Runbook de retour arrière des publications

Statut : Actif Portée : public, état actuel Dernière revue : 2026-09-03 Responsable : ingénierie des publications AX Code

Ce runbook décrit comment retirer une publication CLI d’AX Code stable publiée (canal latest) et rétablir la précédente. Les prépublications (canal beta) ne touchent ni le tap Homebrew ni winget, donc les annuler n’exige que l’étape de publication GitHub ci-dessous.

Préférez un correctif en avant (livrer vX.Y.Z+1) pour les bogues fonctionnels. Ne revenez en arrière que pour des échecs d’intégrité de publication : artefacts cassés ou mal signés, installateur corrompu, erreur de canal ou de tag (par exemple un tag de prépublication publié sur latest), ou une régression grave sans correctif rapide.

1. Geler le canal

Suspendez les publications suivantes et les reprises postpublish_only jusqu’à l’achèvement du retour arrière. Le flux de publication refuse de remplacer les fichiers d’une publication déjà publiée, donc aucune relance concurrente ne peut écraser l’état en cours d’annulation.

2. Réorienter la publication GitHub

Marquez la mauvaise publication comme prépublication afin que latest se résolve vers le tag précédent, et restaurez les notes de publication précédentes si elles ont été écrasées :

gh release edit "vX.Y.Z" --repo defai-digital/ax-code --prerelease
gh release edit "vX.Y.(Z-1)" --repo defai-digital/ax-code --latest

Si les fichiers de la mauvaise publication sont corrompus ou mal signés, supprimez-les aussi afin qu’aucun installateur ne puisse les récupérer :

gh release delete-asset "vX.Y.Z" "<asset-name>" --repo defai-digital/ax-code

Ne supprimez pas l’objet de publication lui-même tant que ses artefacts n’ont pas été examinés ; les fichiers signés et les journaux de flux sont les preuves du bilan.

3. Annuler le tap Homebrew

bash .github/scripts/update-homebrew.sh a poussé un commit de formule vers le dépôt partagé defai-digital/homebrew-tap. Annulez ce commit afin que brew upgrade ax-code serve de nouveau la version précédente. L’ancien dépôt defai-digital/homebrew-ax-code ne contient que des métadonnées de migration ; ne restaurez pas sa formule :

git -C homebrew-tap revert --no-edit <formula-commit>

Vérifiez ensuite la convergence avec la tâche de fumée Homebrew (.github/workflows/install-matrix-smoke.yml) contre la version restaurée.

4. Annuler les manifestes winget

Les manifestes winget sont soumis par les mainteneurs à microsoft/winget-pkgs depuis le ZIP de manifestes joint à la publication GitHub. Si la mauvaise version a déjà été acceptée, ouvrez une demande d’intégration qui annule ces fichiers de manifeste. Si elle est encore en revue, fermez la demande. Le téléversement --clobber sur la publication ne remplace que le ZIP joint, jamais le paquet publié.

5. Communiquer

Publiez une note courte dans la discussion de publication et dans tout canal de soutien : versions touchées, version restaurée et instructions de réinstallation :

  • Homebrew : brew update && brew upgrade ax-code (ou brew uninstall ax-code && brew install ax-code).
  • Windows ou autre : relancez l’installateur épinglé depuis la page de la publication précédente ; l’installateur échoue en mode fermé en cas de signature non concordante et amorce un minisign épinglé, vérifié par SHA-256.

6. Vérifier l'état restauré

  1. Confirmez que la publication GitHub latest pointe vers le tag précédent et que chaque fichier se vérifie :

    gh release download "vX.Y.(Z-1)" --repo defai-digital/ax-code -p '*.zip' -p '*.minisig'
    minisign -V -p docs/release/ax-minisign.pub -m ax-code-darwin-arm64.zip -x ax-code-darwin-arm64.zip.minisig
  2. Confirmez que la formule Homebrew sert la version restaurée et s’installe proprement sur un exécuteur propre (le flux de fumée de la matrice d’installation le fait).

  3. Confirmez que ax-code --version sur une installation neuve signale la version restaurée et passe ax-code doctor.

7. Bilan

Notez ce qui a passé les portes de publication et a pourtant été livré cassé, et déposez des correctifs contre .github/workflows/release.yml (validation, couverture de fumée) avant la prochaine publication. Mettez à jour ce runbook si une étape n’a pas fonctionné comme écrit.