获取跳过步骤的值( 使用Param) 会导致整个工作流程被挂起, 但不会出错

作者: yajun-L创建于 2026年8月21日更新于 2026年9月16日

Pre-requisites

  • I have double-checked my configuration
  • I have tested with the :latest image tag (i.e. quay.io/argoproj/workflow-controller:latest) and can confirm the issue still exists on :latest. If not, I have explained why, in detail, in my description below.
  • I have searched existing issues and could not find a match for this bug
  • I'd like to contribute the fix myself (see contributing guide)

What happened? What did you expect to happen?

I'm using withParam to start a parallel task and when to skip a certain step. When I try to get the merged result of this skipped step, the entire workflow gets stuck. Image I tried using output.valueFrom.default to set a default value for the output, but it didn't work. In version 3.7.1, I could merge values ​​from different steps like this way, but it's causing problems in version 4.1.1.

arguments:
  parameters:
    - name: in
      value: >-
        {{=concat(
        string(tasks['test-producer'].outputs.parameters) == '[]' ? [] : fromJSON(tasks['test-producer'].outputs.parameters.result),
        string(tasks['test-producer2'].outputs.parameters) == '[]' ? [] : fromJSON(tasks['test-producer2'].outputs.parameters.result),
        )}}

Version(s)

v4.1.1

内容来源: argoproj/argo-workflows