refactor(core): Report malformed execution data (#12525)

This commit is contained in:
Iván Ovejero 2025-01-09 11:51:07 +01:00 committed by GitHub
parent a9077bb6f1
commit 7583e2ad94
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1210,7 +1210,27 @@ export class WorkflowExecute {
this.status = 'running'; this.status = 'running';
const startNode = this.runExecutionData.executionData!.nodeExecutionStack[0].node.name; if (!this.runExecutionData.executionData) {
throw new ApplicationError('Failed to run workflow due to missing execution data', {
extra: {
workflowId: workflow.id,
executionid: this.additionalData.executionId,
mode: this.mode,
},
});
}
const startNode = this.runExecutionData.executionData.nodeExecutionStack.at(0)?.node.name;
if (!startNode) {
throw new ApplicationError('Failed to run workflow due to empty node execution stack', {
extra: {
workflowId: workflow.id,
executionId: this.additionalData.executionId,
mode: this.mode,
},
});
}
let destinationNode: string | undefined; let destinationNode: string | undefined;
if (this.runExecutionData.startData && this.runExecutionData.startData.destinationNode) { if (this.runExecutionData.startData && this.runExecutionData.startData.destinationNode) {
@ -1245,7 +1265,7 @@ export class WorkflowExecute {
if (this.runExecutionData.waitTill) { if (this.runExecutionData.waitTill) {
const lastNodeExecuted = this.runExecutionData.resultData.lastNodeExecuted as string; const lastNodeExecuted = this.runExecutionData.resultData.lastNodeExecuted as string;
this.runExecutionData.executionData!.nodeExecutionStack[0].node.disabled = true; this.runExecutionData.executionData.nodeExecutionStack[0].node.disabled = true;
this.runExecutionData.waitTill = undefined; this.runExecutionData.waitTill = undefined;
this.runExecutionData.resultData.runData[lastNodeExecuted].pop(); this.runExecutionData.resultData.runData[lastNodeExecuted].pop();
} }