{"record":{"id":"45e96e2737e7f61c","repo":"FlowiseAI/Flowise","slug":"execute-flow-node-name-is-required","errorCode":null,"errorMessage":"Execute Flow node name is required!","messagePattern":"Execute Flow node name is required!","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/components/nodes/sequentialagents/ExecuteFlow/ExecuteFlow.ts","lineNumber":154,"sourceCode":"\n            const searchOptions = options.searchOptions || {}\n            const chatflows = await appDataSource.getRepository(databaseEntities['ChatFlow']).findBy(searchOptions)\n\n            for (let i = 0; i < chatflows.length; i += 1) {\n                const data = {\n                    label: chatflows[i].name,\n                    name: chatflows[i].id\n                } as INodeOptionsValue\n                returnData.push(data)\n            }\n            return returnData\n        }\n    }\n\n    async init(nodeData: INodeData, input: string, options: ICommonObject): Promise<any> {\n        const selectedFlowId = nodeData.inputs?.selectedFlow as string\n        const _seqExecuteFlowName = nodeData.inputs?.seqExecuteFlowName as string\n        if (!_seqExecuteFlowName) throw new Error('Execute Flow node name is required!')\n        const seqExecuteFlowName = _seqExecuteFlowName.toLowerCase().replace(/\\s/g, '_').trim()\n        const startNewSession = nodeData.inputs?.startNewSession as boolean\n        const appDataSource = options.appDataSource as DataSource\n        const databaseEntities = options.databaseEntities as IDatabaseEntity\n        const sequentialNodes = nodeData.inputs?.sequentialNode as ISeqAgentNode[]\n        const seqExecuteFlowInput = nodeData.inputs?.seqExecuteFlowInput as string\n        const overrideConfig =\n            typeof nodeData.inputs?.overrideConfig === 'string' &&\n            nodeData.inputs.overrideConfig.startsWith('{') &&\n            nodeData.inputs.overrideConfig.endsWith('}')\n                ? JSON.parse(nodeData.inputs.overrideConfig)\n                : nodeData.inputs?.overrideConfig\n\n        if (!sequentialNodes || !sequentialNodes.length) throw new Error('Execute Flow must have a predecessor!')\n\n        const baseURL = (nodeData.inputs?.baseURL as string) || (options.baseURL as string)\n        const returnValueAs = nodeData.inputs?.returnValueAs as string\n","sourceCodeStart":136,"sourceCodeEnd":172,"githubUrl":"https://github.com/FlowiseAI/Flowise/blob/abe4a8601a058047b350c260676826e21dd14101/packages/components/nodes/sequentialagents/ExecuteFlow/ExecuteFlow.ts#L136-L172","documentation":"Each Execute Flow sequential node requires a display name; the name is slugified (lowercased, spaces to underscores) into the LangGraph node identifier. Thrown at init when inputs.seqExecuteFlowName is empty.","triggerScenarios":"The 'Execute Flow Node Name' parameter was left blank when the node was added or edited.","commonSituations":"Newly added node saved before naming; name field cleared during an edit; programmatic chatflow build omitting the field.","solutions":["Enter a unique, non-empty name in the 'Execute Flow Node Name' field.","Avoid duplicating another sequential node's name in the same flow (the slugified id collides in the graph)."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"const name = (nodeData.inputs?.seqExecuteFlowName ?? '').trim()\nif (!name) throw new Error('Provide an Execute Flow Node Name before init')","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Make the name field required in your chatflow authoring checklist.","Ensure slugified names are unique across the flow."],"tags":["sequential-agents","execute-flow","naming","init"],"backgroundTag":null,"analyzedSha":"abe4a8601a058047b350c260676826e21dd14101","analyzedAt":"2026-08-12T16:04:40.823Z","schemaVersion":2},"datasetVersion":"2026-08-12T18:17:37.767Z"}