Problème d'exécution aléatoire du nœud n8n pour la même invite

Je rencontre un problème étrange dans n8n où, pour un prompt et un workflow identiques, certains nœuds affichent aléatoirement qu’aucune donnée n’est renvoyée, même si les données sont réellement disponibles. Parfois, le workflow s’exécute correctement, et d’autres fois, il échoue sans aucune modification du flux ou de la configuration.

Ce problème semble incohérent et difficile à reproduire de manière fiable. Je suis actuellement en train de déboguer et d’identifier la cause première de ce comportement.

J’ai auto-hébergé n8n dans ma VM ARM (Ubuntu)

@Hari_Malam quel(s) nœud(s) exactement retourne(nt) des résultats vides par intermittence — est-ce un nœud d’agent IA / modèle de chat, ou un nœud de requête HTTP / base de données ordinaire ? ça change complètement la cause. si c’est un nœud IA, une sortie vide par intermittence = généralement du non-déterminisme du modèle ou l’agent qui décide en cours d’exécution de sauter l’appel d’outil. si HTTP/DB, plus probablement un problème de synchronisation ou une limitation de débit en amont.

ceci est mon flux complet où au nœud final j’ai effectivement les données du premier nœud mais parfois il affiche une erreur

enfin le nœud de réponse whatsapp > j’obtiens des valeurs undefined du nœud de déclenchement whatsapp même si j’ai ceci…

tu peux voir que le côté gauche a des données et j’ai glissé et déposé ce champ

Je pense que le problème vient de votre syntaxe d’expression dans les nœuds WhatsApp Reply. Vous utilisez :

{{ $('WhatsApp Trigger').item.json.metadata.phone_number_id }}

Remplacez toutes les références de .item.json par .first().json :

  • Sender : {{ $('WhatsApp Trigger').first().json.metadata.phone_number_id }}

  • Recipient : {{ $('WhatsApp Trigger').first().json.contacts[0].wa_id }}

.item essaie de retracer le chemin d’exécution jusqu’au déclencheur, ce qui échoue par intermittence dans les flux de travail ramifiés avec routage par agent IA. .first() extrait toujours le premier élément de la sortie de ce nœud, quel que soit le chemin d’exécution. Puisque vous ne recevez qu’un seul message WhatsApp par déclencheur, .first() est sûr et fiable ici.

Voilà pourquoi ça fonctionne parfois et échoue d’autres fois : quand le chemin d’exécution de l’agent IA est direct, .item se résout correctement. Quand l’agent effectue des appels d’outils supplémentaires ou que le routage est plus complexe, le chemin devient ambigu et .item retourne undefined.

Dites-moi si ça vous aide

le problème était aléatoire…
parfois ça se produisait…
pour l’instant ça fonctionne bien avec ta solution…
merci pour ton support