outillage: CODEOWNERS — relecture Tech Lead requise sur les chemins sensibles #98

Merged
lenaic merged 2 commits from lenaic/0-codeowners into develop 2026-09-03 13:26:20 +00:00
Owner

Ce que ça change

Ajoute un fichier CODEOWNERS : la forge demandera automatiquement ma relecture sur les MR qui touchent infra/, .forgejo/, db/ et tests/ci/ — et plus sur les autres. C'est la suggestion du §7 du compte rendu du 31/08 : Tech Lead obligatoire sur le sensible seulement, relecteur tiré au sort partout ailleurs.

Preuve

Rien d'exécutable ici : la demande de relecture automatique se constatera sur la première MR touchant infra/ après fusion.

Relecture

  • Un pair a relu et laissé un commentaire, même court
  • Ses remarques sont traitées, ou une réponse explique pourquoi elles ne le sont pas

Où regarder en priorité

Les motifs sont des expressions régulières (héritage Gitea), pas des globs GitHub : infra/.* et non infra/**.

## Ce que ça change Ajoute un fichier `CODEOWNERS` : la forge demandera automatiquement ma relecture sur les MR qui touchent `infra/`, `.forgejo/`, `db/` et `tests/ci/` — et plus sur les autres. C'est la suggestion du §7 du compte rendu du 31/08 : Tech Lead obligatoire sur le sensible seulement, relecteur tiré au sort partout ailleurs. ## Preuve Rien d'exécutable ici : la demande de relecture automatique se constatera sur la première MR touchant `infra/` après fusion. ## Relecture - [ ] Un pair a relu et laissé un commentaire, même court - [ ] Ses remarques sont traitées, ou une réponse explique pourquoi elles ne le sont pas ## Où regarder en priorité Les motifs sont des expressions régulières (héritage Gitea), pas des globs GitHub : `infra/.*` et non `infra/**`.
outillage: CODEOWNERS — relecture Tech Lead requise sur les chemins sensibles
All checks were successful
Intégration / Qualité du code Python (pull_request) Successful in 12s
Intégration / Tests unitaires et couverture (pull_request) Successful in 12s
Intégration / Dépendances du tableau de bord (pull_request) Successful in 9s
Intégration / Images épinglées par version (pull_request) Successful in 3s
Intégration / Aucun secret commité (pull_request) Successful in 3s
Intégration / Dépendances Python et inventaire applicatif (pull_request) Successful in 44s
beb1b37266
florian approved these changes 2026-09-03 07:29:49 +00:00
Dismissed
lenaic dismissed florian's review 2026-09-03 09:45:22 +00:00
Reason:

Not PO

gabriel left a comment

Périmètre (infra / CI / sécurité seulement) conforme au §7 du compte rendu du 31/08, emplacement racine OK pour Forgejo. Deux remarques, aucune bloquante :

  1. Ancrage des motifs. Les motifs Forgejo sont des regexps non ancrées matchées sur le chemin complet : infra/.* matche aussi docs/infra/.... Aucun chemin de ce type aujourd'hui, mais autant écrire ^infra/, ^\.forgejo/, ^db/, ^tests/ci/.

  2. À vérifier pour que ça morde vraiment. Le fichier fait que la forge ajoute le Code Owner comme relecteur, mais pour bloquer le merge sans son aval il faut activer « relecture des Code Owners requise » dans la protection de branche de develop et main. Aujourd'hui required_approvals=1 sans distinction : une MR sur infra/ reste mergeable avec l'approbation d'un pair tiré au sort. Je m'occupe du réglage de protection de branche en parallèle.

Périmètre (infra / CI / sécurité seulement) conforme au §7 du compte rendu du 31/08, emplacement racine OK pour Forgejo. Deux remarques, aucune bloquante : 1. **Ancrage des motifs.** Les motifs Forgejo sont des regexps non ancrées matchées sur le chemin complet : `infra/.*` matche aussi `docs/infra/...`. Aucun chemin de ce type aujourd'hui, mais autant écrire `^infra/`, `^\.forgejo/`, `^db/`, `^tests/ci/`. 2. **À vérifier pour que ça morde vraiment.** Le fichier fait que la forge *ajoute* le Code Owner comme relecteur, mais pour *bloquer* le merge sans son aval il faut activer « relecture des Code Owners requise » dans la protection de branche de `develop` et `main`. Aujourd'hui `required_approvals=1` sans distinction : une MR sur `infra/` reste mergeable avec l'approbation d'un pair tiré au sort. Je m'occupe du réglage de protection de branche en parallèle.
Merge branch 'develop' into lenaic/0-codeowners
All checks were successful
Intégration / Qualité du code Python (pull_request) Successful in 55s
Intégration / Tests unitaires et couverture (pull_request) Successful in 59s
Intégration / Dépendances du tableau de bord (pull_request) Successful in 15s
Intégration / Images épinglées par version (pull_request) Successful in 3s
Intégration / Tableau de bord (pull_request) Successful in 21s
Intégration / Aucun secret commité (pull_request) Successful in 2s
Intégration / Dépendances Python et inventaire applicatif (pull_request) Successful in 1m35s
375243802b
lenaic force-pushed lenaic/0-codeowners from 375243802b
All checks were successful
Intégration / Qualité du code Python (pull_request) Successful in 55s
Intégration / Tests unitaires et couverture (pull_request) Successful in 59s
Intégration / Dépendances du tableau de bord (pull_request) Successful in 15s
Intégration / Images épinglées par version (pull_request) Successful in 3s
Intégration / Tableau de bord (pull_request) Successful in 21s
Intégration / Aucun secret commité (pull_request) Successful in 2s
Intégration / Dépendances Python et inventaire applicatif (pull_request) Successful in 1m35s
to 7366ad1fbb
All checks were successful
Intégration / Qualité du code Python (pull_request) Successful in 50s
Intégration / Tests unitaires et couverture (pull_request) Successful in 57s
Intégration / Dépendances du tableau de bord (pull_request) Successful in 12s
Intégration / Images épinglées par version (pull_request) Successful in 3s
Intégration / Tableau de bord (pull_request) Successful in 22s
Intégration / Aucun secret commité (pull_request) Successful in 3s
Intégration / Dépendances Python et inventaire applicatif (pull_request) Successful in 1m27s
2026-09-03 13:14:30 +00:00
Compare
Author
Owner

Les deux remarques sont prises, et la seconde valait mieux qu'un « non bloquant ».

L'ancrage. Corrigé : ^infra/, ^\.forgejo/, ^db/, ^tests/ci/. Tu as raison sur
le fond — aucun docs/infra/ aujourd'hui, mais le jour où quelqu'un en crée un, une
relecture obligatoire se déclencherait sans que personne ne comprenne pourquoi, et c'est
le genre de règle qu'on finit par contourner plutôt que par corriger.

Ce que le fichier ne fait pas est maintenant écrit dedans, en majuscules. Un CODEOWNERS
qui n'exige rien pendant qu'on croit qu'il exige quelque chose est pire que pas de
CODEOWNERS du tout : il donne l'illusion d'une barrière. Le fichier dit donc qu'il faut
« relecture des Code Owners requise » sur la protection de develop et de main, et que
tu t'en charges.

Dis-moi quand le réglage est posé, je le vérifierai en ouvrant une demande de test sur
infra/ pour voir si elle se laisse fusionner sans moi. Tant que ce n'est pas fait, ce
fichier documente une intention, pas une règle.

Les deux remarques sont prises, et la seconde valait mieux qu'un « non bloquant ». **L'ancrage.** Corrigé : `^infra/`, `^\.forgejo/`, `^db/`, `^tests/ci/`. Tu as raison sur le fond — aucun `docs/infra/` aujourd'hui, mais le jour où quelqu'un en crée un, une relecture obligatoire se déclencherait sans que personne ne comprenne pourquoi, et c'est le genre de règle qu'on finit par contourner plutôt que par corriger. **Ce que le fichier ne fait pas est maintenant écrit dedans**, en majuscules. Un CODEOWNERS qui n'exige rien pendant qu'on croit qu'il exige quelque chose est pire que pas de CODEOWNERS du tout : il donne l'illusion d'une barrière. Le fichier dit donc qu'il faut « relecture des Code Owners requise » sur la protection de `develop` et de `main`, et que tu t'en charges. Dis-moi quand le réglage est posé, je le vérifierai en ouvrant une demande de test sur `infra/` pour voir si elle se laisse fusionner sans moi. Tant que ce n'est pas fait, ce fichier documente une intention, pas une règle.
lenaic requested review from gabriel 2026-09-03 13:14:59 +00:00
gabriel approved these changes 2026-09-03 13:18:32 +00:00
lenaic merged commit 6440d456a6 into develop 2026-09-03 13:26:20 +00:00
lenaic deleted branch lenaic/0-codeowners 2026-09-03 13:26:20 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
g2/enervision!98
No description provided.