While license expired, JIRA created issues with invalid workflows (Assign option only available)

Issue #515 resolved
Hubert Gabel created an issue

While we temporarily did not have a valid license, our users saw this message.

"Error creating issue: A VALID LICENSE FOR JIRA WORKFLOW TOOLBOX PLUGIN IS REQUIRED. PLEASE, CONTACT YOUR JIRA ADMINISTRATOR."

Apparently issues were created, with invalid Workflows and Assign was basically only available option.

  • To work around this, Administrator Moved the issues to another Issue Type, which has another than original Workflow, one which does not use this add-on, and then Moves it back to original Issue type

Perhaps there is another solution possible?

Testing_revolution.JPG

Comments (8)

  1. Fidel Castro Armario repo owner

    Hi Hubert,

    First of all, sorry for the annoyance caused by the plugin, but that's not the intended behavior when not valid licenses are found. Indeed, the normal behavior under that circumstances is the following:

    • Conditions: always return false.
    • Validations: always return an error message, and transition is not executed.
    • Post-functions: throws an error and prevent transition from being executed.
    • Custom fields: return null, i.e., stop being shown in the screens.

    Transitions in JIRA behaves as transactions, thus if a post-function throws an error (exception indeed), issue should be restored to status previous to transition execution attempt.

    If JIRA had behaved as expected, the problem you have experienced wouldn't have been possible.

    Can you please attach a XML export of your workflow, and tell me which transition was executed resulting in the problem you have described? If you prefer it, you can send the workflow to support@workflowarts.com.

  2. Hubert Gabel reporter

    Hi Fidel,

    thanks for your reply. In attached Workflow Post-function while Create did throw an error and did not prevent transition being executed. For us it is not a show stopper and it might help you to find why it did not act as you expected..

    We use your add-on - to propagate Tempo Timesheets's Account info from Epic - to newly created Child issues while create, - with a correction possibility at New (transition B: Account). - If no Epic or no Account info, Issue is to be created without the Account info.

    Obviously, our users did see the error message, and yet JIRA did create the issues ...

    Error message noValidLicense.JPG

    Workflow plx Software Workflow.JPG

    workflow xml (I am not allowed to attach it so it is enclosed as code)

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE workflow PUBLIC "-//OpenSymphony Group//DTD OSWorkflow 2.8//EN" "http://www.opensymphony.com/osworkflow/workflow_2_8.dtd">
    <workflow>
      <meta name="jira.description">Workflow for issues related to bugs</meta>
      <meta name="jira.update.author.key">hubert gabel</meta>
      <meta name="jira.updated.date">1487242734631</meta>
      <initial-actions>
        <action id="1" name="Create" view="fieldscreen">
          <meta name="jira.description">Create this Issue and have it checked by Bug Master</meta>
          <meta name="jira.fieldscreen.id">10009</meta>
          <validators>
            <validator name="" type="class">
              <arg name="permission">Create Issue</arg>
              <arg name="class.name">com.atlassian.jira.workflow.validator.PermissionValidator</arg>
            </validator>
          </validators>
          <results>
            <unconditional-result old-status="null" status="open" step="1">
              <post-functions>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueCreateFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">1</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
                <function type="class">
                  <arg name="cumulativeOperation">false</arg>
                  <arg name="mathOperation">max</arg>
                  <arg name="expression"></arg>
                  <arg name="sourceExpression"></arg>
                  <arg name="includeSisterSubtasks">false</arg>
                  <arg name="recursiveOperation">false</arg>
                  <arg name="selectedTargetField">12105</arg>
                  <arg name="issueTypes">10013,10011,10010,10100,10208,10009,10207,10801,10206,10800,10008,10700,10205,10007,10601,10600,10203,10500,10401,10202,10400,10201,10300</arg>
                  <arg name="parametrizationVersion">1</arg>
                  <arg name="dontOverwrite">false</arg>
                  <arg name="actingUser">field_00020</arg>
                  <arg name="selectedSourceField">12105</arg>
                  <arg name="includeSubtasks">false</arg>
                  <arg name="sourceType">field</arg>
                  <arg name="outwardIssueLinkTypes"></arg>
                  <arg name="full.module.key">com.fca.jira.plugins.workflowToolbox.workflow-toolboxread-linked-issues</arg>
                  <arg name="conditionOnPostfunction"></arg>
                  <arg name="fixedActingUser"></arg>
                  <arg name="inwardIssueLinkTypes">10200</arg>
                  <arg name="statuses"></arg>
                  <arg name="projectCondition">any</arg>
                  <arg name="class.name">com.fca.jira.plugins.workflowToolbox.ReadLinkedIssuesFunction</arg>
                </function>
                <function type="class">
                  <arg name="sourceField">customfield_12105</arg>
                  <arg name="full.module.key">com.googlecode.jira-suite-utilitiescopyValueFromOtherField-function</arg>
                  <arg name="copyType">parent</arg>
                  <arg name="class.name">com.googlecode.jsu.workflow.function.CopyValueFromOtherFieldPostFunction</arg>
                  <arg name="destinationField">customfield_12105</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
      </initial-actions>
      <common-actions>
        <action id="321" name="PO: Nice to have">
          <meta name="opsbar-sequence">2</meta>
          <meta name="jira.description">note: Issues, when planned, will be counted for in your Sprint </meta>
          <meta name="jira.fieldscreen.id"></meta>
          <restrict-to>
            <conditions>
              <condition type="class">
                <arg name="class.name">com.googlecode.jsu.workflow.condition.UserIsInAnyGroupsCondition</arg>
                <arg name="hidGroupsList">jira-administrators@@jira-bugmaster@@jira-pm-po-sm@@</arg>
              </condition>
            </conditions>
          </restrict-to>
          <results>
            <unconditional-result old-status="null" status="null" step="13">
              <post-functions>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="181" name="D: Start progress">
          <meta name="jira.description">Developer: Shortcut for Short trackers ... 
    Usage: quickly Create, Assign and Start Progress on this Issue</meta>
          <meta name="jira.fieldscreen.id"></meta>
          <restrict-to>
            <conditions type="OR">
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-administrators</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-bugmaster</arg>
                </condition>
              </conditions>
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-development</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                </condition>
              </conditions>
            </conditions>
          </restrict-to>
          <validators>
            <validator name="" type="class">
              <arg name="contextHandling"></arg>
              <arg name="hidFieldsList">assignee@@</arg>
              <arg name="class.name">com.googlecode.jsu.workflow.validator.FieldsRequiredValidator</arg>
            </validator>
          </validators>
          <results>
            <unconditional-result old-status="Not Done" status="Done" step="6">
              <post-functions>
                <function type="class">
                  <arg name="field.name">priority</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                  <arg name="field.value">1</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="261" name="D: Commit" view="fieldscreen">
          <meta name="opsbar-sequence">1</meta>
          <meta name="jira.description">Developer: Issue has been worked on, ready to be Merged by MergeMaster</meta>
          <meta name="jira.fieldscreen.id">3</meta>
          <restrict-to>
            <conditions type="OR">
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-administrators</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-bugmaster</arg>
                </condition>
              </conditions>
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-development</arg>
                </condition>
              </conditions>
            </conditions>
          </restrict-to>
          <validators>
            <validator name="" type="class">
              <arg name="contextHandling"></arg>
              <arg name="hidFieldsList">fixVersions@@</arg>
              <arg name="class.name">com.googlecode.jsu.workflow.validator.FieldsRequiredValidator</arg>
            </validator>
          </validators>
          <results>
            <unconditional-result old-status="null" status="null" step="12">
              <post-functions>
                <function type="class">
                  <arg name="field.name">resolution</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                  <arg name="field.value">10004</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="341" name="PO: Reschedule">
          <meta name="jira.description"></meta>
          <meta name="jira.fieldscreen.id"></meta>
          <results>
            <unconditional-result old-status="null" status="null" step="5">
              <post-functions>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="121" name="D: Reschedule">
          <meta name="opsbar-sequence">2</meta>
          <meta name="jira.description">Developer: Something happened, I need to te Reschedule this Issue .. Send to Development BackLog</meta>
          <meta name="jira.fieldscreen.id"></meta>
          <restrict-to>
            <conditions type="OR">
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-administrators</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-bugmaster</arg>
                </condition>
              </conditions>
              <condition type="class">
                <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                <arg name="group">jira-development</arg>
              </condition>
            </conditions>
          </restrict-to>
          <results>
            <unconditional-result old-status="Not Done" status="Done" step="5">
              <post-functions>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="91" name="B: Accept" view="fieldscreen">
          <meta name="jira.description">Bug Master: Accept the description of the Issue and send to Development's backlog</meta>
          <meta name="jira.fieldscreen.id">10011</meta>
          <restrict-to>
            <conditions type="OR">
              <condition type="class">
                <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                <arg name="group">jira-administrators</arg>
              </condition>
              <condition type="class">
                <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                <arg name="group">jira-bugmaster</arg>
              </condition>
            </conditions>
          </restrict-to>
          <results>
            <unconditional-result old-status="Not Done" status="Done" step="5">
              <post-functions>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="331" name="PO: Should Have">
          <meta name="opsbar-sequence">1</meta>
          <meta name="jira.description">note: Issues, when planned, will be counted for in your Sprint </meta>
          <meta name="jira.fieldscreen.id"></meta>
          <restrict-to>
            <conditions>
              <condition type="class">
                <arg name="class.name">com.googlecode.jsu.workflow.condition.UserIsInAnyGroupsCondition</arg>
                <arg name="hidGroupsList">jira-administrators@@jira-bugmaster@@jira-pm-po-sm@@</arg>
              </condition>
            </conditions>
          </restrict-to>
          <results>
            <unconditional-result old-status="null" status="null" step="14">
              <post-functions>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
        <action id="111" name="D: Start progress">
          <meta name="opsbar-sequence">3</meta>
          <meta name="jira.description">Developer: I've got this! Issue Assigned and I / we Start progressing towards the solution</meta>
          <meta name="jira.fieldscreen.id"></meta>
          <restrict-to>
            <conditions type="OR">
              <conditions type="OR">
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-administrators</arg>
                </condition>
                <condition type="class">
                  <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                  <arg name="group">jira-bugmaster</arg>
                </condition>
              </conditions>
              <condition type="class">
                <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
              </condition>
            </conditions>
          </restrict-to>
          <results>
            <unconditional-result old-status="Not Done" status="Done" step="6">
              <post-functions>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                </function>
                <function type="class">
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                </function>
                <function type="class">
                  <arg name="eventTypeId">13</arg>
                  <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                  <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                </function>
              </post-functions>
            </unconditional-result>
          </results>
        </action>
      </common-actions>
      <steps>
        <step id="1" name="New">
          <meta name="jira.status.id">1</meta>
          <actions>
    <common-action id="181" />
            <action id="11" name="B: Unclear Report" view="fieldscreen">
              <meta name="opsbar-sequence">3</meta>
              <meta name="jira.description">Bug Master: More info required: send to Reporter</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="2">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="21" name="B: Analyse" view="fieldscreen">
              <meta name="opsbar-sequence">2</meta>
              <meta name="jira.description">Bug Master: QA Analysis required for additional Info, Reproducibility, Comments.
    Let QA Create Test Item or Update / refer to existing Test Item</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="3">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="31" name="B: Accept">
              <meta name="opsbar-sequence">1</meta>
              <meta name="jira.description">Bug Master: Accept the description of the Issue and send to Development's backlog</meta>
              <meta name="jira.fieldscreen.id"></meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="5">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="311" name="B: Account">
              <meta name="opsbar-sequence">8</meta>
              <meta name="jira.description">Manually start Account info to copy from Epic</meta>
              <meta name="jira.fieldscreen.id"></meta>
              <restrict-to>
                <conditions>
                  <condition type="class">
                    <arg name="class.name">com.googlecode.jsu.workflow.condition.UserIsInAnyGroupsCondition</arg>
                    <arg name="hidGroupsList">jira-administrators@@jira-bugmaster@@jira-pm-po-sm@@</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="null" status="null" step="1">
                  <post-functions>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="cumulativeOperation">false</arg>
                      <arg name="mathOperation">max</arg>
                      <arg name="expression"></arg>
                      <arg name="sourceExpression"></arg>
                      <arg name="includeSisterSubtasks">false</arg>
                      <arg name="recursiveOperation">false</arg>
                      <arg name="selectedTargetField">12105</arg>
                      <arg name="issueTypes">10013,10011,10010,10100,10208,10207,10801,10009,10800,10008,10206,10601,10007,10700,10205,10600,10401,10203,10500,10202,10400,10201,10300</arg>
                      <arg name="parametrizationVersion">1</arg>
                      <arg name="dontOverwrite">false</arg>
                      <arg name="actingUser">field_00020</arg>
                      <arg name="selectedSourceField">12105</arg>
                      <arg name="includeSubtasks">false</arg>
                      <arg name="sourceType">field</arg>
                      <arg name="outwardIssueLinkTypes"></arg>
                      <arg name="full.module.key">com.fca.jira.plugins.workflowToolbox.workflow-toolboxread-linked-issues</arg>
                      <arg name="conditionOnPostfunction"></arg>
                      <arg name="fixedActingUser"></arg>
                      <arg name="inwardIssueLinkTypes">10200</arg>
                      <arg name="statuses"></arg>
                      <arg name="projectCondition">any</arg>
                      <arg name="class.name">com.fca.jira.plugins.workflowToolbox.ReadLinkedIssuesFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="2" name="MORE INFO REQUIRED">
          <meta name="jira.status.id">10003</meta>
          <actions>
            <action id="41" name="R: Oops, Friday morning" view="fieldscreen">
              <meta name="opsbar-sequence">8</meta>
              <meta name="jira.description">Reporter: Issue reported by mistake: Close it</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="10">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value">10005</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="51" name="R: Update" view="fieldscreen">
              <meta name="jira.description">Reporter: Info added: send to Bug Master</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="4">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="3" name="Needs QA analysis">
          <meta name="jira.status.id">10004</meta>
          <actions>
            <action id="61" name="Q: Update" view="fieldscreen">
              <meta name="jira.description">QA: Comments and Notes added, Test Item created if applicable.
    Send this Issue to Bug Master to continue workflow</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-qa</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="4">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="4" name="UPDATED">
          <meta name="jira.status.id">10005</meta>
          <actions>
    <common-action id="91" />
            <action id="71" name="B: Unclear report" view="fieldscreen">
              <meta name="jira.description">Bug Master: More info required: send to Reporter</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="2">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="81" name="B: Analyse" view="fieldscreen">
              <meta name="jira.description">Bug Master: Analysis required by QA for additional Info, Reproducibility, Comments.
    Let QA Create Test Item or Update / refer to existing Test Item</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="3">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="351" name="Parent Info">
              <meta name="jira.description">SW-14086 WBSO propagatie e.d. ook voor Specs</meta>
              <meta name="jira.fieldscreen.id"></meta>
              <restrict-to>
                <conditions>
                  <condition type="class">
                    <arg name="selectedUserCustomField">12302</arg>
                    <arg name="class.name">com.fca.jira.plugins.workflowToolbox.OnlyUserInCustomFieldCondition</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="null" status="null" step="4">
                  <post-functions>
                    <function type="class">
                      <arg name="sourceField">customfield_12105</arg>
                      <arg name="full.module.key">com.googlecode.jira-suite-utilitiescopyValueFromOtherField-function</arg>
                      <arg name="copyType">parent</arg>
                      <arg name="class.name">com.googlecode.jsu.workflow.function.CopyValueFromOtherFieldPostFunction</arg>
                      <arg name="destinationField">customfield_12105</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="cumulativeOperation">false</arg>
                      <arg name="mathOperation">sum</arg>
                      <arg name="expression"></arg>
                      <arg name="sourceExpression"></arg>
                      <arg name="includeSisterSubtasks">false</arg>
                      <arg name="recursiveOperation">false</arg>
                      <arg name="selectedTargetField">12105</arg>
                      <arg name="issueTypes">10800,10201</arg>
                      <arg name="parametrizationVersion">1</arg>
                      <arg name="dontOverwrite">false</arg>
                      <arg name="actingUser">field_00020</arg>
                      <arg name="selectedSourceField">12105</arg>
                      <arg name="includeSubtasks">true</arg>
                      <arg name="sourceType">field</arg>
                      <arg name="outwardIssueLinkTypes">10600</arg>
                      <arg name="full.module.key">com.fca.jira.plugins.workflowToolbox.workflow-toolboxread-linked-issues</arg>
                      <arg name="conditionOnPostfunction"></arg>
                      <arg name="fixedActingUser"></arg>
                      <arg name="inwardIssueLinkTypes">10600</arg>
                      <arg name="statuses"></arg>
                      <arg name="projectCondition">any</arg>
                      <arg name="class.name">com.fca.jira.plugins.workflowToolbox.ReadLinkedIssuesFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="5" name="ACCEPTED BY QA">
          <meta name="jira.status.id">10006</meta>
          <actions>
    <common-action id="111" />
    <common-action id="321" />
    <common-action id="331" />
            <action id="101" name="D: Request more info" view="fieldscreen">
              <meta name="opsbar-sequence">5</meta>
              <meta name="jira.description">Developer: Something unclear yet: send to Bug Master for clarification</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-development</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="4">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="6" name="IN PROGRESS">
          <meta name="jira.status.id">3</meta>
          <actions>
    <common-action id="261" />
    <common-action id="121" />
    <common-action id="331" />
            <action id="131" name="D: Unresolvable" view="fieldscreen">
              <meta name="opsbar-sequence">3</meta>
              <meta name="jira.description">Developer: I have read the Issue, understand it and we cannot resolve it, for us it is Unresolvable: send to Reporter</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="7">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="291" name="D: Was Already Fixed" view="fieldscreen">
              <meta name="opsbar-sequence">4</meta>
              <meta name="jira.description">This issue cannot be reproduced anymore: fixed by another commit.
    To be confirmed by Reporter</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <validators>
                <validator name="" type="class">
                  <arg name="contextHandling"></arg>
                  <arg name="hidFieldsList">resolution@@fixVersions@@</arg>
                  <arg name="class.name">com.googlecode.jsu.workflow.validator.FieldsRequiredValidator</arg>
                </validator>
              </validators>
              <results>
                <unconditional-result old-status="null" status="null" step="9">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value">10300</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="7" name="UNRESOLVABLE">
          <meta name="jira.status.id">10007</meta>
          <actions>
            <action id="151" name="R: Close" view="fieldscreen">
              <meta name="jira.description">Reporter now agrees with Unresolvability: Close this Issue</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="10">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="161" name="R: Give Feedback" view="fieldscreen">
              <meta name="jira.description">Reporter: Give Feedback to Developer</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="8">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value"></arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="8" name="FEEDBACK">
          <meta name="jira.status.id">10008</meta>
          <actions>
    <common-action id="261" />
            <action id="171" name="D: Unresolvable" view="fieldscreen">
              <meta name="jira.description">Developer: this Issue cannot be Resolved.
    Send to Reporter as Unresolvable to Confirm and Close</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="7">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="191" name="D: Resolve" view="fieldscreen">
              <meta name="jira.description">Developer: Issue Resolved no additional Commit or Merge required.
    Send to Reporter</meta>
              <meta name="jira.fieldscreen.id">3</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <validators>
                <validator name="" type="class">
                  <arg name="contextHandling"></arg>
                  <arg name="hidFieldsList">fixVersions@@</arg>
                  <arg name="class.name">com.googlecode.jsu.workflow.validator.FieldsRequiredValidator</arg>
                </validator>
              </validators>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="9">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="281" name="D: Restart Progress">
              <meta name="jira.description">Developer: Feedback understood and Restart Progression</meta>
              <meta name="jira.fieldscreen.id"></meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyAssignee</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="null" status="null" step="6">
                  <post-functions>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="9" name="RESOLVED">
          <meta name="jira.status.id">5</meta>
          <actions>
            <action id="201" name="R: Confirm Fix" view="fieldscreen">
              <meta name="jira.description">Resolve Confirmed by Reporter, send to QA to Verify Test Item</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.googlecode.jsu.workflow.condition.UserIsInAnyGroupsCondition</arg>
                      <arg name="hidGroupsList">jira-development@@jira-qa@@</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <validators>
                <validator name="" type="class">
                  <arg name="contextHandling"></arg>
                  <arg name="hidFieldsList">customfield_10504@@</arg>
                  <arg name="class.name">com.googlecode.jsu.workflow.validator.FieldsRequiredValidator</arg>
                </validator>
              </validators>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="11">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="211" name="R: Give Feedback" view="fieldscreen">
              <meta name="jira.description">Reporter: Give Feedback
    
    Send to Development - Assigned User</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-qa</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.AllowOnlyReporter</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="8">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value"></arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="301" name="M: Remerge" view="fieldscreen">
              <meta name="opsbar-sequence">1</meta>
              <meta name="jira.description">Issue has been merged to any Version and needs to merged to other versions as well.</meta>
              <meta name="jira.fieldscreen.id">10601</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-mergemaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="null" status="null" step="9">
                  <post-functions>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="10" name="CLOSED">
          <meta name="jira.status.id">6</meta>
          <actions>
            <action id="251" name="B: Oops, accidently Closed" view="fieldscreen">
              <meta name="jira.description">Bug Master: Reopen this Closed Issue: send to QA</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-administrators</arg>
                  </condition>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-bugmaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="11">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="11" name="Fix confirmed">
          <meta name="jira.status.id">10019</meta>
          <actions>
            <action id="221" name="Q: Close" view="fieldscreen">
              <meta name="jira.description">QA: Issue has been satisfactory Resolved and Test Item/.testcase Reviewed and Updated: Close this Issue</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-qa</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="10">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="231" name="B: Fix has Issues" view="fieldscreen">
              <meta name="jira.description">Bug Master: Reviewed Issue and added Comments: send to Developer</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-qa</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="8">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value"></arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="12" name="Awaiting merge">
          <meta name="jira.status.id">10200</meta>
          <actions>
            <action id="141" name="M: Merged" view="fieldscreen">
              <meta name="opsbar-sequence">1</meta>
              <meta name="jira.description">Fix has been Merged.
    Issue Resolved: send to Reporter to Verify and Confirm Fix</meta>
              <meta name="jira.fieldscreen.id">10601</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                  <condition type="class">
                    <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                    <arg name="group">jira-mergemaster</arg>
                  </condition>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="Not Done" status="Done" step="9">
                  <post-functions>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdateissuestatus-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowcreatecomment-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowgeneratechangehistory-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowreindexissue-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowfireevent-function</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
            <action id="271" name="M: Give Feedback" view="fieldscreen">
              <meta name="opsbar-sequence">2</meta>
              <meta name="jira.description">Merge Master: Gives Feedback to Developer, ie Merge Failed, Smoketest Fails, etc.</meta>
              <meta name="jira.fieldscreen.id">10011</meta>
              <restrict-to>
                <conditions type="OR">
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-mergemaster</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-development</arg>
                    </condition>
                  </conditions>
                  <conditions type="OR">
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-administrators</arg>
                    </condition>
                    <condition type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.condition.UserInGroupCondition</arg>
                      <arg name="group">jira-bugmaster</arg>
                    </condition>
                  </conditions>
                </conditions>
              </restrict-to>
              <results>
                <unconditional-result old-status="null" status="null" step="8">
                  <post-functions>
                    <function type="class">
                      <arg name="field.name">resolution</arg>
                      <arg name="full.module.key">com.atlassian.jira.plugin.system.workflowupdate-issue-field-function</arg>
                      <arg name="field.value"></arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueFieldFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.UpdateIssueStatusFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.misc.CreateCommentFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.GenerateChangeHistoryFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="class.name">com.atlassian.jira.workflow.function.issue.IssueReindexFunction</arg>
                    </function>
                    <function type="class">
                      <arg name="eventTypeId">13</arg>
                      <arg name="class.name">com.atlassian.jira.workflow.function.event.FireIssueEventFunction</arg>
                    </function>
                  </post-functions>
                </unconditional-result>
              </results>
            </action>
          </actions>
        </step>
        <step id="13" name="Nice to Have">
          <meta name="jira.status.id">10800</meta>
          <actions>
    <common-action id="111" />
    <common-action id="341" />
          </actions>
        </step>
        <step id="14" name="Should Have">
          <meta name="jira.status.id">10801</meta>
          <actions>
    <common-action id="111" />
    <common-action id="321" />
    <common-action id="341" />
          </actions>
        </step>
      </steps>
    </workflow>
    
  3. Fidel Castro Armario repo owner

    I'm trying to reproduce your problem using JIRA 7.3.1 and JIRA Workflow Toolbox 2.2.31, but I get an error message when clicking on "Create" button, and issue is not created. That's the expected behavior.

    Which version of JIRA and JIRA Workflow Toolbox are you using?

  4. Hubert Gabel reporter

    JIRA Core 7.0.10 JIRA Software 7.0.11 and JIRA Workflow Toolbox 2.2.31

    We did see the error message and could only revert the changes. In the background however, the issue was created.

    So you suggest this might be due to the JIRA version we are using?

  5. Fidel Castro Armario repo owner

    Hi Hubert,

    You are right. I didn't realize that the issue is created. I have tested it on JIRA 7.0.10 and 7.3.1, and in both cases happens the same.

    Anyway, there is simple way to solve the problem of those "corrupted" issues: you should run JIRA Integrity Checker, available at Administration > System > Integrity Checker.

    This problem only happens when the error occurs in a post-function in transition Create Issue. No problem happens in any other transition, or with a validator in Create Issue transition.

    The only way to avoid this problem is to let the transition execute without doing nothing. But although no corruption occurs, in my opinion, it's an even worse solution, because the user is not warned about the problem, and is assuming that the workflow keeps working normally, but maybe some important post-functions have not done their job, producing silent and uncontrolled inconsistencies in the issues.

    Any suggestion is welcome.

  6. Hubert Gabel reporter

    Thanks for your reply and suggestions. Purchase of this add-on has already been approved, it is a matter of days that it will be made effective so we will not run into this issue again, I guess.

    | The only way to avoid this problem is to let the transition execute without doing nothing. That certainly is worse than creating an issue which can be corrected ...

    A valid option would be to disable the Create button, and I realize that I've added the post-function AFTER the issue has been created, so that would not be a good option either.

    Then the second best option would be to enhance the error message and add a line like: "WTP post-function has not been executed, issue xxx-nnnn has been created" Maybe that would work ...

  7. Fidel Castro Armario repo owner

    Hubert, I close the issue, since I don't find any feasible way to implement your suggestions.

  8. Log in to comment