User Stories have a user story workflow. The Engineering Sub-Task type has an engineering sub-task workflow. The QA Sub-Task type has a qa sub-task workflow.
I have the following compound criteria to meet:
I've seen a few workflow plugins that allow transition of the parent if *all* sub-task types are set to a particular status or resolution. That would violate #2, however. Are there any plugins that allow you to segregate sub-task types for different transition thresholds? I've been searching and thus far I haven't found any.
From a logic perspective it could work like this:
Note: There is no allowed transition of the story from Step 2 to Step 4. That is handled at the User Story level.
Your requirements can be implemented in Jira Workflow Toolbox using two features of this plugin:
Now I explain in detail how to do it. I'm considering that "Done" is a status in sub-tasks workflows, but if it were a Resolution value it wouldn't be a problem.
Post-function Copy parsed text to a field in transition "Start Progress" in "Engineering Sub-Task" and "QA Sub-Task" workflows
This post-function will auto-transition parent issue to "Step 2" when any of the sub-tasks are moved to status "In Progress". Use the configuration shown in the screenshot. Notice that "Status of Step 2" must be replaced with the name of the status associated with Step 2:
Post-function Copy parsed text to a field in transition to status "Done" in "Engineering Sub-Task" workflow
This post-function will auto-transition parent issue to "Step 3" when the last Engineering Sub-task is moved to status "Done". This post-function work as a team with validator Validation on sub-tasks in transition "From Step 2 to Step 3" in Story workflow. Use the configuration shown in the screenshot. Notice that "Status of Step 3" must be replaced with the name of the status associated with Step 3:
Validator Validation on sub-tasks in transition "From Step 2 to Step 3" in Story workflow
This validator will prevent execution of transition from Step 2 to Step 3 unless every Engineering Sub-task is in status "Done":
Validator Validation on sub-tasks in transition "From Step 3 to Step 4" in Story workflow
This validator will prevent execution of transition from Step 3 to Step 4 unless every Engineering Sub-task and QA Sub-task is in status "Done":