forked from dotnet/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.ghal.rules.json
342 lines (320 loc) · 14.7 KB
/
.ghal.rules.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
{
"version": 3,
"configRevision": 3,
"issue": {
"labeled": {
"processor-conditional": {
"type": "query",
"value": "length(Issue.labels[?contains(name, '/prod') || contains(name, '/tech')]) != `0`",
"processors": {
"processor-conditional": {
"type": "query",
"value": "length(Issue.labels[?name == 'doc-enhancement' || name == 'product-question' || name == 'in-progress' || name == 'test-issue' || name == 'kudos' || name == 'loc' || name == 'doc-bug' || name == 'product-feedback' || name == 'code-of-conduct' || name == 'support-request' || name == 'duplicate' || name == 'resolved-by-customer' || name == 'docs-experience' || name == 'doc-provided' || name == 'doc-idea' || name == 'needs-more-info']) != `0`",
"actions": {
"labels-remove": ":watch: Not Triaged"
},
"actions-failed": {
"labels-add": ":watch: Not Triaged"
}
}
}
}
},
"opened": {
"processor-default": {
"labels-add": [ ":watch: Not Triaged" ]
},
"processor-meta-custom": {
"issuetype": {
"(?i)breaking-change$": {
"labels-add": [ "breaking-change", "doc-idea" ]
}
}
}
},
"reopened": {
"processor-default": {
"labels-remove": [ "won't fix" ]
}
},
"closed": {
"processor-default": {
"labels-remove": [ "in-progress", ":watch: Not Triaged" ]
}
}
},
"pullrequest": {
"opened": {
"processor-default": {
"milestone-set": "![sprint]"
},
"processor-conditional": {
"type": "query",
"value": "PullRequest.base.ref != 'live'",
"processors": {
"processor-files": {
"changedfile": {
"(?i).*_csharplang.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-spec/tech" ]
},
"(?i).*_vblang\/spec.*": {
"labels-add": [ "dotnet-visualbasic/prod", "vb-spec/tech" ]
},
"(?i).*docs\/architecture.*": {
"labels-add": "dotnet-architecture/prod"
},
"(?i).*docs\/architecture\/blazor-for-web-forms-developers.*": {
"labels-add": [ "dotnet-architecture/prod", "blazor/tech" ]
},
"(?i).*docs\/architecture\/cloud-native.*": {
"labels-add": [ "dotnet-architecture/prod", "cloud-native/tech" ]
},
"(?i).*docs\/architecture\/containerized-lifecycle.*": {
"labels-add": [ "dotnet-architecture/prod", "containerized-lifecycle/tech" ]
},
"(?i).*docs\/architecture\/grpc-for-wcf-developers.*": {
"labels-add": [ "dotnet-architecture/prod", "grpc/tech" ]
},
"(?i).*docs\/architecture\/microservices.*": {
"labels-add": [ "dotnet-architecture/prod", "microservices/tech" ]
},
"(?i).*docs\/architecture\/modernize-with-azure-containers.*": {
"labels-add": [ "dotnet-architecture/prod", "modernize-with-azure-containers/tech" ]
},
"(?i).*docs\/architecture\/modern-web-apps-azure.*": {
"labels-add": [ "dotnet-architecture/prod", "modern-web-apps-azure/tech" ]
},
"(?i).*docs\/architecture\/serverless.*": {
"labels-add": [ "dotnet-architecture/prod", "serverless/tech" ]
},
"(?i).*docs\/azure.*": {
"labels-add": "dotnet-azure/prod"
},
"(?i).*docs\/core.*": {
"labels-add": "dotnet-fundamentals/prod"
},
"(?i).*docs\/core\/tools.*": {
"labels-add": [ "dotnet-fundamentals/prod", "dotnet-cli/tech" ]
},
"(?i).*docs\/core\/docker.*": {
"labels-add": [ "dotnet-fundamentals/prod", "dotnet-docker/tech" ]
},
"(?i).*docs\/core\/install.*": {
"labels-add": [ "dotnet/prod", "dotnet-install/tech" ]
},
"(?i).*docs\/csharp.*": {
"labels-add": "dotnet-csharp/prod"
},
"(?i).*docs\/csharp\/misc.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-diagnostics/tech" ]
},
"(?i).*docs\/csharp\/whats-new.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-whats-new/tech" ]
},
"(?i).*docs\/csharp\/how-to.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/linq.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-linq/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/main-and-command-args.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/indexers.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/generics.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/strings.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/types.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/statements-expressions-operators.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/interop.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-advanced-concepts/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/unsafe-code-pointers.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-advanced-concepts/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/exceptions.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/namespaces.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/nullable-types.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-null-safety/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/arrays.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/covariance-contravariance.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-advanced-concepts/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/serialization.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/expression-trees.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-advanced-concepts/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/async.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-async/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/linq.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-linq/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/concepts\/attributes.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/xmldoc.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/classes-and-structs.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/delegates.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/file-system.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/events.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/inside-a-program.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-get-started/tech" ]
},
"(?i).*docs\/csharp\/programming-guide\/interfaces.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/getting-started.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-get-started/tech" ]
},
"(?i).*docs\/csharp\/tutorials.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-fundamentals/tech" ]
},
"(?i).*docs\/csharp\/tutorials\/exploration.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-get-started/tech" ]
},
"(?i).*docs\/csharp\/tutorials\/intro-to-csharp.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-get-started/tech" ]
},
"(?i).*docs\/csharp\/language-reference.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-language-reference/tech" ]
},
"(?i).*docs\/csharp\/language-reference\/compiler-messages.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-diagnostics/tech" ]
},
"(?i).*docs\/csharp\/roslyn-sdk.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-roslyn/tech" ]
},
"(?i).*docs\/csharp\/tour-of-csharp.*": {
"labels-add": [ "dotnet-csharp/prod", "csharp-get-started/tech" ]
},
"(?i).*docs\/framework.*": {
"labels-add": "dotnet-framework/prod"
},
"(?i).*docs\/framework\/configure-apps\/file-schema\/network.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-networking/tech" ]
},
"(?i).*docs\/framework\/configure-apps\/file-schema\/wcf.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wcf/tech" ]
},
"(?i).*docs\/framework\/data\/adonet.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-data/tech" ]
},
"(?i).*docs\/framework\/data\/wcf.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wcf/tech" ]
},
"(?i).*docs\/framework\/docker.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-docker/tech" ]
},
"(?i).*docs\/framework\/install.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-install/tech" ]
},
"(?i).*docs\/framework\/migration-guide.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-appcompat/tech" ]
},
"(?i).*docs\/framework\/network-programming.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-networking/tech" ]
},
"(?i).*docs\/framework\/wcf.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wcf/tech" ]
},
"(?i).*docs\/framework\/windows-workflow-foundation.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wf/tech" ]
},
"(?i).*docs\/framework\/winforms.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-winforms/tech" ]
},
"(?i).*docs\/framework\/wpf.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wpf/tech" ]
},
"(?i).*docs\/framework\/xaml-services.*": {
"labels-add": [ "dotnet-framework/prod", "dotnet-wpf/tech" ]
},
"(?i).*docs\/fsharp.*": {
"labels-add": "dotnet-fsharp/prod"
},
"(?i).*docs\/fundamentals.*": {
"labels-add": "dotnet-fundamentals/prod"
},
"(?i).*docs\/standard.*": {
"labels-add": "dotnet-fundamentals/prod"
},
"(?i).*docs\/standard\/analyzers.*": {
"labels-add": [ "dotnet-fundamentals/prod", "dotnet-analyzers/tech" ]
},
"(?i).*docs\/machine-learning.*": {
"labels-add": "dotnet-ml/prod"
},
"(?i).*docs\/spark.*": {
"labels-add": "dotnet-spark/prod"
},
"(?i).*docs\/standard\/data.*": {
"labels-add": "dotnet-data/prod"
},
"(?i).*docs\/standard\/design-guidelines.*": {
"labels-add": [ "dotnet/prod", "dotnet-standard/tech" ]
},
"(?i).*docs\/standard\/security.*": {
"labels-add": [ "dotnet/prod", "dotnet-security/tech" ]
},
"(?i).*docs\/visual-basic.*": {
"labels-add": "dotnet-visualbasic/prod"
},
"(?i).*docs\/visual-basic\/language-reference\/error-messages.*": {
"labels-add": [ "dotnet-visualbasic/prod", "vb-diagnostics/tech" ]
},
"(?i).*docs\/visual-basic\/misc.*": {
"labels-add": [ "dotnet-visualbasic/prod", "vb-diagnostics/tech" ]
}
}
}
}
}
}
},
"comment": {
"created": {
"processor-comment": {
"body": {
"^#please-review$": {
"condition-1": {
"type": "query",
"value": "Issue.state == 'open' && Issue.user.id == Comment.user.id",
"actions": {
"labels-add": "changes-addressed"
}
}
}
}
}
}
}
}