Sommaire de la documentation

// Documentation Singularity

La revue de code des exécutions d’agents

Relisez le résultat d’un agent avant qu’il rejoigne votre branche : inspectez chaque diff, annotez le code, corrigez un fichier si nécessaire, puis fusionnez tout ou seulement les fichiers approuvés.

Pourquoi une revue

Avec les worktrees Git activés, l’agent travaille dans une arborescence et sur une branche isolées. Vos fichiers courants restent intacts et rien n’est fusionné tant que vous n’avez pas approuvé.

La seule exception est la fusion automatique : si elle est activée, Singularity réintègre le résultat dès la fin réussie de l’exécution. Désactivez-la dans Réglages → Git → Worktrees pour imposer une revue humaine.

Ouvrir la revue

Ouvrez l’onglet Revue. La vue d’accueil liste les exécutions terminées qui attendent une approbation, avec l’agent, la branche source et la branche de base, le nombre de projets et de fichiers, les additions et suppressions, ainsi que l’heure relative.

Sélectionnez une exécution pour ouvrir son onglet review:<id>. Le diff occupe le centre ; la liste des fichiers, la discussion et les décisions restent réunies dans le panneau de revue.

Lire et approuver le diff

La section Fichiers présente chaque fichier modifié et ses statistiques. Sélectionnez-en un pour afficher son contenu complet : les lignes ajoutées sont teintées en vert et les suppressions en rouge. Les blocs inchangés peuvent être repliés afin de garder le changement lisible.

Activez Approuver ce fichier lorsque son changement vous convient. Le pied de panneau suit l’avancement avec x/y approuvés. Un fichier marqué « Approuvé — inclus dans la fusion » fera partie de la décision finale.

Onglet Revue de Singularity affichant un diff, la liste des fichiers approuvés et une note de revue
Une exécution en attente de validation, avec son diff et une note au niveau du fichier.

Annoter un fichier ou une sélection

Utilisez Note de fichier pour une remarque générale — architecture, test manquant ou convention à respecter. Pour une correction précise, sélectionnez du code, ouvrez le menu contextuel et choisissez Ajouter une note sur la sélection. Sans sélection, Singularity vous invite d’abord à sélectionner du code.

Les notes affichent leur portée (FILE ou les lignes concernées), peuvent être supprimées et rejoignent le retour transmis à l’agent lorsque vous choisissez Relancer avec le retour. La zone Discussion permet d’ajouter un message plus global.

Modifier directement

Le fichier affiché est modifiable quand Singularity a enregistré le chemin physique du worktree. Modifiez le contenu puis utilisez Cmd/Ctrl + S, ou le bouton Enregistrer. Les états Enregistrement…, Enregistré et les notifications d’échec confirment le résultat.

Sans chemin de worktree enregistré, l’éditeur affiche Lecture seule — aucun chemin de worktree enregistré. Vous pouvez toujours lire et copier le contenu, mais il faut relancer l’exécution dans un worktree correctement enregistré pour modifier le fichier depuis la revue.

Décider

  • Approuver et fusionner réintègre tous les fichiers lorsque chacun est approuvé.
  • Fusionner x/y réalise une fusion partielle avec les seuls fichiers approuvés ; le bouton reste désactivé tant qu’aucun fichier ne l’est.
  • Rejeter refuse la revue et marque l’exécution comme rejetée.
  • Relancer avec le retour renvoie votre message et vos annotations à l’agent ; cette action attend un retour non vide.

Une erreur de chargement du diff, de sauvegarde ou de copie est signalée sans valider silencieusement l’action : corrigez la cause, puis recommencez.

Quand il n’y a rien à relire

L’absence de diff correspond toujours à un état explicite :

  • L’agent travaille encore. Cause : le ticket est toujours en cours. Remède : suivez sa progression dans le terminal ; il apparaîtra après l’appel de fin d’exécution.
  • Déjà fusionné. Cause : la fusion automatique était active. Remède : inspectez les commits dans Graphe ; désactivez la fusion automatique pour les prochaines missions.
  • Exécution directe — aucun worktree. Cause : « Utiliser les worktrees Git » était désactivé et l’agent a écrit dans votre arborescence. Remède : activez les worktrees et désactivez la fusion automatique dans Réglages → Git → Worktrees pour les prochaines exécutions.
  • L’agent attend une réponse. Cause : une question bloque la mission. Remède : répondez depuis la carte kanban ; la revue reviendra après la reprise et la fin de l’agent.
  • Le ticket ne peut pas être révisé. Cause : son statut ou ses métadonnées ne satisfont pas les conditions de revue. Remède : consultez le statut affiché, puis relancez une exécution terminée dans un worktree non fusionné.

Si aucune exécution ne correspond, l’onglet affiche simplement « Aucun travail d’agent à réviser ».

Questions fréquentes

Pourquoi mon ticket n’apparaît-il pas dans Revue ?

Il doit être en attente, provenir d’un worktree non fusionné et ne pas attendre votre réponse. La section « Quand il n’y a rien à relire » détaille chaque cas et son remède.

Puis-je fusionner seulement une partie des changements ?

Oui. Approuvez les fichiers à conserver, puis choisissez « Fusionner x/y ». Les fichiers non approuvés ne sont pas inclus dans cette fusion.

L’agent reçoit-il mes annotations ?

Oui lors d’une relance avec retour : la discussion, les notes de fichier et les notes attachées à une sélection de code servent de contexte à la correction.