Aller au contenu
Toutes les ressources

Guide · Gestion d’une entreprise de services

Que se passe-t-il quand un workflow s’exécute deux fois ou échoue en cours de route ?

Suivez des résultats réels de doublon, de double validation et de connexion en échec, puis voyez ce qu’une vraie conception du rattrapage exige encore.

Rédigé par Fireflax · 8 minutes de lecture

Relu par Codex — source and implementation review ·

Une nouvelle tentative doit savoir ce qui s’est déjà passé.

Une demande peut arriver deux fois. Une personne peut valider deux fois. Une connexion peut échouer alors qu’une partie du workflow s’est déjà exécutée. Ce sont des situations différentes : avant de répéter quoi que ce soit, identifiez la demande, l’action prévue et la preuve de son résultat.

L’exemple utilisé ici

Ce guide s’appuie sur l’exemple fictif de demandes de Northstar Plumbing, vérifié le 8 octobre 2026. Ses règles et ses modèles s’exécutent en local. Il n’y a ni e-mail, ni écriture dans un CRM, ni connexion réelle. Son interrupteur de connexion en échec est une simulation contrôlée, pas un test de panne en production.

L’exemple conserve la fiche et redemande.

Reçue → En attente de votre validation

La validation réussit → Démo terminée, ou En attente de précisions si des informations manquent.

Échec simulé → Connexion en pause

Rétablir la connexion d’exemple → En attente de votre validation → lire le brouillon → valider à nouveau.

La même demande locale survit au rétablissement. Rétablir efface sa validation ; cela ne valide ni n’envoie la prochaine action.

Dans la démo du navigateur, réinitialisez et lancez « Nouvelle intervention ». Cochez « Simuler un échec de connexion sur cette validation », puis « Valider la réponse de démo ». Examinez « Connexion en pause » et son historique. Sélectionnez « Rétablir la connexion d’exemple », relisez le texte et validez. Le bouton de rétablissement décoche la case d’échec pour que la validation suivante puisse terminer l’exemple.

Reproduire l’échec et le rétablissement dans la démo

Qu’est-ce qui est conservé, et qu’est-ce qui ne peut pas se répéter ?

  • La même demande, à nouveau

    Attendu: Reconnaître l’e-mail, la zone et le message normalisés dans la file actuelle.

    Observé: Identifiant existant renvoyé ; aucune tâche ni historique supplémentaire. Une formulation modifiée peut devenir une nouvelle demande.

  • Une nouvelle validation

    Attendu: Seule une fiche en attente de relecture accepte une validation.

    Observé: Une fiche terminée, bloquée ou en attente de détails ne peut pas être revalidée directement.

  • Validation en échec

    Attendu: Conserver suffisamment de contexte pour examiner le rattrapage.

    Observé: Même fiche, saisie d’origine, brouillon, texte validé et historique conservés à l’état bloqué.

  • Rétablissement

    Attendu: Exiger une nouvelle relecture plutôt que de rejouer automatiquement.

    Observé: Même fiche et même brouillon conservés ; validation précédente effacée ; l’état revient en relecture.

Les informations manquantes restent manquantes après le rétablissement. Si une demande incomplète est validée après le rattrapage, elle revient à « En attente de précisions ». Une nouvelle tentative n’invente pas de zone, ne confirme pas de rendez-vous et ne reçoit pas la réponse d’un client.

Un vrai échec partiel est plus difficile.

Imaginez un workflow connecté qui met à jour une fiche d’intervention, puis perd la confirmation avant d’enregistrer la réussite en local. Son statut local peut être incertain alors même que la destination a changé. Répéter tout le workflow pourrait répéter un effet externe.

C’est un cas de production hypothétique ; l’exemple Fireflax ne le simule pas. Une vraie mise en place a besoin d’identifiants durables pour les demandes et les actions prévues, d’un historique conservé des résultats, de vérifications de la destination et d’une règle pour les résultats incertains. La mémoire du navigateur et la correspondance du texte des messages ne suffisent pas à elles seules.

Le kit de démarrage hors ligne conserve un fichier local et propose une commande de pause explicite, mais cela reste une répétition en un seul processus. Il n’établit ni des nouvelles tentatives simultanées sûres, ni une livraison exactement une fois, ni une disponibilité en production, ni un retour arrière entre systèmes.

Utilisez cette checklist de rattrapage.

  1. Mettez en pause et conservez. Arrêtez le workflow concerné selon la procédure convenue. Conservez la demande, les versions, l’erreur et les preuves du résultat.
  2. Examinez la destination. Vérifiez si le message, la fiche ou l’autre changement prévu a eu lieu. Classez-le comme fait, non fait ou incertain.
  3. Évitez un renvoi à l’aveugle. Levez l’incertitude avec la personne responsable et les preuves du système. Vérifiez les identifiants de demande et d’action ainsi que la règle anti-doublon.
  4. Rétablissez avec le responsable des autorisations. Réparez ou réautorisez la connexion réelle si nécessaire. Rétablir l’accès n’autorise pas à rejouer toutes les actions.
  5. Relisez à nouveau. Revérifiez la dernière demande et tout changement de conversation, de brouillon ou de préférence de contact. Obtenez une nouvelle validation si nécessaire.
  6. Vérifiez un seul résultat prévu. N’exécutez que la prochaine action autorisée, examinez son résultat et notez ce qui s’est passé avant de reprendre le travail normal.

Désignez le responsable et le suppléant de ces étapes. Réinitialiser une fiche interne ne peut pas annuler un message déjà envoyé. Toute correction ou annulation demande ses propres autorisations et des limites confirmées.

Gardez les preuves avec la passation.

Les exécutions conservées sur le code source et sur le kit de démarrage couvrent chacune cinq cas définis, dont la validation répétée et la validation en échec avec rattrapage. Elles consignent les entrées synthétiques, les états exacts et l’historique. La suite séparée de 21 tests du dépôt vérifie aussi le rattrapage des informations manquantes. Ces contrôles limités étayent les descriptions ci-dessus ; ils ne garantissent pas la livraison.

Sources et notes de relecture

Rédigé avec Codex et vérifié par rapport à des tests exécutés sur l’exemple fictif, au code source et à une répétition indépendante du kit de démarrage par Codex. Ces résultats n’établissent ni une intégration réelle ni un résultat client.