06 Administration & gouvernance

Policies de Code Review et surfaces

Cette leçon contient des faits datés. Dates et sources

6.6 Policies pour Copilot Code Review

Définition

Copilot Code Review est une fonctionnalité qui permet à Copilot d’assister la revue de code sur les pull requests.

Elle peut être utilisée manuellement ou configurée automatiquement selon les paramètres disponibles.

GitHub documente Copilot Code Review comme une fonctionnalité capable de reviewer du code, fournir du feedback et suggérer des corrections. (docs.github.com)

Pourquoi une policy Code Review ?

Parce qu’une organisation peut vouloir contrôler :

  • quels repos utilisent Copilot Code Review ;
  • si la review est automatique ;
  • si les développeurs peuvent la demander manuellement ;
  • quelles instructions Copilot doit suivre ;
  • comment les suggestions sont intégrées au workflow PR.

Exemple

Une équipe sécurité veut activer Copilot Code Review uniquement pour les repositories critiques.

Configuration possible :

Texte
repos critiques      → Code Review enabled
repos expérimentaux  → Code Review optional
repos sensibles      → Code Review avec custom instructions strictes

Automatic code review

GitHub indique que Copilot Code Review peut être configuré pour reviewer automatiquement les pull requests. (docs.github.com)

La configuration actuelle expose aussi un niveau d’effort de review : Lite ou Balanced, Balanced étant le niveau par défaut. Balanced approfondit notamment la logique complexe et le code sensible à la sécurité ; il consomme davantage d’AI Credits et peut consommer légèrement plus de minutes GitHub Actions. Un niveau Max est affiché avec la mention « Coming soon » : il n’est pas encore disponible. Les niveaux d’effort sont un réglage de coût et de profondeur, pas un réglage de gouvernance ; les organization owners et les administrateurs de dépôt peuvent en fixer un par défaut pour la revue automatique.

Cela peut être utile pour :

  • PR nombreuses ;
  • équipes distribuées ;
  • repositories critiques ;
  • détection précoce de bugs ;
  • amélioration de la qualité.

Qui configure la revue automatique ?

Par défaut, Copilot ne relit une pull request que si on la lui assigne. La revue automatique se configure à plusieurs niveaux :

NiveauQuiComment
Utilisateurle développeurses réglages Copilot, pour les pull requests qu’il crée
Dépôtles administrateurs du dépôtun ruleset du dépôt
Organisationles organization ownersun ruleset de l’organisation, sur tout ou partie des dépôts
Enterpriseles enterprise ownersla policy Copilot code review, puis des rulesets d’enterprise

Ces sources ne sont pas hiérarchiques : une pull request est relue automatiquement dès qu’une source l’autorise, et Copilot ne publie qu’une seule review. Au niveau enterprise, la policy Copilot code review est activée partout, ou laissée aux organisations (« Let organizations decide »).

Code Review pour des membres sans licence Copilot

Une organisation Business ou Enterprise peut permettre à des membres sans licence Copilot d’utiliser Code Review sur GitHub.com. Il faut activer deux policies : l’usage payant en AI Credits, puis la sous-policy qui autorise les membres sans licence. Cette sous-policy est désactivée par défaut, et une valeur posée au niveau enterprise est visible mais non modifiable dans l’organisation. Cette possibilité n’existe pas dans les IDE.

Une policy ordinaire ne s’applique qu’aux utilisateurs licenciés par l’enterprise ou l’organisation. Pour bloquer entièrement Code Review dans les dépôts d’une enterprise, y compris pour des utilisateurs dont l’accès à Copilot vient d’un plan personnel, GitHub propose une policy dédiée : « Block Copilot code review in all enterprise repositories ». Le Copilot cloud agent a la sienne.

Les approbations de Copilot (public preview)

Une review de Copilot laisse par défaut un commentaire : elle ne compte pas dans les approbations requises d’une pull request. Une fonctionnalité en public preview permet à Copilot de soumettre une approbation qui satisfait la règle d’approbation. Elle est désactivée par défaut et se configure à trois niveaux : l’enterprise (qui peut la refuser partout, la limiter à des organisations ou laisser les organisations décider), l’organisation, puis le dépôt. Même activée, c’est un choix de gouvernance : l’équipe décide ce qui compte comme approbation.

Custom instructions pour Code Review

Copilot Code Review peut être personnalisé avec des instructions.

GitHub indique que les repository custom instructions peuvent être repository-wide ou path-specific, par exemple via .github/copilot-instructions.md et .github/instructions/**/*.instructions.md. Pour Code Review, les instructions sont lues depuis la branche HEAD de la PR ; ne généralise pas une règle de longueur de 4 000 caractères issue d’une ancienne documentation.

Exemple d’instructions Code Review

markdown
# Copilot code review instructions

Focus on:
- authentication and authorization issues
- input validation
- SQL injection
- hardcoded secrets
- excessive permissions
- missing tests
- unsafe error handling

For TypeScript:
- require explicit return types for exported functions
- prefer strict null checks
- avoid using any

Exemple path-specific

Tu peux avoir des instructions différentes pour certains chemins :

Texte
/payment/**        → review sécurité stricte
/frontend/**       → accessibilité + performance
/infrastructure/** → least privilege + secrets

Limite importante

Copilot Code Review ne remplace pas :

  • la review humaine ;
  • les tests ;
  • les scans sécurité ;
  • la CI ;
  • la validation métier ;
  • l’approbation d’un maintainer.

Question type examen

Une organisation active Copilot Code Review automatiquement. Peut-elle supprimer les reviews humaines ?

Bonne réponse :

Texte
Non. Copilot Code Review assiste la review mais ne remplace pas le jugement humain.

6.7 Gestion de Copilot dans les IDE

Définition

La gestion de Copilot dans les IDE concerne les fonctionnalités disponibles dans les environnements de développement comme :

  • VS Code ;
  • Visual Studio ;
  • JetBrains ;
  • Neovim ;
  • Eclipse ;
  • Xcode selon support.

GitHub documente l’usage de Copilot dans plusieurs IDE et explique que les fonctionnalités disponibles peuvent varier selon l’environnement. (docs.github.com)

Ce que les admins peuvent vouloir contrôler

Une organisation peut vouloir contrôler :

  • Copilot Chat dans l’IDE ;
  • suggestions inline ;
  • Copilot CLI ;
  • agents dans l’IDE ;
  • accès aux modèles ;
  • serveurs MCP ;
  • politiques de données.

Exemple

Une entreprise autorise :

Texte
Inline suggestions → Enabled
Copilot Chat in IDE → Enabled
Agent Mode → Disabled
Copilot CLI → Disabled

Pourquoi ?

Parce qu’elle veut permettre l’aide au développement, mais éviter les actions plus autonomes au début.

Différence feature IDE vs GitHub.com

Certaines fonctionnalités sont liées à l’IDE :

  • inline suggestions ;
  • inline chat ;
  • Copilot Edits (edit mode) ;
  • Ask Mode ;
  • Agent Mode dans l’IDE.

D’autres sont plus liées à GitHub.com :

  • PR summaries ;
  • Copilot Code Review ;
  • agents sur issues/PR ;
  • GitHub.com chat.

L’examen peut tester cette distinction.

Exemple de question

Une équipe veut que les développeurs puissent obtenir de l’aide pendant qu’ils codent dans VS Code, mais ne veut pas activer les fonctionnalités Copilot sur les pull requests.
Que faut-il configurer ?

Bonne logique :

Texte
Activer les features Copilot dans l’IDE, mais désactiver ou limiter les features GitHub.com comme PR summaries ou Code Review.

6.8 Gestion de Copilot sur GitHub.com

Définition

Copilot sur GitHub.com concerne les fonctionnalités disponibles directement dans l’interface web GitHub.

Exemples :

  • Copilot Chat sur GitHub.com ;
  • PR summaries ;
  • Copilot Code Review ;
  • agents liés aux issues ou pull requests ;
  • interactions avec repositories, issues, PRs ;
  • contexte GitHub.com.

Exemple PR summary

Un reviewer ouvre une PR contenant beaucoup de fichiers.

Copilot peut générer un résumé :

Texte
Cette PR ajoute le support de soft delete pour les utilisateurs,
met à jour les requêtes repository et ajoute des tests.

C’est utile pour comprendre rapidement le changement.

Exemple Code Review

Copilot analyse une PR et signale :

Texte
This endpoint does not appear to validate user authorization before returning user data.

Pourquoi gérer GitHub.com séparément ?

Parce qu’une entreprise peut vouloir :

Texte
Autoriser Copilot dans l’IDE
mais limiter Copilot sur GitHub.com

ou l’inverse.

Exemple :

Texte
Développeurs → Copilot IDE enabled
Reviewers → Copilot Code Review enabled
Agents GitHub.com → disabled until governance is ready

À retenir

Texte
IDE = aide pendant l’écriture du code
GitHub.com = aide autour des repos, issues, PRs et reviews

À retenir pour le GH-300

  • La revue automatique se déclenche par un ruleset (dépôt, organisation, enterprise) ou le réglage de l’utilisateur ; plusieurs sources ne produisent qu’une seule review.
  • Par défaut, une review de Copilot est un commentaire : elle ne compte pas comme approbation. L’approbation par Copilot est en public preview et désactivée par défaut.
  • Membres sans licence : deux policies à activer, sur GitHub.com seulement, jamais dans les IDE.
  • L’IDE et GitHub.com se gouvernent séparément ; Code Review aide sans remplacer la review humaine, les tests ni la CI.

Faits datés de cette leçon

Ces points changent avec le produit. Chacun indique quand il a été vérifié et où le contrôler.