TypeScript/.github/fabricbot.json

671 строка
17 KiB
JSON

{
"version": "1.0",
"tasks": [
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "IssueResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"src/server/protocol.ts"
],
"pathFilter": "src/server/protocol.ts"
}
},
{
"name": "isAction",
"parameters": {
"action": "opened"
}
}
]
},
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "Thanks for the PR! It looks like you've changed the TSServer protocol in some way. Please ensure that any changes here don't break consumers of the current TSServer API. For some extra review, we'll ping @sheetalkamat, @mjbvz, and @minestarks for you. Feel free to loop in other consumers/maintainers if necessary"
}
}
],
"taskName": "Server Breaking Changes"
}
},
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "IssueResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"lib"
],
"pathFilter": "lib"
}
},
{
"operator": "not",
"operands": [
{
"name": "activitySenderHasAssociation",
"parameters": {
"user": "",
"association": "MEMBER"
}
}
]
},
{
"name": "isActivitySender",
"parameters": {
"user": {
"type": "author"
}
}
},
{
"operator": "not",
"operands": [
{
"name": "hasLabel",
"parameters": {
"label": "lib update"
}
}
]
}
]
},
"taskName": "Don't update lib!",
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "It looks like you've sent a pull request to update our 'lib' files. These files aren't meant to be edited by hand, as they consist of last-known good states of the compiler and are generated from 'src/lib' or possibly our lib generator. Unless this is necessary, consider closing the pull request and sending a separate PR to update 'src/lib' or https://github.com/microsoft/TypeScript-DOM-lib-generator"
}
},
{
"name": "addLabels",
"parameters": {
"labels": [
"lib update"
]
}
}
]
}
},
{
"taskType": "scheduled",
"capabilityId": "ScheduledSearch",
"subCapability": "ScheduledSearch",
"version": "1.0",
"config": {
"frequency": [
{
"weekDay": 0,
"hours": [
18
]
},
{
"weekDay": 1,
"hours": [
18
]
},
{
"weekDay": 2,
"hours": [
18
]
},
{
"weekDay": 3,
"hours": [
18
]
},
{
"weekDay": 4,
"hours": [
18
]
},
{
"weekDay": 5,
"hours": [
18
]
},
{
"weekDay": 6,
"hours": [
18
]
}
],
"searchTerms": [
{
"name": "noActivitySince",
"parameters": {
"days": 2
}
},
{
"name": "hasLabel",
"parameters": {
"label": "Duplicate"
}
},
{
"name": "isOpen",
"parameters": {}
}
],
"taskName": "Close Duplicates",
"actions": [
{
"name": "closeIssue",
"parameters": {}
},
{
"name": "addReply",
"parameters": {
"comment": "This issue has been marked as a 'Duplicate' and has seen no recent activity. It has been automatically closed for house-keeping purposes."
}
}
]
}
},
{
"taskType": "scheduled",
"capabilityId": "ScheduledSearch",
"subCapability": "ScheduledSearch",
"version": "1.0",
"config": {
"taskName": "Close Externals",
"frequency": [
{
"weekDay": 0,
"hours": [
10
],
"restrictions": [
{
"name": ""
}
]
},
{
"weekDay": 1,
"hours": [
10
]
},
{
"weekDay": 2,
"hours": [
10
]
},
{
"weekDay": 3,
"hours": [
10
]
},
{
"weekDay": 4,
"hours": [
10
]
},
{
"weekDay": 5,
"hours": [
10
]
},
{
"weekDay": 6,
"hours": [
10
]
}
],
"searchTerms": [
{
"name": "hasLabel",
"parameters": {
"label": "External"
}
},
{
"name": "isOpen",
"parameters": {}
},
{
"name": "noActivitySince",
"parameters": {
"days": 2
}
}
],
"actions": [
{
"name": "closeIssue",
"parameters": {}
},
{
"name": "addReply",
"parameters": {
"comment": "This issue has been marked as 'External' and has seen no recent activity. It has been automatically closed for house-keeping purposes."
}
}
]
}
},
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "IssueResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "isAction",
"parameters": {
"action": "opened"
}
},
{
"operator": "or",
"operands": [
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"lib/lib.dom"
],
"pathFilter": "lib/lib.dom"
}
},
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"src/lib/dom.generated.d.ts"
],
"pathFilter": "src/lib/dom.generated.d.ts"
}
},
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"src/lib/dom.iterable.generated.d.ts"
],
"pathFilter": "src/lib/dom.iterable.generated.d.ts"
}
},
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"webworker.generated.d.ts"
],
"pathFilter": "webworker.generated.d.ts"
}
},
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"lib/lib.webworker.d.ts"
],
"pathFilter": "lib/lib.webworker.d.ts"
}
}
]
},
{
"operator": "not",
"operands": [
{
"name": "activitySenderHasAssociation",
"parameters": {
"association": "MEMBER"
}
}
]
}
]
},
"taskName": "Close generated DOM lib PRs",
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "It looks like you've sent a pull request to update some generated declaration files related to the DOM. These files aren't meant to be edited by hand, as they are synchronized with files in [the TSJS-lib-generator repository](https://github.com/Microsoft/TSJS-lib-generator). You can [read more here](https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md#contributing-libdts-fixes). For house-keeping purposes, this pull request will be closed."
}
},
{
"name": "closeIssue",
"parameters": {}
}
]
}
},
{
"taskType": "scheduled",
"capabilityId": "ScheduledSearch",
"subCapability": "ScheduledSearch",
"version": "1.0",
"config": {
"taskName": "Close Working as Intended",
"frequency": [
{
"weekDay": 0,
"hours": [
20
]
},
{
"weekDay": 1,
"hours": [
20
]
},
{
"weekDay": 2,
"hours": [
20
]
},
{
"weekDay": 3,
"hours": [
20
]
},
{
"weekDay": 4,
"hours": [
20
]
},
{
"weekDay": 5,
"hours": [
20
]
},
{
"weekDay": 6,
"hours": [
20
]
}
],
"searchTerms": [
{
"name": "hasLabel",
"parameters": {
"label": "Working as Intended"
}
},
{
"name": "isOpen",
"parameters": {}
},
{
"name": "noActivitySince",
"parameters": {
"days": 2
}
}
],
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "This issue has been marked 'Working as Intended' and has seen no recent activity. It has been automatically closed for house-keeping purposes."
}
},
{
"name": "closeIssue",
"parameters": {}
}
]
}
},
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "IssueResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "prIncludesModifiedFile",
"parameters": {
"pathFilters": [
"src/services/preProcess.ts"
],
"pathFilter": "src/services/preProcess.ts"
}
},
{
"name": "isAction",
"parameters": {
"eventName": "pull_request",
"action": "opened"
}
}
]
},
"taskName": "Managed Side Preprocessing Must Be Handled",
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "Thanks for the PR! It looks like you've changed 'preProcess.ts' in some way. Please ensure that any changes here don't break consumers with unique project systems such as Visual Studio. Pinging @sheetalkamat and @minestarks so they are aware of the changes."
}
}
]
},
"disabled": true
},
{
"taskType": "scheduled",
"capabilityId": "ScheduledSearch",
"subCapability": "ScheduledSearch",
"version": "1.1",
"config": {
"taskName": "Close Questions",
"frequency": [
{
"weekDay": 0,
"hours": [
0,
12
]
},
{
"weekDay": 1,
"hours": [
0,
12
]
},
{
"weekDay": 2,
"hours": [
0,
12
]
},
{
"weekDay": 3,
"hours": [
0,
12
]
},
{
"weekDay": 4,
"hours": [
0,
12
]
},
{
"weekDay": 5,
"hours": [
0,
12
]
},
{
"weekDay": 6,
"hours": [
0,
12
]
}
],
"searchTerms": [
{
"name": "hasLabel",
"parameters": {
"label": "Question"
}
},
{
"name": "isOpen",
"parameters": {}
},
{
"name": "noActivitySince",
"parameters": {
"days": 2
}
}
],
"actions": [
{
"name": "closeIssue",
"parameters": {}
},
{
"name": "addReply",
"parameters": {
"comment": "This issue has been marked as 'Question' and has seen no recent activity. It has been automatically closed for house-keeping purposes. If you're still waiting on a response, questions are usually better suited to [stackoverflow](https://stackoverflow.com/questions/tagged/typescript) or the [TypeScript Discord community](https://discord.gg/typescript)."
}
}
]
}
},
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "IssueCommentResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "activitySenderHasAssociation",
"parameters": {
"permissions": "write",
"association": "MEMBER"
}
},
{
"name": "commentContains",
"parameters": {
"commentPattern": "please close this"
}
}
]
},
"eventType": "issue",
"eventNames": [
"issue_comment"
],
"taskName": "Close issue on behalf of allowed comment",
"actions": [
{
"name": "closeIssue",
"parameters": {}
},
{
"name": "addReply",
"parameters": {
"comment": "I've closed this for you."
}
}
]
},
"disabled": true
},
{
"taskType": "trigger",
"capabilityId": "IssueResponder",
"subCapability": "PullRequestResponder",
"version": "1.0",
"config": {
"conditions": {
"operator": "and",
"operands": [
{
"name": "prModifiesFiles",
"parameters": {
"pathFilters": [
"tests/baselines/reference/api/typescript.d.ts",
"tests/baselines/reference/api/tsserverlibrary.d.ts"
]
}
}
]
},
"eventType": "pull_request",
"eventNames": [
"pull_request",
"issues",
"project_card"
],
"actions": [
{
"name": "addReply",
"parameters": {
"comment": "Looks like you're introducing a change to the public API surface area. If this includes breaking changes, please document them [on our wiki's API Breaking Changes page](https://github.com/microsoft/TypeScript/wiki/API-Breaking-Changes).\n\nAlso, please make sure @DanielRosenwasser and @RyanCavanaugh are aware of the changes, just as a heads up"
}
}
],
"taskName": "Check for API Changes"
}
}
],
"userGroups": []
}