temporalio / temporalio/temporal

Support for selecting "Workflow Id Conflict Policy" for child workflows

Open
#7,882 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
23.2k
Forks
1.9k
Avg merge
2d 8h
Merged PRs (30d)
228

Description

Is your feature request related to a problem? Please describe.
I have a setup where an orchestrator workflow calls child workflows. The parent workflow defines the "top-level" logic (much like a flowchart) and delegates the specifics to the children. The pattern works well in my use case since the goal is to isolate the parent workflow from the implementation details of each step.

In case the parent must be reset, I would like its children to be reused with a "Use Existing" reuse policy. The challenge is that this option is not supported when starting a child workflow.

Describe the solution you'd like
Support for selecting the "Workflow Id Conflict Policy" when starting a child workflow (in Python).

Describe alternatives you've considered

  • Redesigning our use pattern with workflows and child workflows.
  • Selecting the "Workflow Id Reuse Policy" to "Terminate if Running." Not ideal since the child Workflow could still be healthy.

Additional context
I am using the Python SDK, but noticed the option is also not present in the other SDKs.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin with the Python SDK's child-workflow start API and trace the corresponding service/API definition; compare how workflow ID conflict policy is represented for top-level starts versus child starts. Done means callers can select Use Existing when starting a child workflow and the option is consistently supported across the SDKs mentioned.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, python
Domain
backend-api-design, distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.