Aller au contenu

Contribuer ​

Le workflow de contribution est imposé - suis-le à la lettre.

Règles strictes ​

  • Ne jamais travailler directement sur main. Tout changement passe par un cycle issue → branche → PR.
  • Aucune attribution à une IA / à Claude, jamais. Les messages de commit, les titres/descriptions de PR et les textes d'issue ne doivent mentionner ni IA, ni Claude, ni aucun assistant, et ne doivent contenir aucune ligne Co-Authored-By ni "Generated with".
  • Pas de plan de test dans les PR. Le corps de la PR se limite à un résumé + Closes #<issue>.
  • Privilégier les générateurs CLI dès qu'il en existe un (gh issue create, gh pr create, etc.) plutôt que des étapes manuelles.

Workflow ​

  1. Créer une issue labellisée décrivant le changement.

    sh
    gh issue create --title "..." --body "..." --label <label>
  2. Créer une branche à partir de main, en utilisant le numéro de l'issue et un slug en PascalCase :

    sh
    git switch -c feature/<issue#>_PascalCase   # nouvelle fonctionnalité
    git switch -c fix/<issue#>_PascalCase       # correction de bug
  3. Committer avec un sujet court à l'impératif (p. ex. Add agenda filter).

  4. Ouvrir une PR (labellisée) dont le corps se limite à un court résumé et à la référence de fermeture :

    sh
    gh pr create --title "..." --label <label> --body "Summary of the change.
    
    Closes #<issue>"
  5. Merger en squash et supprimer la branche une fois la PR approuvée.

Convention de nommage des branches ​

TypeModèleExemple
Featurefeature/<issue#>_PascalCasefeature/123_AgendaFilter
Fixfix/<issue#>_PascalCasefix/124_LoginCrash

Labels ​

Applique le label approprié à la fois sur l'issue et sur la PR :

LabelÀ utiliser pour
bugRapports de bugs
enhancementAméliorations d'un comportement existant
featureNouvelle fonctionnalité
refactorRestructuration interne, sans changement de comportement
CI/CDChangements de pipeline / workflow
dependenciesMontées de version des dépendances
documentationChangements concernant uniquement la documentation

Avant d'ouvrir une PR ​

Exécute les vérifications de qualité (voir Configuration de développement) :

sh
bun run analyze
bun run test
bun run format