-
Notifications
You must be signed in to change notification settings - Fork 228
Expand file tree
/
Copy pathrecommended.ts
More file actions
297 lines (295 loc) · 10.6 KB
/
Copy pathrecommended.ts
File metadata and controls
297 lines (295 loc) · 10.6 KB
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
import { type RawGovernanceConfig } from './types.js';
const recommended: RawGovernanceConfig<'built-in'> = {
rules: {
struct: 'error',
'no-unresolved-refs': 'error',
},
oas2Rules: {
'boolean-parameter-prefixes': 'off',
'info-contact': 'off',
'info-license': 'warn',
'info-license-strict': 'warn',
'no-ambiguous-paths': 'warn',
'no-duplicated-tag-names': 'warn',
'no-enum-type-mismatch': 'error',
'no-http-verbs-in-paths': 'off',
'no-identical-paths': 'error',
'no-invalid-parameter-examples': 'warn',
'no-invalid-schema-examples': 'warn',
'no-path-trailing-slash': 'error',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'operation-2xx-response': 'warn',
'operation-4xx-response': 'warn',
'operation-description': 'off',
'operation-operationId': 'warn',
'operation-operationId-unique': 'error',
'operation-operationId-url-safe': 'error',
'operation-parameters-unique': 'error',
'operation-singular-tag': 'off',
'operation-summary': 'error',
'operation-tag-defined': 'off',
'parameter-description': 'off',
'path-declaration-must-exist': 'error',
'path-http-verbs-order': 'off',
'path-not-include-query': 'error',
'path-params-defined': 'off',
'path-parameters-defined': 'error',
'path-segment-plural': 'off',
'paths-kebab-case': 'off',
'request-mime-type': 'off',
'required-string-property-missing-min-length': 'off',
'response-contains-header': 'off',
'response-contains-property': 'off',
'response-mime-type': 'off',
'scalar-property-missing-example': 'off',
'security-defined': 'error',
'spec-strict-refs': 'off',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
oas3_0Rules: {
'array-parameter-serialization': 'off',
'boolean-parameter-prefixes': 'off',
'component-name-unique': 'off',
'info-contact': 'off',
'info-license': 'warn',
'info-license-strict': 'warn',
'no-ambiguous-paths': 'warn',
'no-duplicated-tag-names': 'warn',
'no-empty-servers': 'error',
'no-enum-type-mismatch': 'error',
'no-example-value-and-externalValue': 'error',
'no-http-verbs-in-paths': 'off',
'no-identical-paths': 'error',
'no-invalid-media-type-examples': {
severity: 'warn',
allowAdditionalProperties: false,
},
'no-invalid-parameter-examples': 'warn',
'no-invalid-schema-examples': 'warn',
'no-path-trailing-slash': 'error',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'no-server-example.com': 'warn',
'no-server-trailing-slash': 'error',
'no-server-variables-empty-enum': 'error',
'no-undefined-server-variable': 'error',
'no-unused-components': 'warn',
'nullable-type-sibling': 'error',
'operation-2xx-response': 'warn',
'operation-4xx-problem-details-rfc7807': 'off',
'operation-4xx-response': 'warn',
'operation-description': 'off',
'operation-operationId': 'warn',
'operation-operationId-unique': 'error',
'operation-operationId-url-safe': 'error',
'operation-parameters-unique': 'error',
'operation-singular-tag': 'off',
'operation-summary': 'error',
'operation-tag-defined': 'off',
'parameter-description': 'off',
'path-declaration-must-exist': 'error',
'path-http-verbs-order': 'off',
'path-not-include-query': 'error',
'path-params-defined': 'off',
'path-parameters-defined': 'error',
'path-segment-plural': 'off',
'paths-kebab-case': 'off',
'request-mime-type': 'off',
'required-string-property-missing-min-length': 'off',
'response-contains-header': 'off',
'response-contains-property': 'off',
'response-mime-type': 'off',
'scalar-property-missing-example': 'off',
'security-defined': 'error',
'spec-components-invalid-map-name': 'error',
'spec-example-values': 'off',
'spec-strict-refs': 'off',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
oas3_1Rules: {
'array-parameter-serialization': 'off',
'boolean-parameter-prefixes': 'off',
'component-name-unique': 'off',
'info-contact': 'off',
'info-license': 'warn',
'info-license-strict': 'warn',
'no-ambiguous-paths': 'warn',
'no-duplicated-tag-names': 'warn',
'no-empty-servers': 'error',
'no-enum-type-mismatch': 'error',
'no-example-value-and-externalValue': 'error',
'no-http-verbs-in-paths': 'off',
'no-identical-paths': 'error',
'no-invalid-media-type-examples': 'warn',
'no-invalid-parameter-examples': 'warn',
'no-invalid-schema-examples': 'warn',
'no-mixed-number-range-constraints': 'warn',
'no-path-trailing-slash': 'error',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'no-server-example.com': 'warn',
'no-server-trailing-slash': 'error',
'no-server-variables-empty-enum': 'error',
'no-undefined-server-variable': 'error',
'no-unused-components': 'warn',
'operation-2xx-response': 'warn',
'operation-4xx-problem-details-rfc7807': 'off',
'operation-4xx-response': 'warn',
'operation-description': 'off',
'operation-operationId': 'warn',
'operation-operationId-unique': 'error',
'operation-operationId-url-safe': 'error',
'operation-parameters-unique': 'error',
'operation-singular-tag': 'off',
'operation-summary': 'error',
'operation-tag-defined': 'off',
'parameter-description': 'off',
'path-declaration-must-exist': 'error',
'path-http-verbs-order': 'off',
'path-not-include-query': 'error',
'path-params-defined': 'off',
'path-parameters-defined': 'error',
'path-segment-plural': 'off',
'paths-kebab-case': 'off',
'request-mime-type': 'off',
'required-string-property-missing-min-length': 'off',
'response-contains-header': 'off',
'response-contains-property': 'off',
'response-mime-type': 'off',
'scalar-property-missing-example': 'off',
'security-defined': 'error',
'spec-components-invalid-map-name': 'error',
'spec-example-values': 'off',
'spec-strict-refs': 'off',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
oas3_2Rules: {
'array-parameter-serialization': 'off',
'boolean-parameter-prefixes': 'off',
'component-name-unique': 'off',
'info-contact': 'off',
'info-license': 'warn',
'info-license-strict': 'warn',
'no-ambiguous-paths': 'warn',
'no-duplicated-tag-names': 'warn',
'no-empty-servers': 'error',
'no-enum-type-mismatch': 'error',
'no-http-verbs-in-paths': 'off',
'no-identical-paths': 'error',
'no-invalid-media-type-examples': 'warn',
'no-invalid-parameter-examples': 'warn',
'no-invalid-schema-examples': 'warn',
'no-mixed-number-range-constraints': 'warn',
'no-path-trailing-slash': 'error',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'no-server-example.com': 'warn',
'no-server-trailing-slash': 'error',
'no-server-variables-empty-enum': 'error',
'no-undefined-server-variable': 'error',
'no-unused-components': 'warn',
'operation-2xx-response': 'warn',
'operation-4xx-problem-details-rfc7807': 'off',
'operation-4xx-response': 'warn',
'operation-description': 'off',
'operation-operationId': 'warn',
'operation-operationId-unique': 'error',
'operation-operationId-url-safe': 'error',
'operation-parameters-unique': 'error',
'operation-singular-tag': 'off',
'operation-summary': 'error',
'operation-tag-defined': 'off',
'parameter-description': 'off',
'path-declaration-must-exist': 'error',
'path-http-verbs-order': 'off',
'path-not-include-query': 'error',
'path-params-defined': 'off',
'path-parameters-defined': 'error',
'path-segment-plural': 'off',
'paths-kebab-case': 'off',
'request-mime-type': 'off',
'required-string-property-missing-min-length': 'off',
'response-contains-header': 'off',
'response-contains-property': 'off',
'response-mime-type': 'off',
'scalar-property-missing-example': 'off',
'security-defined': 'error',
'spec-components-invalid-map-name': 'error',
'spec-discriminator-defaultMapping': 'warn',
'spec-example-values': 'error',
'spec-no-invalid-encoding-combinations': 'error',
'spec-no-invalid-tag-parents': 'error',
'spec-querystring-parameters': 'error',
'spec-strict-refs': 'off',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
async2Rules: {
'channels-kebab-case': 'off',
'info-contact': 'off',
'info-license-strict': 'warn',
'no-channel-trailing-slash': 'off',
'no-duplicated-tag-names': 'warn',
'no-enum-type-mismatch': 'error',
'no-mixed-number-range-constraints': 'warn',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'operation-operationId': 'warn',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
async3Rules: {
'channels-kebab-case': 'off',
'info-contact': 'off',
'info-license-strict': 'warn',
'no-channel-trailing-slash': 'off',
'no-duplicated-tag-names': 'warn',
'no-enum-type-mismatch': 'error',
'no-mixed-number-range-constraints': 'warn',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'operation-operationId': 'warn',
'tag-description': 'warn',
'tags-alphabetical': 'off',
},
arazzo1Rules: {
'criteria-unique': 'warn',
'no-criteria-xpath': 'off',
'no-enum-type-mismatch': 'error',
'no-mixed-number-range-constraints': 'warn',
'no-required-schema-properties-undefined': 'warn',
'no-schema-type-mismatch': 'error',
'no-x-security-both-scheme-and-scheme-name': 'off',
'no-x-security-scheme-name-without-openapi': 'off',
'outputs-defined': 'warn',
'parameters-unique': 'error',
'requestBody-replacements-unique': 'warn',
'respect-supported-versions': 'off',
'sourceDescription-name-unique': 'error',
'sourceDescription-type': 'error',
'sourceDescriptions-not-empty': 'error',
'spec-parameters-in-by-context': 'warn',
'step-onFailure-unique': 'warn',
'step-onSuccess-unique': 'warn',
'stepId-unique': 'error',
'workflow-dependsOn': 'error',
'workflowId-unique': 'error',
'x-security-scheme-name-reference': 'off',
'x-security-scheme-required-values': 'off',
},
overlay1Rules: {
'info-contact': 'off',
},
openrpc1Rules: {
'info-license': 'warn',
'no-unused-components': 'warn',
'info-contact': 'off',
'spec-no-duplicated-method-params': 'error',
'spec-no-required-params-after-optional': 'error',
},
};
export default recommended;