{"record":{"id":"3b5d8df9c0e8d460","repo":"ruvnet/ruflo","slug":"b-name-failed-to-start","errorCode":null,"errorMessage":"[${b.name}] failed to start","messagePattern":"\\[(.+?)\\] failed to start","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"ruflo/src/mcp-bridge/index.js","lineNumber":310,"sourceCode":"    }\n  }\n  return filtered;\n}\n\nasync function initBackends() {\n  const needed = BACKEND_DEFS.filter(isBackendNeeded);\n  if (needed.length === 0) return;\n\n  console.log(`Starting ${needed.length} MCP backends: ${needed.map(b => b.name).join(\", \")}`);\n\n  await Promise.allSettled(\n    needed.map(async (b) => {\n      const client = new StdioMcpClient(b.name, b.command, b.args);\n      const ok = await client.start();\n      if (ok) {\n        mcpBackends.set(b.name, client);\n      } else {\n        console.warn(`[${b.name}] failed to start`);\n      }\n    })\n  );\n\n  allBackendTools = getActiveTools();\n  console.log(`MCP backends: ${mcpBackends.size} active, ${allBackendTools.length} tools (filtered by groups)`);\n}\n\nprocess.on(\"SIGTERM\", () => { for (const [, c] of mcpBackends) c.stop(); process.exit(0); });\nprocess.on(\"SIGINT\", () => { for (const [, c] of mcpBackends) c.stop(); process.exit(0); });\n\n// =============================================================================\n// BUILT-IN TOOLS (core group — always on)\n// =============================================================================\n\nconst BUILTIN_TOOLS = [\n  {\n    name: \"search\",","sourceCodeStart":292,"sourceCodeEnd":328,"githubUrl":"https://github.com/ruvnet/ruflo/blob/fa13ee4ad60ac2090b1480656eb233521790d640/ruflo/src/mcp-bridge/index.js#L292-L328","documentation":"Log warning in initBackends: StdioMcpClient.start() returned false for a needed MCP backend; that backend is omitted from the backend map and its tools are simply unavailable, while the remaining backends still start.","triggerScenarios":"Thrown at ruflo/src/mcp-bridge/index.js:310 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the bridge process stderr/logs for the named server; fix its configuration or command and restart the bridge."],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fa13ee4ad60ac2090b1480656eb233521790d640","analyzedAt":"2026-08-18T21:34:22.708Z","contentChangedAt":"2026-08-18T21:34:22.708Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}