01

Repère immédiat : une règle modifiée ne ressuscite pas une preuve supprimée

Depuis le 1er octobre 2026, la rétention de GitHub Actions couvre aussi les contrôles, les exécutions de flux de travail et les états de commit concernés. C’est le changement annoncé par GitHub dans son avis officiel du 1er octobre 2026. La consigne opérationnelle en découle : cette semaine, vérifiez les paramètres réellement appliqués à l’organisation, puis exportez séparément les preuves qui doivent rester disponibles au-delà de leur durée de conservation. Modifier la rétention ne restaure pas les éléments déjà supprimés et ne constitue pas une stratégie d’archivage des fichiers de construction.

Cette analyse s’adresse aux responsables IT qui doivent contrôler les paramètres et leurs limites à l’échelle de l’organisation et des dépôts.
Elle concerne aussi les responsables sécurité et conformité chargés de démontrer la traçabilité des contrôles, exécutions et états associés à une publication.
Les responsables de plateforme Mac CI y trouveront une méthode pour séparer journaux, métadonnées et artefacts, puis éprouver leur restauration.

Dernière vérification : 21 octobre 2026. Les règles et leur champ d’application ont été vérifiés dans l’annonce et la documentation GitHub ; la configuration effective et les résultats de restauration doivent être contrôlés dans l’organisation concernée.

02

Couverture des preuves dans la CI Mac

Le premier risque est de traiter comme un seul objet ce qui relève de plusieurs systèmes de conservation. Un résultat de contrôle, un état de commit, un enregistrement d’exécution, un journal et une archive de construction ne sont pas interchangeables. Le fait de retrouver un état favorable sur un commit ne démontre pas que le journal correspondant est encore disponible, ni que l’application construite peut être téléchargée.

L’avis de GitHub précise que la règle de rétention s’étend aux contrôles, aux exécutions et aux états concernés, y compris ceux créés par des intégrations tierces. Pour interpréter correctement cette portée, distinguez les données consultables comme enregistrements des fichiers qu’une exécution a produits. La documentation des exécutions de contrôles et celle des états de commit permettent d’identifier deux catégories de données de suivi, sans les confondre avec une archive d’application.

Voici les vérifications à faire pour chaque catégorie :

  • Contrôles et résultats associés : relevez le commit, le nom du contrôle, son état final, sa source et les références permettant d’identifier l’exécution correspondante. Les contrôles provenant d’une intégration externe doivent être inventoriés eux aussi, et non attribués par défaut au flux de travail natif.
  • Exécutions de flux de travail : consignez les références de dépôt, de branche ou de commit utiles à votre procédure, ainsi que l’identifiant de l’exécution et son résultat. Vérifiez si l’enregistrement reste accessible selon la règle effective.
  • États de commit : conservez le contexte qui explique qui ou quel système a publié l’état et à quel commit il s’applique. Un état isolé ne fournit pas nécessairement les détails d’exécution nécessaires à une enquête.
  • Journaux : identifiez séparément les journaux de l’exécution et des tâches. La procédure officielle de téléchargement des journaux d’un flux de travail décrit cet accès ; elle ne remplace pas une décision interne sur la conservation à long terme.
  • Artefacts de construction : inventorie les archives de l’application, rapports de test et fichiers de symboles selon leur usage et vos règles. GitHub documente les artefacts de flux de travail comme des fichiers produits et transmis par un flux de travail ; ils doivent donc être suivis à part des états et contrôles.
03

Traçabilité d’une décision de publication

Une décision de publication n’est vérifiable que si l’équipe peut relier le résultat au commit concerné, au contrôle qui l’a évalué, à l’exécution qui l’a produit et, lorsque c’est nécessaire, aux fichiers et journaux associés. La chaîne doit rester compréhensible pour un auditeur qui n’a pas participé à la construction : l’intitulé d’un contrôle ou une capture d’écran ne suffit pas si la source, le commit et la version publiée ne sont pas identifiables.

Pour chaque publication soumise à audit, établissez un lien explicite entre les éléments suivants :

  • la référence immuable du code examiné, telle que le commit ;
  • l’exécution du flux de travail et le résultat obtenu ;
  • les contrôles et états associés, avec la source déclarée ;
  • les journaux et rapports nécessaires à l’analyse du résultat ;
  • les artefacts effectivement archivés et leur relation avec la publication.

Cette liaison mérite une attention particulière lorsqu’un service tiers crée des contrôles ou des états. L’annonce de GitHub inclut les contrôles et états concernés issus d’intégrations tierces dans le champ de la règle ; les équipes doivent donc inventorier leur origine et vérifier si elles disposent d’un export indépendant. Les documents GitHub sur les états de commit et les exécutions de contrôles aident à séparer ces objets dans le modèle de preuve.

Il faut également fixer une définition locale de « preuve suffisante ». Une équipe peut devoir démontrer le passage d’un contrôle, une autorisation de publication ou la capacité de reconstruire le contexte d’un incident ; ces objectifs ne requièrent pas nécessairement les mêmes documents. Ne déduisez donc pas une durée universelle de la règle technique de la plateforme. Faites valider la durée applicable par les responsables de l’audit, de la sécurité et du produit.

04

Adaptation de la rétention aux règles internes

La valeur affichée dans les paramètres d’un dépôt ne suffit pas à prouver que la politique répond à une exigence d’entreprise. GitHub documente des paramètres de rétention des artefacts et des journaux au niveau de l’organisation, ainsi que les limites et comportements associés. Avant de modifier un dépôt, confrontez sa configuration aux règles de l’organisation et aux niveaux de gestion qui s’appliquent. Les paramètres organisationnels de rétention des artefacts et journaux constituent le point de contrôle pour cette vérification.

Pour déterminer si la configuration est adaptée, procédez par rapprochement plutôt que par supposition :

  • Documentez les exigences d’audit et d’enquête que l’entreprise a réellement approuvées.
  • Relevez les paramètres effectifs au niveau entreprise, organisation et dépôt, lorsque ces niveaux existent dans votre environnement.
  • Vérifiez les plafonds et règles héritées : un réglage local ne doit pas être tenu pour une dérogation à une limite supérieure sans confirmation dans la documentation et dans la configuration.
  • Comparez les périodes exigées avec la disponibilité réelle de chaque catégorie de preuve.
  • Inscrivez les écarts, exceptions, propriétaires et décisions d’approbation dans un registre révisable.

Cette méthode évite deux erreurs fréquentes. La première consiste à appliquer partout une durée uniforme sans vérifier les obligations propres aux produits ou aux enquêtes. La seconde consiste à croire qu’un paramètre plus élevé suffit à couvrir des obligations qui exigent un stockage indépendant, une conservation contrôlée ou une restauration démontrable.

La documentation officielle évolue ; la validation doit donc associer la lecture des règles publiées à l’examen de la configuration réelle. Dans un environnement d’entreprise, gardez une trace datée de la valeur observée, de son niveau d’application, de l’approbateur et des exceptions. Cette trace permet de distinguer une politique voulue d’un réglage réellement effectif.

05

Séparation des objets et des responsabilités d’archive

Les preuves ne devraient pas être confiées à un unique mécanisme simplement parce qu’elles proviennent de la même exécution. Un état de commit est une information de suivi ; un journal explique le déroulement ; un rapport de test détaille un résultat ; une archive contient les fichiers de construction. La documentation de GitHub distingue également les artefacts des journaux. Cette séparation doit se retrouver dans le plan de conservation de l’équipe.

Pour chaque objet, consignez les mêmes champs dans votre inventaire : objet, responsable, source, destination de conservation, durée approuvée, clé de rapprochement et preuve de restauration. Une fiche peut être structurée ainsi :

  • Contrôles et états — responsable de l’intégration concernée ; source indiquée par l’API ou le flux qui les a publiés ; export ou référence archivée selon la politique interne ; rapprochement par commit et publication ; vérification par consultation d’un élément restauré ou conservé.
  • Exécutions — équipe plateforme ; enregistrement du flux de travail ; export ou index durable si nécessaire ; rapprochement par identifiant d’exécution et commit ; vérification de l’accès aux métadonnées de l’exécution.
  • Journaux — propriétaire du processus de construction ; journaux téléchargeables de l’exécution ; archive distincte si la fenêtre requise dépasse la disponibilité dans la plateforme ; rapprochement par exécution et tâche ; vérification de lecture du fichier restauré.
  • Rapports et artefacts — équipe de livraison ou propriétaire de l’application ; fichiers issus de la construction ; stockage géré selon les règles de sécurité de l’entreprise ; rapprochement par commit, exécution et version publiée ; vérification de l’intégrité et de l’ouverture des fichiers.
  • Fichiers de symboles — équipe responsable du diagnostic de production ; fichier produit et son contexte de construction ; destination définie par l’usage et les exigences d’accès ; rapprochement par la version concernée ; test de récupération par les personnes habilitées.

Ce tableau de décision distingue les choix d’architecture, plutôt que de supposer qu’un seul dépôt convient à tous les usages :

Option Éléments convenant à la conservation Limite à vérifier avant décision Critère de choix
Se fier à la rétention de la plateforme Contrôles, exécutions, états, journaux et artefacts encore disponibles dans le périmètre configuré Les paramètres et limites applicables ; la disponibilité réelle après expiration À retenir seulement si la fenêtre exigée et les règles internes sont couvertes
Exporter les preuves nécessaires Métadonnées, journaux ou fichiers explicitement sélectionnés par l’équipe La complétude des exports, leur indexation et les droits d’accès Adapté si la conservation doit dépasser la disponibilité native ou être indépendante
Combiner conservation native et archive indépendante Consultation courante dans la plateforme, copie durable des éléments requis Le rapprochement entre les sources et la procédure de restauration À privilégier lorsque l’audit exige à la fois un historique consultable et une récupération vérifiée

Une archive externe n’est pas automatiquement complète ni conforme. La documentation de GitHub sur la suppression des artefacts de flux de travail rappelle que les artefacts relèvent d’opérations distinctes de gestion. Définissez donc l’export, le contrôle des accès et la suppression selon les exigences approuvées par votre entreprise ; ne présentez pas l’export comme une garantie de conservation réglementaire.

06

Restauration et accès vérifiables

Une preuve exportée n’est utile que si l’équipe peut la retrouver, la lire et expliquer sa relation avec la publication concernée. L’existence d’un fichier dans un stockage ne démontre pas à elle seule que son contenu est complet ou que ses droits d’accès sont corrects. La procédure d’acceptation doit tester une récupération réelle, pas seulement l’état « export terminé ».

La séquence suivante peut être intégrée à l’exploitation de la CI Mac :

  • Définir le cas de restauration. Choisissez un commit, une exécution ou une version de publication qui représente les preuves que l’équipe devra fournir.
  • Retrouver l’index. Vérifiez qu’une personne autorisée peut partir de la référence choisie et retrouver les identifiants associés, sans dépendre d’un lien temporaire ou du souvenir d’un opérateur.
  • Récupérer les catégories attendues. Contrôlez séparément les métadonnées, contrôles, états, journaux, rapports et fichiers de construction prévus dans la fiche d’inventaire.
  • Ouvrir et rapprocher les éléments. Confirmez que les fichiers sont lisibles et que leurs identifiants, commits et résultats concordent avec l’index conservé.
  • Vérifier les autorisations. Faites constater que les personnes habilitées peuvent consulter les preuves et que les accès non autorisés sont limités selon la politique de l’entreprise.
  • Consigner l’essai. Notez la source, la référence recherchée, les éléments récupérés, les lacunes et l’approbation du responsable ; définissez un propriétaire et une échéance pour chaque correction.

Pour un contrôle répétable, l’index peut être conservé dans un format simple. Les valeurs ci-dessous sont des champs à renseigner, et non des données d’exécution réelles :

commit: "<référence-du-commit>"
workflow_run: "<identifiant-de-l-exécution>"
check_source: "<source-du-contrôle>"
status_source: "<source-de-l-état>"
logs_archive: "<référence-de-l-archive-des-journaux>"
build_artifact: "<référence-de-l-archive-de-construction>"
restore_test: "<référence-du-rapport-de-restauration>"
owner: "<équipe-responsable>"

Le rapport d’essai doit dire ce qui a été réellement restauré, ce qui manquait et comment l’écart a été traité. Il ne faut pas remplacer une pièce absente par une capture recréée ou une description rétrospective sans la qualifier comme telle. Cette distinction rend la preuve plus défendable et évite de confondre une reconstitution avec un enregistrement original.

07

FAQ sur la conservation des preuves

Quelles données la nouvelle règle peut-elle faire disparaître ?

L’annonce publiée par GitHub indique qu’à partir du 1er octobre 2026, les contrôles, les exécutions et les états de commit concernés sont également soumis aux paramètres de rétention d’Actions, y compris ceux provenant d’intégrations tierces. Vérifiez donc ces catégories dans votre inventaire. Les journaux et fichiers de construction doivent être suivis séparément : leur présence ne découle pas automatiquement de celle d’un état de contrôle.

Comment archiver les états et les exécutions pour un audit ?

Conservez les références permettant de relier l’état au commit, au contrôle, à la source qui l’a publié et à l’exécution correspondante. Ajoutez les journaux ou rapports dont l’auditeur a besoin pour comprendre le résultat, puis archivez et indexez chaque catégorie selon la politique interne. Vérifiez enfin qu’un responsable habilité peut retrouver les éléments à partir d’une publication donnée, et pas seulement ouvrir une liste d’exports.

Une modification de durée peut-elle récupérer un contrôle supprimé ?

Non. La modification d’un paramètre ne restaure pas les données déjà supprimées. Contrôlez les copies indépendantes et les sources d’archive autorisées ; si aucune preuve n’existe, consignez clairement cette lacune. Pour éviter qu’elle se reproduise, décidez quels éléments doivent être exportés avant leur expiration et testez leur récupération au moyen d’une référence de commit ou d’exécution.

Quelle méthode appliquer aux journaux, états et artefacts d’une CI Mac ?

Attribuez un propriétaire et une destination à chaque catégorie, puis associez-les au commit, à l’exécution et à la publication. Les états décrivent le suivi, les journaux documentent le déroulement et les artefacts contiennent les fichiers produits : les traiter comme un seul objet rend les lacunes difficiles à détecter. Validez le dispositif en restaurant un échantillon et en contrôlant la lisibilité, le rapprochement et les permissions.

08

Décision d’infrastructure et prochaine vérification

La matrice de preuves permet d’abord de déterminer si l’archive actuelle couvre les besoins réels : catégories présentes, responsables nommés, accès autorisés et restauration testée. Une infrastructure de construction ne remplace pas cette gouvernance. En revanche, lorsque l’équipe manque d’un environnement macOS dédié, l’usage d’un Mac distant peut fournir un nœud de construction distinct, sans résoudre à lui seul l’export, l’indexation ou la conservation des éléments d’audit.

Une machine achetée en propre peut être préférable si l’entreprise exige une présence physique, des interfaces locales particulières ou une charge soutenue et stable. À l’inverse, l’achat immobilise un budget matériel, impose le suivi du cycle de vie et laisse à l’équipe l’entretien et la capacité de remplacement ; un environnement distant dépend de la qualité de la procédure d’accès et de la gouvernance du fournisseur. Pour des essais, une montée en charge ponctuelle ou un besoin de nœud Mac sans investissement matériel immédiat, NodeMini peut être étudié comme option de location ; cela ne constitue ni une archive automatique ni une garantie de conformité.

Les équipes qui évaluent cette voie peuvent consulter les options de Mac distant proposées par NodeMini et les conditions d’accès au service, puis appliquer la même validation de sécurité et d’exploitation que pour tout autre environnement. La prochaine action reste de faire approuver la matrice par les responsables de la plateforme, de l’audit et de la sécurité, puis de tester une restauration avant de considérer la chaîne de preuves comme vérifiée.