Browse documentation
Docs/Workflow Toolkit/AI Condition

AI Condition

Hide a transition until the issue is ready for it. Includes how to write rules that work.

What it does. Hides the transition button until the issue meets your rule. Typical uses: an estimate is present, an owner is set, a checklist is complete, a parent issue is in the right status.

Transition → Conditions → AI Condition (Workflow Toolkit) → ConfigureIllustration

AI Condition (Workflow Toolkit)

The configuration is saved when you click “Add” or “Update” in the workflow editor.

Rule Description
Needs an estimate and an owner
Short description (shown in workflow editor)
Custom Fields Involved
Story Points (customfield_10016) ✕Team (customfield_10041) ✕Search and select custom fields…
Condition Description (Natural Language)
Allow the transition only when Story Points is filled in, the assignee is set, and Team is not empty.
Generate ExpressionExpression generated successfully.
Generated Expression (editable)
issue.customfield_10016 != null && issue.assignee != null && issue.customfield_10041 != null
What this checks
Requires Story Points to have a value, an assignee to be set, and the Team field not to be empty. Written by the AI alongside the expression.
Test Expression
OPS-4412
Test with IssueEmpty box → the button reads “Validate Syntax”
Result: TRUE (OPS-4412)
The transition WOULD be shown for this issue.

The fields, one by one

FieldWhat it is forHow to fill it in
Rule DescriptionA short label, shown in the workflow editor's condition list.Write it for the next administrator: “Needs an estimate and an owner” beats “AI condition 1”. Leave it blank and the AI fills it in with a generated title when you click Generate.
Custom Fields InvolvedThe custom fields your rule refers to. The picker offers custom fields only, labelled Name (customfield_NNNNN).Select every custom field you mention. This is what makes the generated expression use the real field ID. System fields such as assignee, labels, due date and priority are not in the picker and do not need to be — the generator already knows them.
Condition Description (Natural Language)The rule itself, in plain English.Describe when the transition is allowed. The generated expression must evaluate to true for the button to appear.
Generate ExpressionCalls Forge LLM once and writes the result below.Click it after filling in the three fields above.
Generated Expression (editable)The Jira expression that will actually run, plus the AI's plain-language explanation of what it checks.Read both. You can edit the expression by hand, and hand-editing is a perfectly good outcome. Note that clicking Generate again overwrites your edits.
Test ExpressionThe section under the expression. The button reads Validate Syntax while the issue-key box is empty, and Test with Issue once you type a key.Always use it. Check the syntax, then test one issue that should pass and one that should fail. With a key, the app tells you the result and whether the transition would be shown.

How to write a rule the generator handles well

  • Use the exact field names from Jira, and add every custom field you mention to Custom Fields Involved. “Story Points” works. “the estimate” does not.
  • Say what allows the transition, not what blocks it. (The validator is the opposite — see that page.)
  • One rule per condition. Two unrelated checks are much easier to debug as two conditions on the same transition.
  • Be explicit about empty values. “Team must not be empty” generates a real check. “Team should be valid” generates nothing useful.
Rule you writeWhat it enforces
Allow the transition only when Story Points is filled in, the assignee is set, and Team is not empty.Refinement is finished before work starts. Add Story Points and Team to Custom Fields Involved; assignee is a system field and needs no entry.
Allow only if the issue has at least one label and the Due Date is in the future.Basic hygiene on planned work. Both are system fields, so Custom Fields Involved stays empty.
Allow only when Root Cause and Impact are both filled in.A post-incident review that cannot be skipped. Add both custom fields to Custom Fields Involved.
Always test before publishing
A condition that accidentally evaluates to false for every issue removes the transition for everybody. To your users that looks like a broken Jira, not a misconfigured rule, and you will hear about it from twenty people at once.

Something missing or wrong on this page? Tell us in the support portal or email contact@synapseoasis.com.