Documentation

Comment une tâche se transforme en pull request

Le chemin complet allant de la description du travail à une pull request déjà révisée, avec le nom de chaque étape sur le parcours.

C'est la page de référence pour le reste de la documentation. Elle nomme chaque étape d'exécution afin que les autres articles puissent préciser où se déroule une action.

Le chemin

  1. 1Spécification

    Ce qui sera construit et comment vous saurez que cela fonctionne.

    ArchitecteVous pouvez modifier
  2. 2Planification

    Étapes ordonnées, révisées avant toute écriture de code.

    ArchitecteVous approuvez
  3. 3Construction

    Code et tests écrits dans un espace de travail isolé.

    Développeur
  4. 4Vérification

    Votre suite de tests, ainsi que les vérifications et portes de qualité.

    Responsable QA
  5. 5Examen

    Une passe de révision automatisée sur le diff.

    Réviseur
  6. 6Demande de fusion

    Sur une branche de votre dépôt, en attente de votre validation.

    Vous fusionnez

Les échecs de vérification et les observations de révision corrigibles reviennent au développeur sous forme de retravail, avant toute ouverture de pull request.

Six étapes, chacune avec un responsable. Vous intervenez lors de la spécification, du plan et de la fusion.

Ces étapes sont identiques quel que soit le mode d'exécution de la tâche. En mode standard, la plateforme déplace la tâche d'une étape à l'autre. En mode Coordinateur, l'agent de planification reste affecté à la tâche en tant que coordinateur, attribue chaque étape à l'agent approprié et décide des actions à entreprendre après chaque résultat, y compris en renvoyant du travail. Dans tous les cas, une étape est clôturée par ses propres vérifications. Voir Rôles des agents pour découvrir les différences entre ces deux modes.

Spécification

Coroid ne part pas de votre phrase. Il transforme d'abord votre description en spécification: ce qui sera construit, ce qui est explicitement hors périmètre, et les critères d'acceptation qui déterminent si le travail est réussi.

Cela est essentiel car les critères d'acceptation servent de référence lors de la phase de vérification ultérieure. Une spécification floue entraîne un travail difficile à évaluer.

Vous pouvez consulter et modifier la spécification dans l'onglet Spécification avant le début de l'exécution.

Le guide sur le développement piloté par la spécification explique comment rédiger des critères vérifiables, définir les limites du périmètre et maintenir la même définition du succès tout au long de la planification, de l'implémentation et de la révision.

Planifier

Pour toute modification plus importante qu'une simple modification mineure, la spécification devient un plan: un ensemble ordonné d'étapes, regroupées en phases. Vous validez le plan avant que le code ne soit écrit.

Rejeter un plan est peu coûteux et constitue la bonne décision si l'approche choisie est incorrecte. Rejeter après l'écriture du code est beaucoup plus coûteux. C'est à ce stade que votre jugement a le plus d'influence.

Construire

Un agent clone le dépôt dans un espace de travail isolé et travaille à cet endroit. Il lit le code, apporte la modification et écrit ou met à jour les tests.

L'espace de travail est temporaire et propre à chaque tâche. Aucune action de l'agent n'affecte votre branche par défaut, et deux tâches exécutées simultanément ne peuvent pas accéder au travail en cours l'une de l'autre.

Vérifier

Votre propre suite de tests s'exécute en premier — c'est le signal le plus fiable disponible, car elle reflète ce que votre équipe a déjà jugé important.

En complément, portes qualité appliquent les règles configurées par votre organisation : seuils de couverture, analyse de code, scan de sécurité, tests navigateurs sur une prévisualisation de déploiement. Une porte bloquante arrête la tâche ; une porte indicative enregistre une constatation et permet de continuer.

Révision

Un agent réviseur analyse le diff comme le ferait un collègue et produit des constatations. Les constatations pouvant être corrigées sont renvoyées pour retravail ; les autres sont jointes à pull request afin que vous puissiez les voir.

C'est pourquoi un Coroid pull request arrive déjà révisé — non pour remplacer votre révision, mais pour que la vôtre ne soit pas la première.

Demande de fusion

La branche est poussée et une pull request est ouverte sur votre branche de base, contenant le changement, les tests, les résultats de vérification ainsi que les observations issues de la revue. Si le code répond déjà aux exigences de la tâche, il n'y a rien à pousser : le service de contrôle qualité valide alors le code inchangé, et la tâche s'achève sans création de pull request.

L'automatisation des tâches de Coroid s'arrête ici. La fusion relève de votre responsabilité.

Après la fusion

Ouvrir Versions pour préparer la validation exacte que vous souhaitez livrer. Une version peut inclure plusieurs demandes de fusion fusionnées, une validation directe ou du travail fusionné en dehors de Coroid. Les portes de version et les approbations concernent cette validation et un environnement spécifique. Votre pipeline la déploie ; Coroid enregistre un succès observé ou une attestation explicite avant de l'afficher comme livrée. Une tâche marquée COMPLETED ou une demande de fusion pull request seule ne prouvent pas le déploiement.

États des tâches

L'état d'une tâche indique où elle se situe dans le processus décrit ci-dessus :

ÉtatSignification
PENDINGAcceptée, en attente d'un emplacement d'agent disponible
IN_PROGRESSEn cours de traitement activement
PENDING_REVIEWLe travail est terminé et révisé, en attente d'intégration ou d'approbation
COMPLETEDLe travail de la tâche est terminé ; le déploiement est suivi séparément
NEEDS_HUMAN_REVIEWCoroid ne peut pas avancer seul et sollicite votre avis.
PAUSEDArrêté temporairement, reprise possible
FAILEDL'exécution n'a pas pu s'achever
CANCELLEDArrêté par vous
WONT_FIXClôturé volontairement sans effectuer le travail

Qu'est-ce qui détermine le débit ?

Un emplacement d'agent exécute une tâche à la fois. Les emplacements d'agent définissent le volume de travail traité en parallèle ; ils ne permettent pas d'accélérer l'exécution d'une tâche individuelle. La durée d'une tâche dépend de la taille des modifications apportées et du temps nécessaire à votre suite de tests.

Suivant

Rôles des agents — quel agent gère chaque étape de travail. Ensuite, consultez Versions pour connaître le parcours post-fusion à travers vos environnements.