Удалить в задачах все комментарии от определенного пользователя

Иногда бывает так что в задачи проставляются лишние комментарии или например как здесь, вследствие ошибки обработчика почты в комментарии добавляется вот такая тарабарщина: jira_bot_tarabarchina_comment_2021-11-10_01-07

Задача состоит из двух частей:

1) Определить задачи в которых мы будем удалять комментарии

2) Определить комментарии которые мы будем удалять в этих задачах.

Все что нам в этом случае нужно, написать и запустить скрипт в консоли:

import com.atlassian.jira.component.ComponentAccessor
import com.atlassian.jira.event.type.EventDispatchOption
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.user.ApplicationUser
import com.atlassian.jira.bc.issue.search.SearchService
import com.atlassian.jira.web.bean.PagerFilter
import com.atlassian.jira.issue.Issue
import com.atlassian.jira.issue.MutableIssue
import com.atlassian.jira.issue.comments.CommentManager

def issueManager = ComponentAccessor.getIssueManager()
def issueLinkManager = ComponentAccessor.getIssueLinkManager()
def userManager = ComponentAccessor.getUserManager()
def commentManager = ComponentAccessor.getCommentManager()

def user = userManager.getUserByName("jira-bot")

String TASK_JQL = '''project in (PROJECTONE, PROJECTTWO, PROJECTETC) and issueFunction in commented("by jira-bot")'''

def runJQL(String jql, ApplicationUser user) {
    def issuesSearch
    def searchService = ComponentAccessor.getComponent(SearchService.class)
    def issueManager = ComponentAccessor.getIssueManager()

    def parseJQLResult = searchService.parseQuery(user, jql)

    if (parseJQLResult.isValid()) {
        def result = searchService.search(user, parseJQLResult.getQuery(), PagerFilter.getUnlimitedFilter())
        def documentIssues = result.results

        return documentIssues.collect { issueManager.getIssueObject(it.id) }
    } else {
        log.error("Invalid JQL: " + jql);
        log.debug("SendRFCReportToConfluenceSRV out")
    }
    return issuesSearch
}

def arrayTasks = runJQL(TASK_JQL, user) as List<MutableIssue>

for (MutableIssue issue in arrayTasks) {
    commentManager.getComments(issue)
    .findAll{it.getAuthorApplicationUser().equals(user)}
    .collect{commentManager.delete(it)}
}