diff --git a/.github/fabricbot.json b/.github/fabricbot.json new file mode 100644 index 0000000000..333a56126f --- /dev/null +++ b/.github/fabricbot.json @@ -0,0 +1,787 @@ +{ + "version": "1.0", + "tasks": [ + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssuesOnlyResponder", + "version": "1.0", + "config": { + "taskName": "Add needs triage label to new issues", + "conditions": { + "operator": "and", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "opened" + } + }, + { + "operator": "not", + "operands": [ + { + "name": "isPartOfProject", + "parameters": {} + } + ] + }, + { + "operator": "not", + "operands": [ + { + "name": "isAssignedToSomeone", + "parameters": {} + } + ] + } + ] + }, + "actions": [ + { + "name": "addLabel", + "parameters": { + "label": "Needs-Triage" + } + } + ], + "eventType": "issue", + "eventNames": [ + "issues", + "project_card" + ] + }, + "id": "eUOhvA_62" + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "config": { + "taskName": "Replace needs author feedback label with needs attention label when the author comments on an issue", + "conditions": { + "operator": "and", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "created" + } + }, + { + "name": "isActivitySender", + "parameters": { + "user": { + "type": "author" + } + } + }, + { + "name": "hasLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + }, + { + "name": "isOpen", + "parameters": {} + } + ] + }, + "actions": [ + { + "name": "addLabel", + "parameters": { + "label": "Needs-Triage" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "Needs-Team-Response" + } + } + ], + "eventType": "issue", + "eventNames": [ + "issue_comment" + ] + }, + "id": "kgfxdBIu_9" + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssuesOnlyResponder", + "version": "1.0", + "config": { + "taskName": "Remove no recent activity label from issues", + "conditions": { + "operator": "and", + "operands": [ + { + "operator": "not", + "operands": [ + { + "name": "isAction", + "parameters": { + "action": "closed" + } + } + ] + }, + { + "name": "hasLabel", + "parameters": { + "label": "Status-No recent activity" + } + } + ] + }, + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "Status-No recent activity" + } + } + ], + "eventType": "issue", + "eventNames": [ + "issues", + "project_card" + ] + }, + "id": "eR-TaGJJzW", + "disabled": false + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "config": { + "taskName": "Remove no recent activity label when an issue is commented on", + "conditions": { + "operator": "and", + "operands": [ + { + "name": "hasLabel", + "parameters": { + "label": "Status-No recent activity" + } + } + ] + }, + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "Status-No recent activity" + } + } + ], + "eventType": "issue", + "eventNames": [ + "issue_comment" + ] + }, + "id": "tXKeoDht_g", + "disabled": false + }, + { + "taskType": "scheduled", + "capabilityId": "ScheduledSearch", + "subCapability": "ScheduledSearch", + "version": "1.1", + "config": { + "taskName": "Close stale issues", + "frequency": [ + { + "weekDay": 0, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 1, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 2, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 3, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 4, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 5, + "hours": [ + 1, + 7, + 13, + 19 + ] + }, + { + "weekDay": 6, + "hours": [ + 1, + 7, + 13, + 19 + ] + } + ], + "searchTerms": [ + { + "name": "isIssue", + "parameters": {} + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "name": "hasLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + }, + { + "name": "hasLabel", + "parameters": { + "label": "Status-No recent activity" + } + }, + { + "name": "noActivitySince", + "parameters": { + "days": 5 + } + } + ], + "actions": [ + { + "name": "closeIssue", + "parameters": {} + } + ] + }, + "id": "8yr-nVZj9k", + "disabled": false + }, + { + "taskType": "scheduled", + "capabilityId": "ScheduledSearch", + "subCapability": "ScheduledSearch", + "version": "1.1", + "config": { + "taskName": "Add no recent activity label to issues", + "frequency": [ + { + "weekDay": 0, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 1, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 2, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 3, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 4, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 5, + "hours": [ + 2, + 8, + 14, + 20 + ] + }, + { + "weekDay": 6, + "hours": [ + 2, + 8, + 14, + 20 + ] + } + ], + "searchTerms": [ + { + "name": "isIssue", + "parameters": {} + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "name": "hasLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + }, + { + "name": "noActivitySince", + "parameters": { + "days": 5 + } + }, + { + "name": "noLabel", + "parameters": { + "label": "Status-No recent activity" + } + } + ], + "actions": [ + { + "name": "addLabel", + "parameters": { + "label": "Status-No recent activity" + } + }, + { + "name": "addReply", + "parameters": { + "comment": "This issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for **5 days**. It will be closed if no further activity occurs **within 5 days of this comment**." + } + } + ] + }, + "id": "DAhxoYjVcq", + "disabled": false + }, + { + "taskType": "scheduled", + "capabilityId": "ScheduledSearch", + "subCapability": "ScheduledSearch", + "version": "1.1", + "config": { + "taskName": "Close duplicate issues", + "frequency": [ + { + "weekDay": 0, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 1, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 2, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 3, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 4, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 5, + "hours": [ + 3, + 9, + 15, + 21 + ] + }, + { + "weekDay": 6, + "hours": [ + 3, + 9, + 15, + 21 + ] + } + ], + "searchTerms": [ + { + "name": "isIssue", + "parameters": {} + }, + { + "name": "isOpen", + "parameters": {} + }, + { + "name": "hasLabel", + "parameters": { + "label": "Resolution-Duplicate" + } + }, + { + "name": "noActivitySince", + "parameters": { + "days": 1 + } + } + ], + "actions": [ + { + "name": "addReply", + "parameters": { + "comment": "This issue has been marked as duplicate and has not had any activity for **1 day**. It will be closed for housekeeping purposes." + } + }, + { + "name": "closeIssue", + "parameters": {} + } + ] + }, + "id": "xGhARy1H0w" + }, + { + "taskType": "trigger", + "capabilityId": "InPrLabel", + "subCapability": "InPrLabel", + "version": "1.0", + "config": { + "taskName": "Add 'In-PR' label on issue when an open pull request is targeting it", + "inPrLabelText": "Status: In PR", + "fixedLabelText": "Status: Fixed", + "fixedLabelEnabled": true, + "label_fixed": "Resolution-Fix-Committed", + "label_inPr": "In progress" + }, + "id": "Rn1tANe62T" + }, + { + "taskType": "trigger", + "capabilityId": "EmailCleanser", + "subCapability": "EmailCleanser", + "version": "1.0", + "id": "X0O-6aZ1v3_DAmhUIcNb2", + "config": { + "taskName": "Clean the email stuff" + } + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "id": "VyV9JJSA8SbOyeWEwjyfL", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "commentContains", + "parameters": { + "commentPattern": "\\/(bugreport|reportbug)", + "isRegex": true + } + }, + { + "operator": "or", + "operands": [ + { + "name": "activitySenderHasAssociation", + "parameters": { + "permissions": "admin", + "association": "MEMBER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "OWNER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "COLLABORATOR" + } + } + ] + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issue_comment" + ], + "taskName": "Ask for bug report zip file", + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Triage" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + }, + { + "name": "addReply", + "parameters": { + "comment": "Hi there!

We need a bit more information to really debug this issue. Can you add a \"Report Bug\" zip file here? You right click on our system tray icon and just go to report bug. Then drag the zipfile from your desktop onto the GitHub comment box in this issue. Thanks!
![Report Bug](https://user-images.githubusercontent.com/11349917/133042052-4975be21-4699-4363-83c9-a8e1869d079d.png)" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Team-Response" + } + } + ] + } + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "id": "bvMkigH2HPgUniYFCNco8", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "commentContains", + "parameters": { + "isRegex": true, + "commentPattern": "\\/dup(licate|e)?(\\s+of)?\\s+(#[\\d]+|https)" + } + }, + { + "operator": "or", + "operands": [ + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "OWNER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "MEMBER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "COLLABORATOR" + } + } + ] + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issue_comment" + ], + "taskName": "Helper to mark as duplicate", + "actions": [ + { + "name": "addReply", + "parameters": { + "comment": "Hi! We've identified this issue as a duplicate of another one that already exists on this Issue Tracker. This specific instance is being closed in favor of tracking the concern over on the referenced thread. Thanks for your report!" + } + }, + { + "name": "closeIssue", + "parameters": {} + }, + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Triage" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Team-Response" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "Resolution-Duplicate" + } + } + ] + } + }, + { + "taskType": "trigger", + "capabilityId": "IssueResponder", + "subCapability": "IssueCommentResponder", + "version": "1.0", + "id": "mgZxIoqeF7GWUo7-tZF56", + "config": { + "conditions": { + "operator": "and", + "operands": [ + { + "name": "commentContains", + "parameters": { + "commentPattern": "\\/needinfo", + "isRegex": true + } + }, + { + "operator": "or", + "operands": [ + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "OWNER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "MEMBER" + } + }, + { + "name": "activitySenderHasAssociation", + "parameters": { + "association": "COLLABORATOR" + } + } + ] + } + ] + }, + "eventType": "issue", + "eventNames": [ + "issue_comment" + ], + "actions": [ + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Triage" + } + }, + { + "name": "removeLabel", + "parameters": { + "label": "Needs-Team-Response" + } + }, + { + "name": "addLabel", + "parameters": { + "label": "Needs-Author-Feedback" + } + } + ], + "taskName": "Author Response needed" + } + } + ], + "userGroups": [] +}