n8n Sub Workflow HITL-Probleme (aufgerufen durch KI-Agent)

Beschreibe das Problem/den Fehler/die Frage

In Version 2.23.4 hatte ich einen Haupt-Workflow, der einen KI-Agent verwendet würde, um einen Sub-Workflow aufzurufen, in dem der Sub-Workflow einen KI-Agent aufruft, der mit einem Überprüfungsschritt (Slack) und Tools (Google Calendar) verbunden ist. Der Sub-Workflow würde ein Tool aufrufen und einem Benutzer eine Bestätigungsmitteilung senden, bevor eine Aktion ausgeführt wird. Der Benutzer würde die Aktionsdetails bestätigen oder ablehnen, und dies würde eine Antwort sein, die dem Sub-Workflow gegeben wird, und der Sub-Workflow würde sie an den Haupt-Workflow senden. In Version 2.33.4 und 2.34.5 schlägt jedoch der Haupt-Workflow fehl, wenn der Sub-Workflow den Überprüfungsschritt erreicht. Der Sub-Workflow zeigt immer an, dass keine Antwort vorhanden ist, obwohl er nach dem Bestätigungsschritt korrekt läuft.
Ich bin neugierig, warum dies in einer älteren Version von n8n funktioniert hat, aber sobald es auf die neue Version aktualisiert wurde, tritt ein Fehler auf. Ich hoffe, einige Erkenntnisse darüber zu bekommen, ob dies eine n8n-Einschränkung oder ein Konfigurationsproblem meinerseits ist. Ich bin auch offen für Vorschläge, wie ich meine Workflow-Architektur verbessern kann. Jede Einsicht wird geschätzt.

Welche Fehlermeldung gibt es (falls vorhanden)? Problem im Knoten [Sub Workflow]

Es ist ein Fehler aufgetreten: „Der Workflow hat keine Antwort zurückgegeben.".

Bitte teile deinen Workflow

Haupt-Workflow: Slack-Trigger -> KI-Agent { Ruft Sub-Workflow auf } -> Slack-Antwort

Sub-Workflow: Wird durch anderen Workflow ausgelöst -> KI-Agent {Ruft Slack-Überprüfungsschritt auf -> Wenn bestätigt, fahre fort, um Tools auszuführen (Google Calendar) Wenn abgelehnt, gib aus: Aktion wurde abgebrochen.} -> Set Field (response: KI-Ausgabe)

Teile die Ausgabe, die vom letzten Knoten zurückgegeben wird

Im Haupt-Workflow wird keine Ausgabe gegeben. Der Workflow wird unterbrochen und es wird ein Fehler angezeigt, dass keine Ausgabe vorhanden ist. Er wird vorzeitig beendet, bevor der Sub-Workflow vollständig ausgeführt ist.

Informationen zu deinem n8n-Setup

  • n8n Version: 2.33.4 und 2.34.5
  • Datenbank (Standard: SQLite):
  • n8n EXECUTIONS_PROCESS-Einstellung (Standard: own, main): Standard
  • n8n läuft über (Docker, npm, n8n cloud, Desktop-App): Docker
  • Betriebssystem: Ubuntu 26.04 LTS

@Ethan0034

Das klingt wie eine Regression. Vielleicht einen Fehlerbericht einreichen?

@kjooleng @Ethan0034 Das ist ein Bug auf GitHub und er wurde behoben, daher denke ich, dass es ein Rückfall ist

und

Hallo @Ethan0034 Willkommen!
Die Unter-Ausführung wechselt in einen Wartezustand am Slack-Review-Knoten, und der Aufruf des übergeordneten Tools wird dort aufgelöst statt am Ende des Unter-Workflows, was die leere Antwort verursacht. Seit Version 2.6 kann die Überprüfung stattdessen auf der Tool-Verbindung im Hauptworkflow sitzen, sodass nichts im Unter-Workflow jemals wartet.
Klick auf der Verbindung vom AI Agent zum Tool, das du bestätigen möchtest, auf das ±Symbol und wähle „Human Review Step hinzufügen

@Ethan0034
Es wird empfohlen, die stabile Version 2.31.4 zu verwenden

Ich würde dieser Architektur zustimmen.

Das Kleine, das ich hinzufügen würde, ist, den Schritt vor der Überprüfung dazu zu bringen, eine einfache Review-Payload zurückzugeben, anstatt das Sub-Workflow wie ein Mini-Gespräch für sich wirken zu lassen.

Etwa so:

```

status: needs_review

tool_name: create_calendar_event

summary: plain language summary for Slack

proposed_payload: the exact data that will be sent

on_approve: run calendar action

on_deny: stop and return a clean denial message

```

Das gibt dem menschlichen Reviewer etwas Konkretes zum Genehmigen, und es gibt dem übergeordneten Workflow ein sauberes Objekt zum Protokollieren/Debuggen. Nach meiner Erfahrung werden HITL-Flows schnell fragil, wenn der Genehmigungsschritt, die Aktionsausführung und die endgültige Agent-Antwort alle innerhalb desselben verschachtelten Tool-Aufrufs verborgen sind.

Neue Version n8n@2.39.0 wurde veröffentlicht, die den GitHub PR 37087 enthält.

Neue Version n8n@2.39.8 wurde veröffentlicht, die den GitHub PR 38949 enthält.