Skip to content

[Feature]: Allow workflow resume to accept updated workflow inputs #2812

@doquanghuy

Description

@doquanghuy

Problem Statement

specify workflow run accepts --input key=value, but a paused run cannot receive any new or updated workflow input through specify workflow resume. workflow resume <run_id> re-runs the paused step using only the inputs captured at start time. When information needed to continue only becomes available after the run pauses, there is no supported way to supply it; the run can only re-pause or proceed with stale inputs.

Proposed Solution

Allow workflow resume to accept the same workflow inputs that workflow run already accepts, reusing the existing input model rather than introducing a new mechanism:

specify workflow resume <run_id> --input key=value [--input ...]

Design intent:

  • General-purpose resume-time input continuation — explicitly not gate-/approval-/clarification-specific (this is not a --answer/--gate-answer/--gate-script style control; see the closed feat(workflows): add --gate-script for non-interactive gate testing #2667 direction).
  • Reuse the exact typed validation path used for initial run inputs.
  • Merge supplied inputs over the run's persisted inputs; keys not supplied are unchanged.
  • Default behaviour with no --input is identical to today.

This is related to but distinct from #2405 (file-reference inputs at run time); this issue is about supplying inputs at resume time. It adds a new CLI argument, so per CONTRIBUTING.md (new arguments "make sure that it was discussed and agreed upon by the project maintainers") I'm filing this as a discussion issue first and not attaching a PR until there's agreement.

Alternatives Considered

  • Aborting and re-running the whole workflow with new --input — loses run state/history.
  • Smuggling values through files a step reads out-of-band — undocumented and not validated.

Component

Specify CLI (initialization, commands)

AI Agent (if applicable)

None — engine/CLI feature, agent-independent.

Use Cases

  • A long workflow pauses at a point where a value (path, id, flag) is discovered only mid-run; the operator resumes with that value.
  • Re-running a paused step with a corrected input after a typo, without restarting the run.

Acceptance Criteria

  • workflow resume <run_id> --input k=v resumes with k merged into the run's inputs, validated by the existing input typing.
  • Without --input, resume behaviour is unchanged.
  • Works in both interactive and non-interactive invocation.

Additional Context

AI disclosure: this issue was drafted with AI assistance (Claude); current resume behaviour (no input flag) was verified against main before filing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions