Hello team,
I’m looking to create an automation rule that clones a ticket into another project only when we identify a pattern: basically, when a certain number of tickets link to the same Confluence page and there's a gap highlighted in a dedicated field used to track Confluence content quality.
My team works as a 2nd line support team, providing help to internal teams. We use a custom issue type for these consultations, and we’ve added two custom fields:
Confluence Page – Filled in by the requester, pointing to the page they consulted before opening a ticket to us;
Confluence Quality – Filled in by my team when answering, mapping whether the Confluence content was ok, or if a gap was present.
This helps us understand whether Confluence content is solving problems or not, basically. I want to create an automation rule that:
Checks if the field “Confluence Quality” contains any kind of gap.
This field is a dropdown with multiple values for different types of gaps. I want to include any ticket that has any gap selected, regardless of which one. Currently, I think the lookup issues action is only matching tickets with exactly the same gap option, tho.
If the number of matching tickets is 3 or more, I want to:
Clone a new issue into another project;
List all matching issues (with keys, links, etc.) inside the description of the new issue ( I'm getting this by providing the description with a pre-added table that get's populated with smart values);
Link each of the matching issues to the newly created one, so everything stays traceable. However, I need to ensure that the linking only happens for the tickets that matter.
This is the Lookup issues JQL I'm using:
project = "ABCSD" AND "Ticket Created:" = "No" OR "Ticket Created:" = EMPTY AND "confluence quality[dropdown]" IN ("Gap - Cross-cluster knowledge - Reference missing", "Gap - Content - Incomplete or missing information", "Gap - Content - Outdated or inaccurate information", "Gap - Content - No page/ section covering relevant topic", "Gap - Formatting - Excessive page length", "Gap - Formatting - Information hidden or difficult to find", "Gap - Searchability - Poor keyword optimisation", "Gap - Content - Contradictory information", "Gap - Content - Ambiguous or unclear information", "Gap - Formatting - Broken links or references", "Gap - Formatting - Poor layout & readability", "Gap - Terminology - inconsistent terminology and/ or definitions") AND created >= -14d
Right now, using Lookup Issues
, the rule seems to only match tickets that have the exact same gap option, not just any selected gap.
I also don’t know how to write the JQL so that it correctly groups tickets based on shared Confluence pages: we have many tickets across many Confluence pages, and I want this rule to run per page.
Ideally, I’d like the rule to:
Normalize or match Confluence links, even if people provide section anchors or subheadings in the URL.
Run once per Confluence page, checking whether 3+ tickets referencing it also have a gap flagged.
Clone an issue and link only the relevant tickets to that new one.
First, your JQL may be missing some parentheses to properly group the expressions. I recommend pausing to confirm / validate that.
Next, without actually trying to implement your solution, I wonder...
Could the same approach be used as to send one email per assignee to instead gather by the Confluence Page field using Lookup Issues, iterate the distinct ones with an Advanced branch, and then perform the checks on the counts for each one. The send-one-email approach is described here: https://support.atlassian.com/jira/kb/automation-to-send-a-single-email-to-assignee-when-multiple-issues-are-due/
And so your rule might look like this:
Before proceeding, I recommend validating your JQL, mapping out the steps, and evaluating if this approach fits your scenario well.
Kind regards,
Bill
Hello @marianna.taborda
Can you confirm these are issues in a Service Management project?
And is it a Team Managed or Company Managed project? You can get that information from the Type column on the View All Projects page under the Projects menu. If it is a Team Managed Service Management project, that column will say "Team-managed service management". If it is a Company Managed Service Management project that column will say just "Service management".
To get any issue that has any value selected in the dropdown, instead of using the IN operator and a list of values, use:
"confluence quality[dropdown]" IS NOT EMPTY
What type of field is the Confluence Page field?
The ability to run per page or group will depend on the type of that field.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey @Trudy Claspill !
Thank you for looking into this. This is a JSM, team managed project.
This solution: "confluence quality[dropdown]" IS NOT EMPTY > it won't work as the field maps Valid tickets & those where we identify a gap in the underlying page. As this is a dropdown field, I can't use the option contains, I believe.
The Confluence Page field is a URL field.
Another solution would be to run the automation to identify the Confluence page, using the field, and if there's a gap, we would link until making 4 or 5 linked tickets. However, I'd say this solution is close to the above one and running a lookup issues daily may be best.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I think I was not clear on what I was suggesting, which is that you would change just the portion of your JQL referencing the "confluence quality[dropdown]" field. You still need the rest of the JQL statement.
I'm also not sure I understand exactly what you are trying to retrieve in this statement because of your arrangement of the OR and AND operators.
Is that correct, logically? The "confluence quality" and "created" criteria are applied to all the issues, not just the ones where "Ticket Created:" is empty?
If I have understood correctly, then I would also recommend rearranging the JQL and adding parentheses thus:
project = "ABCSD" AND "confluence quality[dropdown]" IS NOT EMPTY AND created >= -14d AND ("Ticket Created:" = "No" OR "Ticket Created:" IS EMPTY)
Addressing the content of the Confluence Page field is more complicated considering that you want to group based on the page URL, disregarding if it includes anchors or TOC linkage. I haven't figured that part out yet.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hey @Trudy Claspill ,
Is that correct, logically? The "confluence quality" and "created" criteria are applied to all the issues, not just the ones where "Ticket Created:" is empty?
This is correct, however, the Confluence quality also maps "Valid" reasons, hence it being filled in is not a condition that suffices. I've created a kind of workaround for the Confluence page, where in a separate field I extract the base page using the following edit option:
I believe to have a look up of the Gaps only for the field "Confluence Quality" I will need to do something similar, where if the option selected is one of those listed, I will map it in a dedicated field so that the lookup issues runs on that.
Does this seem rational from your PoV? 😅
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Ok, so when you say you want issues where the "Confluence Quality" field has "any gap", the options for that field that represent "gaps" is only a subset of all possible options on the field.
Since my logic was otherwise correct, I recommend that you update the JQL as shown below, repositioning the Ticket Created criteria and enclosing it in parentheses:
project = "ABCSD" AND
"confluence quality[dropdown]" IN ("Gap - Cross-cluster knowledge - Reference missing", "Gap - Content - Incomplete or missing information", "Gap - Content - Outdated or inaccurate information", "Gap - Content - No page/ section covering relevant topic", "Gap - Formatting - Excessive page length", "Gap - Formatting - Information hidden or difficult to find", "Gap - Searchability - Poor keyword optimisation", "Gap - Content - Contradictory information", "Gap - Content - Ambiguous or unclear information", "Gap - Formatting - Broken links or references", "Gap - Formatting - Poor layout & readability", "Gap - Terminology - inconsistent terminology and/ or definitions")
AND created >= -14d AND ("Ticket Created:" = "No" OR "Ticket Created:" IS EMPTY)
After making that change, is this still true?
Right now, using Lookup Issues
, the rule seems to only match tickets that have the exact same gap option, not just any selected gap.
If so can you provide an example of the values in the "Confluence Quality" and Ticket Created fields and the value of the Created timestamp for an issue that you think should be in the results set but is not? Do the values fall within the parameters of the filter criteria?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.