check-my-toolkit 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +2 -0
  2. package/dist/cli.d.ts +3 -0
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/cli.js +116 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/code/audit.d.ts +14 -0
  7. package/dist/code/audit.d.ts.map +1 -0
  8. package/dist/code/audit.js +130 -0
  9. package/dist/code/audit.js.map +1 -0
  10. package/dist/code/index.d.ts +13 -0
  11. package/dist/code/index.d.ts.map +1 -0
  12. package/dist/code/index.js +49 -0
  13. package/dist/code/index.js.map +1 -0
  14. package/dist/code/linting.d.ts +10 -0
  15. package/dist/code/linting.d.ts.map +1 -0
  16. package/dist/code/linting.js +233 -0
  17. package/dist/code/linting.js.map +1 -0
  18. package/dist/code/tools/base.d.ts +52 -0
  19. package/dist/code/tools/base.d.ts.map +1 -0
  20. package/dist/code/tools/base.js +83 -0
  21. package/dist/code/tools/base.js.map +1 -0
  22. package/dist/code/tools/eslint.d.ts +15 -0
  23. package/dist/code/tools/eslint.d.ts.map +1 -0
  24. package/dist/code/tools/eslint.js +79 -0
  25. package/dist/code/tools/eslint.js.map +1 -0
  26. package/dist/code/tools/index.d.ts +5 -0
  27. package/dist/code/tools/index.d.ts.map +1 -0
  28. package/dist/code/tools/index.js +5 -0
  29. package/dist/code/tools/index.js.map +1 -0
  30. package/dist/code/tools/ruff.d.ts +26 -0
  31. package/dist/code/tools/ruff.d.ts.map +1 -0
  32. package/dist/code/tools/ruff.js +149 -0
  33. package/dist/code/tools/ruff.js.map +1 -0
  34. package/dist/code/tools/tsc.d.ts +20 -0
  35. package/dist/code/tools/tsc.d.ts.map +1 -0
  36. package/dist/code/tools/tsc.js +90 -0
  37. package/dist/code/tools/tsc.js.map +1 -0
  38. package/dist/code/types.d.ts +6 -0
  39. package/dist/code/types.d.ts.map +1 -0
  40. package/dist/code/types.js +132 -0
  41. package/dist/code/types.js.map +1 -0
  42. package/dist/config/index.d.ts +3 -0
  43. package/dist/config/index.d.ts.map +1 -0
  44. package/dist/config/index.js +3 -0
  45. package/dist/config/index.js.map +1 -0
  46. package/dist/config/loader.d.ts +21 -0
  47. package/dist/config/loader.d.ts.map +1 -0
  48. package/dist/config/loader.js +118 -0
  49. package/dist/config/loader.js.map +1 -0
  50. package/dist/config/schema.d.ts +1217 -0
  51. package/dist/config/schema.d.ts.map +1 -0
  52. package/dist/config/schema.js +190 -0
  53. package/dist/config/schema.js.map +1 -0
  54. package/dist/index.d.ts +8 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +16 -0
  57. package/dist/index.js.map +1 -0
  58. package/dist/output/index.d.ts +15 -0
  59. package/dist/output/index.d.ts.map +1 -0
  60. package/dist/output/index.js +98 -0
  61. package/dist/output/index.js.map +1 -0
  62. package/dist/src/cli.d.ts +3 -0
  63. package/dist/src/cli.d.ts.map +1 -0
  64. package/dist/src/cli.js +116 -0
  65. package/dist/src/cli.js.map +1 -0
  66. package/dist/src/code/index.d.ts +13 -0
  67. package/dist/src/code/index.d.ts.map +1 -0
  68. package/dist/src/code/index.js +53 -0
  69. package/dist/src/code/index.js.map +1 -0
  70. package/dist/src/code/tools/base.d.ts +52 -0
  71. package/dist/src/code/tools/base.d.ts.map +1 -0
  72. package/dist/src/code/tools/base.js +83 -0
  73. package/dist/src/code/tools/base.js.map +1 -0
  74. package/dist/src/code/tools/eslint.d.ts +15 -0
  75. package/dist/src/code/tools/eslint.d.ts.map +1 -0
  76. package/dist/src/code/tools/eslint.js +79 -0
  77. package/dist/src/code/tools/eslint.js.map +1 -0
  78. package/dist/src/code/tools/index.d.ts +5 -0
  79. package/dist/src/code/tools/index.d.ts.map +1 -0
  80. package/dist/src/code/tools/index.js +5 -0
  81. package/dist/src/code/tools/index.js.map +1 -0
  82. package/dist/src/code/tools/ruff.d.ts +26 -0
  83. package/dist/src/code/tools/ruff.d.ts.map +1 -0
  84. package/dist/src/code/tools/ruff.js +149 -0
  85. package/dist/src/code/tools/ruff.js.map +1 -0
  86. package/dist/src/code/tools/tsc.d.ts +21 -0
  87. package/dist/src/code/tools/tsc.d.ts.map +1 -0
  88. package/dist/src/code/tools/tsc.js +94 -0
  89. package/dist/src/code/tools/tsc.js.map +1 -0
  90. package/dist/src/config/index.d.ts +3 -0
  91. package/dist/src/config/index.d.ts.map +1 -0
  92. package/dist/src/config/index.js +3 -0
  93. package/dist/src/config/index.js.map +1 -0
  94. package/dist/src/config/loader.d.ts +22 -0
  95. package/dist/src/config/loader.d.ts.map +1 -0
  96. package/dist/src/config/loader.js +124 -0
  97. package/dist/src/config/loader.js.map +1 -0
  98. package/dist/src/config/schema.d.ts +503 -0
  99. package/dist/src/config/schema.d.ts.map +1 -0
  100. package/dist/src/config/schema.js +190 -0
  101. package/dist/src/config/schema.js.map +1 -0
  102. package/dist/src/index.d.ts +8 -0
  103. package/dist/src/index.d.ts.map +1 -0
  104. package/dist/src/index.js +16 -0
  105. package/dist/src/index.js.map +1 -0
  106. package/dist/src/output/index.d.ts +15 -0
  107. package/dist/src/output/index.d.ts.map +1 -0
  108. package/dist/src/output/index.js +96 -0
  109. package/dist/src/output/index.js.map +1 -0
  110. package/dist/src/types/index.d.ts +96 -0
  111. package/dist/src/types/index.d.ts.map +1 -0
  112. package/dist/src/types/index.js +89 -0
  113. package/dist/src/types/index.js.map +1 -0
  114. package/dist/tests/e2e/e2e.test.d.ts +2 -0
  115. package/dist/tests/e2e/e2e.test.d.ts.map +1 -0
  116. package/dist/tests/e2e/e2e.test.js +398 -0
  117. package/dist/tests/e2e/e2e.test.js.map +1 -0
  118. package/dist/types/index.d.ts +96 -0
  119. package/dist/types/index.d.ts.map +1 -0
  120. package/dist/types/index.js +89 -0
  121. package/dist/types/index.js.map +1 -0
  122. package/package.json +57 -0
@@ -0,0 +1,124 @@
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import TOML from "@iarna/toml";
4
+ import { configSchema, defaultConfig } from "./schema.js";
5
+ export class ConfigError extends Error {
6
+ constructor(message) {
7
+ super(message);
8
+ this.name = "ConfigError";
9
+ }
10
+ }
11
+ /**
12
+ * Find check.toml by walking up the directory tree
13
+ */
14
+ export function findConfigFile(startDir = process.cwd()) {
15
+ let currentDir = path.resolve(startDir);
16
+ const root = path.parse(currentDir).root;
17
+ while (currentDir !== root) {
18
+ const configPath = path.join(currentDir, "check.toml");
19
+ if (fs.existsSync(configPath)) {
20
+ return configPath;
21
+ }
22
+ currentDir = path.dirname(currentDir);
23
+ }
24
+ // Check root directory too
25
+ const rootConfig = path.join(root, "check.toml");
26
+ return fs.existsSync(rootConfig) ? rootConfig : null;
27
+ }
28
+ /**
29
+ * Resolve and validate config file path
30
+ */
31
+ function resolveConfigPath(configPath) {
32
+ const resolved = configPath ?? findConfigFile();
33
+ if (!resolved) {
34
+ throw new ConfigError("No check.toml found. Run 'cm init' to create one or specify --config path.");
35
+ }
36
+ if (!fs.existsSync(resolved)) {
37
+ throw new ConfigError(`Config file not found: ${resolved}`);
38
+ }
39
+ return resolved;
40
+ }
41
+ /**
42
+ * Parse TOML file content
43
+ */
44
+ function parseTomlFile(filePath) {
45
+ try {
46
+ const content = fs.readFileSync(filePath, "utf-8");
47
+ return TOML.parse(content);
48
+ }
49
+ catch (error) {
50
+ const message = error instanceof Error ? error.message : "Unknown error";
51
+ throw new ConfigError(`Failed to parse check.toml: ${message}`);
52
+ }
53
+ }
54
+ /**
55
+ * Validate config against schema
56
+ */
57
+ function validateConfig(rawConfig) {
58
+ const result = configSchema.safeParse(rawConfig);
59
+ if (!result.success) {
60
+ const errors = result.error.errors.map((e) => ` - ${e.path.join(".")}: ${e.message}`).join("\n");
61
+ throw new ConfigError(`Invalid check.toml configuration:\n${errors}`);
62
+ }
63
+ return result.data;
64
+ }
65
+ /**
66
+ * Load and parse check.toml configuration
67
+ */
68
+ export function loadConfig(configPath) {
69
+ const resolvedPath = resolveConfigPath(configPath);
70
+ const rawConfig = parseTomlFile(resolvedPath);
71
+ const validatedConfig = validateConfig(rawConfig);
72
+ const config = mergeWithDefaults(validatedConfig);
73
+ return { config, configPath: resolvedPath };
74
+ }
75
+ /** Merge two optional objects, with right side taking precedence */
76
+ function merge(a, b) {
77
+ return { ...a, ...b };
78
+ }
79
+ /** Get array value with fallback */
80
+ function arr(a, b) {
81
+ return a ?? b ?? [];
82
+ }
83
+ function mergeLinting(c, dc) {
84
+ const cl = c.code?.linting;
85
+ const dl = dc.code?.linting;
86
+ return { eslint: merge(dl?.eslint, cl?.eslint), ruff: merge(dl?.ruff, cl?.ruff) };
87
+ }
88
+ function mergeFiles(c, dc) {
89
+ const cf = c.code?.files;
90
+ const df = dc.code?.files;
91
+ return { repo: arr(cf?.repo, df?.repo), tooling: arr(cf?.tooling, df?.tooling), docs: arr(cf?.docs, df?.docs) };
92
+ }
93
+ function mergeCode(c, dc) {
94
+ return {
95
+ linting: mergeLinting(c, dc),
96
+ types: { tsc: merge(dc.code?.types?.tsc, c.code?.types?.tsc) },
97
+ complexity: merge(dc.code?.complexity, c.code?.complexity),
98
+ files: mergeFiles(c, dc),
99
+ };
100
+ }
101
+ function mergeProcess(c, dc) {
102
+ return {
103
+ pr: merge(dc.process?.pr, c.process?.pr),
104
+ branches: merge(dc.process?.branches, c.process?.branches),
105
+ tickets: merge(dc.process?.tickets, c.process?.tickets),
106
+ };
107
+ }
108
+ /**
109
+ * Deep merge config with defaults
110
+ */
111
+ function mergeWithDefaults(config) {
112
+ return {
113
+ code: mergeCode(config, defaultConfig),
114
+ process: mergeProcess(config, defaultConfig),
115
+ stack: { tools: merge(defaultConfig.stack?.tools, config.stack?.tools) },
116
+ };
117
+ }
118
+ /**
119
+ * Get the project root directory (where check.toml is located)
120
+ */
121
+ export function getProjectRoot(configPath) {
122
+ return path.dirname(configPath);
123
+ }
124
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/config/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,503 @@
1
+ import { z } from "zod";
2
+ /** Full check.toml schema */
3
+ export declare const configSchema: z.ZodObject<{
4
+ code: z.ZodOptional<z.ZodObject<{
5
+ linting: z.ZodOptional<z.ZodObject<{
6
+ eslint: z.ZodOptional<z.ZodObject<{
7
+ enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
8
+ rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodEnum<["off", "warn", "error"]>, z.ZodTuple<[z.ZodString], z.ZodUnknown>]>>>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ enabled: boolean;
11
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
12
+ }, {
13
+ enabled?: boolean | undefined;
14
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
15
+ }>>;
16
+ ruff: z.ZodOptional<z.ZodObject<{
17
+ enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
18
+ "line-length": z.ZodOptional<z.ZodNumber>;
19
+ lint: z.ZodOptional<z.ZodObject<{
20
+ select: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
21
+ ignore: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ select?: string[] | undefined;
24
+ ignore?: string[] | undefined;
25
+ }, {
26
+ select?: string[] | undefined;
27
+ ignore?: string[] | undefined;
28
+ }>>;
29
+ }, "strip", z.ZodTypeAny, {
30
+ enabled: boolean;
31
+ "line-length"?: number | undefined;
32
+ lint?: {
33
+ select?: string[] | undefined;
34
+ ignore?: string[] | undefined;
35
+ } | undefined;
36
+ }, {
37
+ enabled?: boolean | undefined;
38
+ "line-length"?: number | undefined;
39
+ lint?: {
40
+ select?: string[] | undefined;
41
+ ignore?: string[] | undefined;
42
+ } | undefined;
43
+ }>>;
44
+ }, "strip", z.ZodTypeAny, {
45
+ eslint?: {
46
+ enabled: boolean;
47
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
48
+ } | undefined;
49
+ ruff?: {
50
+ enabled: boolean;
51
+ "line-length"?: number | undefined;
52
+ lint?: {
53
+ select?: string[] | undefined;
54
+ ignore?: string[] | undefined;
55
+ } | undefined;
56
+ } | undefined;
57
+ }, {
58
+ eslint?: {
59
+ enabled?: boolean | undefined;
60
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
61
+ } | undefined;
62
+ ruff?: {
63
+ enabled?: boolean | undefined;
64
+ "line-length"?: number | undefined;
65
+ lint?: {
66
+ select?: string[] | undefined;
67
+ ignore?: string[] | undefined;
68
+ } | undefined;
69
+ } | undefined;
70
+ }>>;
71
+ types: z.ZodOptional<z.ZodObject<{
72
+ tsc: z.ZodOptional<z.ZodObject<{
73
+ enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
74
+ strict: z.ZodOptional<z.ZodBoolean>;
75
+ noImplicitAny: z.ZodOptional<z.ZodBoolean>;
76
+ strictNullChecks: z.ZodOptional<z.ZodBoolean>;
77
+ strictFunctionTypes: z.ZodOptional<z.ZodBoolean>;
78
+ strictBindCallApply: z.ZodOptional<z.ZodBoolean>;
79
+ strictPropertyInitialization: z.ZodOptional<z.ZodBoolean>;
80
+ noImplicitThis: z.ZodOptional<z.ZodBoolean>;
81
+ alwaysStrict: z.ZodOptional<z.ZodBoolean>;
82
+ noUncheckedIndexedAccess: z.ZodOptional<z.ZodBoolean>;
83
+ noImplicitReturns: z.ZodOptional<z.ZodBoolean>;
84
+ noFallthroughCasesInSwitch: z.ZodOptional<z.ZodBoolean>;
85
+ noUnusedLocals: z.ZodOptional<z.ZodBoolean>;
86
+ noUnusedParameters: z.ZodOptional<z.ZodBoolean>;
87
+ exactOptionalPropertyTypes: z.ZodOptional<z.ZodBoolean>;
88
+ noImplicitOverride: z.ZodOptional<z.ZodBoolean>;
89
+ allowUnusedLabels: z.ZodOptional<z.ZodBoolean>;
90
+ allowUnreachableCode: z.ZodOptional<z.ZodBoolean>;
91
+ }, "strip", z.ZodTypeAny, {
92
+ enabled: boolean;
93
+ strict?: boolean | undefined;
94
+ noImplicitAny?: boolean | undefined;
95
+ strictNullChecks?: boolean | undefined;
96
+ strictFunctionTypes?: boolean | undefined;
97
+ strictBindCallApply?: boolean | undefined;
98
+ strictPropertyInitialization?: boolean | undefined;
99
+ noImplicitThis?: boolean | undefined;
100
+ alwaysStrict?: boolean | undefined;
101
+ noUncheckedIndexedAccess?: boolean | undefined;
102
+ noImplicitReturns?: boolean | undefined;
103
+ noFallthroughCasesInSwitch?: boolean | undefined;
104
+ noUnusedLocals?: boolean | undefined;
105
+ noUnusedParameters?: boolean | undefined;
106
+ exactOptionalPropertyTypes?: boolean | undefined;
107
+ noImplicitOverride?: boolean | undefined;
108
+ allowUnusedLabels?: boolean | undefined;
109
+ allowUnreachableCode?: boolean | undefined;
110
+ }, {
111
+ enabled?: boolean | undefined;
112
+ strict?: boolean | undefined;
113
+ noImplicitAny?: boolean | undefined;
114
+ strictNullChecks?: boolean | undefined;
115
+ strictFunctionTypes?: boolean | undefined;
116
+ strictBindCallApply?: boolean | undefined;
117
+ strictPropertyInitialization?: boolean | undefined;
118
+ noImplicitThis?: boolean | undefined;
119
+ alwaysStrict?: boolean | undefined;
120
+ noUncheckedIndexedAccess?: boolean | undefined;
121
+ noImplicitReturns?: boolean | undefined;
122
+ noFallthroughCasesInSwitch?: boolean | undefined;
123
+ noUnusedLocals?: boolean | undefined;
124
+ noUnusedParameters?: boolean | undefined;
125
+ exactOptionalPropertyTypes?: boolean | undefined;
126
+ noImplicitOverride?: boolean | undefined;
127
+ allowUnusedLabels?: boolean | undefined;
128
+ allowUnreachableCode?: boolean | undefined;
129
+ }>>;
130
+ }, "strip", z.ZodTypeAny, {
131
+ tsc?: {
132
+ enabled: boolean;
133
+ strict?: boolean | undefined;
134
+ noImplicitAny?: boolean | undefined;
135
+ strictNullChecks?: boolean | undefined;
136
+ strictFunctionTypes?: boolean | undefined;
137
+ strictBindCallApply?: boolean | undefined;
138
+ strictPropertyInitialization?: boolean | undefined;
139
+ noImplicitThis?: boolean | undefined;
140
+ alwaysStrict?: boolean | undefined;
141
+ noUncheckedIndexedAccess?: boolean | undefined;
142
+ noImplicitReturns?: boolean | undefined;
143
+ noFallthroughCasesInSwitch?: boolean | undefined;
144
+ noUnusedLocals?: boolean | undefined;
145
+ noUnusedParameters?: boolean | undefined;
146
+ exactOptionalPropertyTypes?: boolean | undefined;
147
+ noImplicitOverride?: boolean | undefined;
148
+ allowUnusedLabels?: boolean | undefined;
149
+ allowUnreachableCode?: boolean | undefined;
150
+ } | undefined;
151
+ }, {
152
+ tsc?: {
153
+ enabled?: boolean | undefined;
154
+ strict?: boolean | undefined;
155
+ noImplicitAny?: boolean | undefined;
156
+ strictNullChecks?: boolean | undefined;
157
+ strictFunctionTypes?: boolean | undefined;
158
+ strictBindCallApply?: boolean | undefined;
159
+ strictPropertyInitialization?: boolean | undefined;
160
+ noImplicitThis?: boolean | undefined;
161
+ alwaysStrict?: boolean | undefined;
162
+ noUncheckedIndexedAccess?: boolean | undefined;
163
+ noImplicitReturns?: boolean | undefined;
164
+ noFallthroughCasesInSwitch?: boolean | undefined;
165
+ noUnusedLocals?: boolean | undefined;
166
+ noUnusedParameters?: boolean | undefined;
167
+ exactOptionalPropertyTypes?: boolean | undefined;
168
+ noImplicitOverride?: boolean | undefined;
169
+ allowUnusedLabels?: boolean | undefined;
170
+ allowUnreachableCode?: boolean | undefined;
171
+ } | undefined;
172
+ }>>;
173
+ complexity: z.ZodOptional<z.ZodObject<{
174
+ max_file_lines: z.ZodOptional<z.ZodNumber>;
175
+ max_function_lines: z.ZodOptional<z.ZodNumber>;
176
+ max_parameters: z.ZodOptional<z.ZodNumber>;
177
+ max_nesting_depth: z.ZodOptional<z.ZodNumber>;
178
+ }, "strip", z.ZodTypeAny, {
179
+ max_file_lines?: number | undefined;
180
+ max_function_lines?: number | undefined;
181
+ max_parameters?: number | undefined;
182
+ max_nesting_depth?: number | undefined;
183
+ }, {
184
+ max_file_lines?: number | undefined;
185
+ max_function_lines?: number | undefined;
186
+ max_parameters?: number | undefined;
187
+ max_nesting_depth?: number | undefined;
188
+ }>>;
189
+ files: z.ZodOptional<z.ZodObject<{
190
+ repo: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
191
+ tooling: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
192
+ docs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
193
+ }, "strip", z.ZodTypeAny, {
194
+ repo?: string[] | undefined;
195
+ tooling?: string[] | undefined;
196
+ docs?: string[] | undefined;
197
+ }, {
198
+ repo?: string[] | undefined;
199
+ tooling?: string[] | undefined;
200
+ docs?: string[] | undefined;
201
+ }>>;
202
+ }, "strip", z.ZodTypeAny, {
203
+ linting?: {
204
+ eslint?: {
205
+ enabled: boolean;
206
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
207
+ } | undefined;
208
+ ruff?: {
209
+ enabled: boolean;
210
+ "line-length"?: number | undefined;
211
+ lint?: {
212
+ select?: string[] | undefined;
213
+ ignore?: string[] | undefined;
214
+ } | undefined;
215
+ } | undefined;
216
+ } | undefined;
217
+ types?: {
218
+ tsc?: {
219
+ enabled: boolean;
220
+ strict?: boolean | undefined;
221
+ noImplicitAny?: boolean | undefined;
222
+ strictNullChecks?: boolean | undefined;
223
+ strictFunctionTypes?: boolean | undefined;
224
+ strictBindCallApply?: boolean | undefined;
225
+ strictPropertyInitialization?: boolean | undefined;
226
+ noImplicitThis?: boolean | undefined;
227
+ alwaysStrict?: boolean | undefined;
228
+ noUncheckedIndexedAccess?: boolean | undefined;
229
+ noImplicitReturns?: boolean | undefined;
230
+ noFallthroughCasesInSwitch?: boolean | undefined;
231
+ noUnusedLocals?: boolean | undefined;
232
+ noUnusedParameters?: boolean | undefined;
233
+ exactOptionalPropertyTypes?: boolean | undefined;
234
+ noImplicitOverride?: boolean | undefined;
235
+ allowUnusedLabels?: boolean | undefined;
236
+ allowUnreachableCode?: boolean | undefined;
237
+ } | undefined;
238
+ } | undefined;
239
+ complexity?: {
240
+ max_file_lines?: number | undefined;
241
+ max_function_lines?: number | undefined;
242
+ max_parameters?: number | undefined;
243
+ max_nesting_depth?: number | undefined;
244
+ } | undefined;
245
+ files?: {
246
+ repo?: string[] | undefined;
247
+ tooling?: string[] | undefined;
248
+ docs?: string[] | undefined;
249
+ } | undefined;
250
+ }, {
251
+ linting?: {
252
+ eslint?: {
253
+ enabled?: boolean | undefined;
254
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
255
+ } | undefined;
256
+ ruff?: {
257
+ enabled?: boolean | undefined;
258
+ "line-length"?: number | undefined;
259
+ lint?: {
260
+ select?: string[] | undefined;
261
+ ignore?: string[] | undefined;
262
+ } | undefined;
263
+ } | undefined;
264
+ } | undefined;
265
+ types?: {
266
+ tsc?: {
267
+ enabled?: boolean | undefined;
268
+ strict?: boolean | undefined;
269
+ noImplicitAny?: boolean | undefined;
270
+ strictNullChecks?: boolean | undefined;
271
+ strictFunctionTypes?: boolean | undefined;
272
+ strictBindCallApply?: boolean | undefined;
273
+ strictPropertyInitialization?: boolean | undefined;
274
+ noImplicitThis?: boolean | undefined;
275
+ alwaysStrict?: boolean | undefined;
276
+ noUncheckedIndexedAccess?: boolean | undefined;
277
+ noImplicitReturns?: boolean | undefined;
278
+ noFallthroughCasesInSwitch?: boolean | undefined;
279
+ noUnusedLocals?: boolean | undefined;
280
+ noUnusedParameters?: boolean | undefined;
281
+ exactOptionalPropertyTypes?: boolean | undefined;
282
+ noImplicitOverride?: boolean | undefined;
283
+ allowUnusedLabels?: boolean | undefined;
284
+ allowUnreachableCode?: boolean | undefined;
285
+ } | undefined;
286
+ } | undefined;
287
+ complexity?: {
288
+ max_file_lines?: number | undefined;
289
+ max_function_lines?: number | undefined;
290
+ max_parameters?: number | undefined;
291
+ max_nesting_depth?: number | undefined;
292
+ } | undefined;
293
+ files?: {
294
+ repo?: string[] | undefined;
295
+ tooling?: string[] | undefined;
296
+ docs?: string[] | undefined;
297
+ } | undefined;
298
+ }>>;
299
+ process: z.ZodOptional<z.ZodObject<{
300
+ pr: z.ZodOptional<z.ZodObject<{
301
+ max_files: z.ZodOptional<z.ZodNumber>;
302
+ max_lines: z.ZodOptional<z.ZodNumber>;
303
+ min_approvals: z.ZodOptional<z.ZodNumber>;
304
+ }, "strip", z.ZodTypeAny, {
305
+ max_files?: number | undefined;
306
+ max_lines?: number | undefined;
307
+ min_approvals?: number | undefined;
308
+ }, {
309
+ max_files?: number | undefined;
310
+ max_lines?: number | undefined;
311
+ min_approvals?: number | undefined;
312
+ }>>;
313
+ branches: z.ZodOptional<z.ZodObject<{
314
+ pattern: z.ZodOptional<z.ZodString>;
315
+ }, "strip", z.ZodTypeAny, {
316
+ pattern?: string | undefined;
317
+ }, {
318
+ pattern?: string | undefined;
319
+ }>>;
320
+ tickets: z.ZodOptional<z.ZodObject<{
321
+ pattern: z.ZodOptional<z.ZodString>;
322
+ check_in: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
323
+ }, "strip", z.ZodTypeAny, {
324
+ pattern?: string | undefined;
325
+ check_in?: string[] | undefined;
326
+ }, {
327
+ pattern?: string | undefined;
328
+ check_in?: string[] | undefined;
329
+ }>>;
330
+ }, "strip", z.ZodTypeAny, {
331
+ pr?: {
332
+ max_files?: number | undefined;
333
+ max_lines?: number | undefined;
334
+ min_approvals?: number | undefined;
335
+ } | undefined;
336
+ branches?: {
337
+ pattern?: string | undefined;
338
+ } | undefined;
339
+ tickets?: {
340
+ pattern?: string | undefined;
341
+ check_in?: string[] | undefined;
342
+ } | undefined;
343
+ }, {
344
+ pr?: {
345
+ max_files?: number | undefined;
346
+ max_lines?: number | undefined;
347
+ min_approvals?: number | undefined;
348
+ } | undefined;
349
+ branches?: {
350
+ pattern?: string | undefined;
351
+ } | undefined;
352
+ tickets?: {
353
+ pattern?: string | undefined;
354
+ check_in?: string[] | undefined;
355
+ } | undefined;
356
+ }>>;
357
+ stack: z.ZodOptional<z.ZodObject<{
358
+ tools: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
359
+ }, "strip", z.ZodTypeAny, {
360
+ tools?: Record<string, string> | undefined;
361
+ }, {
362
+ tools?: Record<string, string> | undefined;
363
+ }>>;
364
+ }, "strip", z.ZodTypeAny, {
365
+ code?: {
366
+ linting?: {
367
+ eslint?: {
368
+ enabled: boolean;
369
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
370
+ } | undefined;
371
+ ruff?: {
372
+ enabled: boolean;
373
+ "line-length"?: number | undefined;
374
+ lint?: {
375
+ select?: string[] | undefined;
376
+ ignore?: string[] | undefined;
377
+ } | undefined;
378
+ } | undefined;
379
+ } | undefined;
380
+ types?: {
381
+ tsc?: {
382
+ enabled: boolean;
383
+ strict?: boolean | undefined;
384
+ noImplicitAny?: boolean | undefined;
385
+ strictNullChecks?: boolean | undefined;
386
+ strictFunctionTypes?: boolean | undefined;
387
+ strictBindCallApply?: boolean | undefined;
388
+ strictPropertyInitialization?: boolean | undefined;
389
+ noImplicitThis?: boolean | undefined;
390
+ alwaysStrict?: boolean | undefined;
391
+ noUncheckedIndexedAccess?: boolean | undefined;
392
+ noImplicitReturns?: boolean | undefined;
393
+ noFallthroughCasesInSwitch?: boolean | undefined;
394
+ noUnusedLocals?: boolean | undefined;
395
+ noUnusedParameters?: boolean | undefined;
396
+ exactOptionalPropertyTypes?: boolean | undefined;
397
+ noImplicitOverride?: boolean | undefined;
398
+ allowUnusedLabels?: boolean | undefined;
399
+ allowUnreachableCode?: boolean | undefined;
400
+ } | undefined;
401
+ } | undefined;
402
+ complexity?: {
403
+ max_file_lines?: number | undefined;
404
+ max_function_lines?: number | undefined;
405
+ max_parameters?: number | undefined;
406
+ max_nesting_depth?: number | undefined;
407
+ } | undefined;
408
+ files?: {
409
+ repo?: string[] | undefined;
410
+ tooling?: string[] | undefined;
411
+ docs?: string[] | undefined;
412
+ } | undefined;
413
+ } | undefined;
414
+ process?: {
415
+ pr?: {
416
+ max_files?: number | undefined;
417
+ max_lines?: number | undefined;
418
+ min_approvals?: number | undefined;
419
+ } | undefined;
420
+ branches?: {
421
+ pattern?: string | undefined;
422
+ } | undefined;
423
+ tickets?: {
424
+ pattern?: string | undefined;
425
+ check_in?: string[] | undefined;
426
+ } | undefined;
427
+ } | undefined;
428
+ stack?: {
429
+ tools?: Record<string, string> | undefined;
430
+ } | undefined;
431
+ }, {
432
+ code?: {
433
+ linting?: {
434
+ eslint?: {
435
+ enabled?: boolean | undefined;
436
+ rules?: Record<string, "off" | "warn" | "error" | [string, ...unknown[]]> | undefined;
437
+ } | undefined;
438
+ ruff?: {
439
+ enabled?: boolean | undefined;
440
+ "line-length"?: number | undefined;
441
+ lint?: {
442
+ select?: string[] | undefined;
443
+ ignore?: string[] | undefined;
444
+ } | undefined;
445
+ } | undefined;
446
+ } | undefined;
447
+ types?: {
448
+ tsc?: {
449
+ enabled?: boolean | undefined;
450
+ strict?: boolean | undefined;
451
+ noImplicitAny?: boolean | undefined;
452
+ strictNullChecks?: boolean | undefined;
453
+ strictFunctionTypes?: boolean | undefined;
454
+ strictBindCallApply?: boolean | undefined;
455
+ strictPropertyInitialization?: boolean | undefined;
456
+ noImplicitThis?: boolean | undefined;
457
+ alwaysStrict?: boolean | undefined;
458
+ noUncheckedIndexedAccess?: boolean | undefined;
459
+ noImplicitReturns?: boolean | undefined;
460
+ noFallthroughCasesInSwitch?: boolean | undefined;
461
+ noUnusedLocals?: boolean | undefined;
462
+ noUnusedParameters?: boolean | undefined;
463
+ exactOptionalPropertyTypes?: boolean | undefined;
464
+ noImplicitOverride?: boolean | undefined;
465
+ allowUnusedLabels?: boolean | undefined;
466
+ allowUnreachableCode?: boolean | undefined;
467
+ } | undefined;
468
+ } | undefined;
469
+ complexity?: {
470
+ max_file_lines?: number | undefined;
471
+ max_function_lines?: number | undefined;
472
+ max_parameters?: number | undefined;
473
+ max_nesting_depth?: number | undefined;
474
+ } | undefined;
475
+ files?: {
476
+ repo?: string[] | undefined;
477
+ tooling?: string[] | undefined;
478
+ docs?: string[] | undefined;
479
+ } | undefined;
480
+ } | undefined;
481
+ process?: {
482
+ pr?: {
483
+ max_files?: number | undefined;
484
+ max_lines?: number | undefined;
485
+ min_approvals?: number | undefined;
486
+ } | undefined;
487
+ branches?: {
488
+ pattern?: string | undefined;
489
+ } | undefined;
490
+ tickets?: {
491
+ pattern?: string | undefined;
492
+ check_in?: string[] | undefined;
493
+ } | undefined;
494
+ } | undefined;
495
+ stack?: {
496
+ tools?: Record<string, string> | undefined;
497
+ } | undefined;
498
+ }>;
499
+ /** Inferred TypeScript type from schema */
500
+ export type Config = z.infer<typeof configSchema>;
501
+ /** Default configuration */
502
+ export declare const defaultConfig: Config;
503
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuLxB,6BAA6B;AAC7B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIvB,CAAC;AAEH,2CAA2C;AAC3C,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,4BAA4B;AAC5B,eAAO,MAAM,aAAa,EAAE,MAwB3B,CAAC"}