{"record":{"id":"1e3155fb2890f4f6","repo":"windmill-labs/windmill","slug":"bounded-run-failed-at-nodepath-job-id","errorCode":null,"errorMessage":"Bounded run failed at ${nodePath} (job ${id}). + (detail ? \\n${detail} : ) + \\nFull logs: ${runUrl}","messagePattern":"Bounded run failed at (.+?) \\(job (.+?)\\)\\. \\+ \\(detail \\? \\\\n(.+?) : \\) \\+ \\\\nFull logs: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"cli/src/commands/pipeline/pipeline.ts","lineNumber":1023,"sourceCode":"          path: nodePath,\n          args: nodeArgs,\n          temp_script_refs: tempScriptRefs,\n          // `// tag` routes to the same worker the deployed pipeline would.\n          ...(ls.tag ? { tag: ls.tag } : {}),\n        } as any,\n      });\n    } else {\n      id = await wmill.runScriptByPath({\n        workspace: workspace.workspaceId,\n        path: nodePath,\n        requestBody: nodeArgs,\n      });\n    }\n    const { ok, result } = await waitJob(workspace.workspaceId, id);\n    if (!ok) {\n      const detail = formatJobFailure(result);\n      const runUrl = `${workspace.remote}run/${id}?workspace=${workspace.workspaceId}`;\n      throw new Error(\n        `Bounded run failed at ${nodePath} (job ${id}).` +\n          (detail ? `\\n${detail}` : \"\") +\n          `\\nFull logs: ${runUrl}`,\n      );\n    }\n    if (!opts.json) log.info(colors.green(`  ✓ ${nodePath}`));\n  }\n  if (!opts.json) {\n    log.info(colors.green.bold(`Bounded run complete — ${order.length} script(s) succeeded.`));\n  }\n}\n\nconst command = new Command()\n  .description(\n    \"inspect asset-driven pipelines (scripts marked `// pipeline`, wired by `// on <spec>` annotations)\",\n  )\n  .command(\"list\", \"list pipeline folders in the workspace\")\n  .option(\"--json\", \"Output as JSON (for piping to jq)\")","sourceCodeStart":1005,"sourceCodeEnd":1041,"githubUrl":"https://github.com/windmill-labs/windmill/blob/e474e8803ce2ff5c2df09a58dab51d45f5c922ca/cli/src/commands/pipeline/pipeline.ts#L1005-L1041","documentation":"Failure stop in the pipeline run command: a node's job completed unsuccessfully during a bounded run, so the CLI halts the topological cascade at that node. The message names the failing node path and job id, appends the formatted job failure detail (error message/result) when available, and links the run URL for full logs. This is the CLI surfacing a remote job failure — the actual exception happened inside the job, not in the CLI.","triggerScenarios":"Thrown at cli/src/commands/pipeline/pipeline.ts:1023 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Open the run URL in the message to read the job's full logs and error","Fix the failing script (its inputs, code, or resources) and re-run the bounded range","If the failure was caused by an upstream arg, adjust the --upload/--arg bindings and retry"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e474e8803ce2ff5c2df09a58dab51d45f5c922ca","analyzedAt":"2026-09-03T12:38:19.024Z","contentChangedAt":"2026-09-03T12:38:19.024Z","schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}