← Tous les articles

Écrire sans s'arrêter : dépendances et tickets parents dans Singularity

Le truc le plus frustrant quand on utilise l'IA, c'est de savoir qu'on va créer une tâche, puis parfois attendre qu'elle soit terminée pour demander à notre IA préférée de développer la seconde.

On commence alors à écrire la suite du programme dans un notepad… et parfois on ne le fait pas, et on oublie la moitié du contexte.

Avec Singularity, on a deux systèmes qui permettent d'écrire sans s'arrêter. Ils répondent à la même question — « comment je continue à réfléchir pendant que l'IA travaille ? » — sous deux angles différents.

Les dépendances : enchaîner sans attendre

La première idée est simple : on peut décider qu'une tâche ne peut pas démarrer tant que la précédente n'est pas terminée. On écrit le ticket A, puis le ticket B, et on déclare que B dépend de A.

Concrètement, ça change tout dans le flow. Au lieu de rester devant l'écran à attendre la fin de A pour rédiger B, on vide sa tête d'un coup : A, B, C, D, dans l'ordre où ils doivent s'enchaîner. Singularity garde B en attente, le démarre automatiquement dès que A est livré, et ainsi de suite. La file se déroule toute seule, dans le bon ordre, sans qu'on ait à revenir la relancer manuellement.

Le board Singularity : le ticket F-568 « Animation notification notch » reste en To Do avec un badge « Waiting on F-565 » tant que F-565 n'est pas terminé
Sur le board, F-568 « Animation notification notch » affiche un badge « Waiting on F-565 » et reste en attente : il ne démarrera que lorsque F-565 sera terminé.

Quand l'IA détecte la dépendance que vous avez oubliée

Le plus utile, c'est ce qui se passe quand on oublie de préciser la dépendance.

On écrit deux tickets à la suite, persuadé qu'ils sont indépendants. Mais le ticket B suppose une API, un écran ou une migration qui n'existe que dans le ticket A. Singularity le détecte et signale que le ticket B sera compliqué à traiter sans le ticket A… qui en devient la dépendance.

Si Singularity vous prévient qu'un ticket en suppose un autre, c'est qu'il a lu les deux et compris que le second s'appuie sur quelque chose que le premier doit livrer d'abord. Vous gardez la main : vous validez la dépendance proposée, ou vous l'écartez. Mais vous ne découvrez plus le blocage au pire moment — au milieu de l'exécution, quand l'agent bute sur ce qui n'existe pas encore.

Les tickets parents : découper une tâche trop grosse

Le deuxième système agit en amont. Notre application préqualifie tous les tickets qu'elle reçoit. Cette préqualification permet de découper une tâche trop grosse — comme en agilité — pour la traiter en plusieurs fois.

Pourquoi découper ? Parce qu'une tâche énorme donne un gros commit illisible, un agent qui se disperse et un résultat difficile à relire. En la cassant en sous-tickets, on obtient des commits séparés, un contenu plus propre, et chaque morceau reste à une taille que l'IA traite proprement, en une passe.

Un ticket parent n'est donc pas qu'une étiquette : c'est une tâche-mère qui se résout à travers ses enfants. Et la préqualification ne s'arrête pas là — elle peut aussi rendre les sous-tâches dépendantes les unes des autres. Les deux systèmes se rejoignent : le découpage produit l'ordre, les dépendances le font respecter.

Pourquoi ça change le flow

Mis bout à bout, dépendances et tickets parents suppriment le temps mort qui ronge le travail avec l'IA. On ne s'arrête plus pour attendre, on n'ouvre plus de notepad parallèle, on ne perd plus le contexte entre deux idées.

On pense le programme en entier, on l'écrit en entier, et Singularity se charge de l'ordonner et de l'exécuter dans le bon ordre. L'IA travaille pendant qu'on réfléchit à la suite — au lieu de l'inverse.

Ça vous intrigue ? Venez le tester. C'est gratuit.

Foire aux questions

Qu'est-ce qu'une dépendance entre tickets dans Singularity ?

C'est une règle qui empêche un ticket de démarrer tant qu'un autre n'est pas terminé. On déclare que le ticket B dépend du ticket A : Singularity garde B en attente et le lance automatiquement dès que A est livré. Cela permet d'écrire toute une suite de tâches d'un coup sans rester devant l'écran.

Que se passe-t-il si j'oublie de déclarer une dépendance ?

Singularity lit les tickets et détecte quand l'un suppose un autre. Si le ticket B s'appuie sur une API, un écran ou une migration livrés par le ticket A, l'application signale que B sera compliqué à traiter sans A et propose A comme dépendance. Vous restez libre de valider ou d'écarter la suggestion.

Qu'est-ce qu'un ticket parent ?

C'est le résultat de la préqualification : quand une tâche est trop grosse, Singularity la découpe en sous-tickets — comme en agilité. La tâche-mère se résout à travers ses enfants, ce qui donne des commits séparés, un contenu plus propre, et des morceaux assez petits pour que l'IA les traite proprement en une passe.

Faut-il déclarer les dépendances manuellement ?

Non, pas forcément. Vous pouvez les déclarer vous-même quand vous savez qu'un ticket en bloque un autre, mais Singularity les détecte aussi automatiquement à la préqualification — y compris entre les sous-tickets d'un même ticket parent.