mirror of
https://github.com/langgenius/dify.git
synced 2026-10-04 13:47:55 +08:00
The streaming pipeline reports a run that threw as one ``event: error`` frame with top-level message/code and no data (ESQ1-302: Graph.init rejected a node before workflow_started, so there is no run id either). run_mapping had no representation for it: _TERMINAL_STREAM_EVENTS lists only workflow_finished/paused, so the frame was neither terminal nor a node event and the run came back "running" with the truncated-stream notice. error_from_stream_chunk reads such a frame; map_error_frame_run turns it into a FAILED Run carrying the message (whitespace collapsed, so it is a stable repair-breaker signature) and the code. map_run_result now keeps the engine's run-level error text for a failed run instead of dropping it -- a launch failure has no per-node rows, so that text is the only evidence diagnose and the breaker have. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>