-
Notifications
You must be signed in to change notification settings - Fork 31
Expand file tree
/
Copy path.oxlintrc.jsonc
More file actions
87 lines (78 loc) · 2.61 KB
/
.oxlintrc.jsonc
File metadata and controls
87 lines (78 loc) · 2.61 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
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
// Keep the built-in default plugin set explicit so monorepo lint behavior
// does not drift when oxlint changes its defaults.
"plugins": ["typescript", "oxc", "unicorn"],
"categories": {
"correctness": "warn",
},
"ignorePatterns": [
"**/node_modules/**",
"**/.turbo/**",
"**/dist/**",
"**/coverage/**",
"**/.next/**",
"**/.mint/**",
],
"settings": {
"executorMonorepo": {
"packageScopes": ["@executor/"],
},
},
"jsPlugins": [
{
"name": "executor-monorepo",
"specifier": "./tools/oxlint/plugin.mjs",
},
],
"rules": {
// This repo uses Effect.gen heavily. The underlying generator syntax is an
// implementation detail, so "no yield" is not a useful signal here.
"require-yield": "off",
"no-unused-vars": "warn",
// Monorepo-specific rules.
"executor-monorepo/no-async-effect-vitest-tests": "error",
"executor-monorepo/no-cross-workspace-relative-imports": "error",
"executor-monorepo/no-direct-effect-tag-read": "error",
"executor-monorepo/no-effect-env-any": "error",
"executor-monorepo/no-effect-never-cast": "error",
"executor-monorepo/no-effect-run-in-effect-vitest-tests": "error",
"executor-monorepo/no-manual-httpapi-openapi-bridge": "error",
"executor-monorepo/no-manual-openapi-documents": "error",
"executor-monorepo/no-node-fs-with-effect-imports": "error",
"executor-monorepo/no-raw-effect-fail-errors": "error",
"executor-monorepo/no-yield-effect-fail": "error",
"executor-monorepo/no-workspace-src-imports": "warn",
},
"overrides": [
{
// SDK tests still use relative workspace imports to avoid introducing
// package-graph cycles from test-only dependencies.
"files": [
"packages/platform/sdk/src/executor.test.ts",
"packages/platform/sdk/src/runtime/executor-runtime.test.ts",
"packages/platform/server/src/index.test.ts",
"packages/clients/react/src/index.test.tsx"
],
"rules": {
"executor-monorepo/no-cross-workspace-relative-imports": "off"
}
},
{
// JSON Schema conditionals legitimately use a `then` key.
"files": [
"packages/platform/control-plane/src/runtime/catalog/source/runtime.ts",
],
"rules": {
"unicorn/no-thenable": "off",
},
},
{
// This stack-integrity check intentionally prefers invariant failures in cleanup.
"files": ["packages/sources/core/src/catalog-json-schema.ts"],
"rules": {
"no-unsafe-finally": "off",
},
},
],
}