codingbuddy 0.0.0-canary.20251219151055.e4122b3 → 0.0.0-dev.20251217094948.321eff2

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 (100) hide show
  1. package/README.md +16 -140
  2. package/dist/src/keyword/keyword.module.js.map +1 -1
  3. package/dist/src/keyword/keyword.service.spec.d.ts +1 -0
  4. package/dist/src/keyword/keyword.service.spec.js +225 -0
  5. package/dist/src/keyword/keyword.service.spec.js.map +1 -0
  6. package/dist/src/main.js +0 -0
  7. package/dist/src/mcp/mcp.module.js +1 -2
  8. package/dist/src/mcp/mcp.module.js.map +1 -1
  9. package/dist/src/mcp/mcp.service.d.ts +7 -16
  10. package/dist/src/mcp/mcp.service.js +65 -140
  11. package/dist/src/mcp/mcp.service.js.map +1 -1
  12. package/dist/src/rules/rules.service.js +2 -2
  13. package/dist/src/rules/rules.service.js.map +1 -1
  14. package/dist/tsconfig.tsbuildinfo +1 -0
  15. package/package.json +7 -22
  16. package/dist/src/analyzer/analyzer.module.d.ts +0 -2
  17. package/dist/src/analyzer/analyzer.module.js +0 -21
  18. package/dist/src/analyzer/analyzer.module.js.map +0 -1
  19. package/dist/src/analyzer/analyzer.service.d.ts +0 -10
  20. package/dist/src/analyzer/analyzer.service.js +0 -74
  21. package/dist/src/analyzer/analyzer.service.js.map +0 -1
  22. package/dist/src/analyzer/analyzer.types.d.ts +0 -70
  23. package/dist/src/analyzer/analyzer.types.js +0 -3
  24. package/dist/src/analyzer/analyzer.types.js.map +0 -1
  25. package/dist/src/analyzer/code.sampler.d.ts +0 -7
  26. package/dist/src/analyzer/code.sampler.js +0 -161
  27. package/dist/src/analyzer/code.sampler.js.map +0 -1
  28. package/dist/src/analyzer/config.analyzer.d.ts +0 -7
  29. package/dist/src/analyzer/config.analyzer.js +0 -182
  30. package/dist/src/analyzer/config.analyzer.js.map +0 -1
  31. package/dist/src/analyzer/directory.analyzer.d.ts +0 -12
  32. package/dist/src/analyzer/directory.analyzer.js +0 -156
  33. package/dist/src/analyzer/directory.analyzer.js.map +0 -1
  34. package/dist/src/analyzer/index.d.ts +0 -7
  35. package/dist/src/analyzer/index.js +0 -32
  36. package/dist/src/analyzer/index.js.map +0 -1
  37. package/dist/src/analyzer/package.analyzer.d.ts +0 -12
  38. package/dist/src/analyzer/package.analyzer.js +0 -126
  39. package/dist/src/analyzer/package.analyzer.js.map +0 -1
  40. package/dist/src/cli/cli.d.ts +0 -10
  41. package/dist/src/cli/cli.js +0 -98
  42. package/dist/src/cli/cli.js.map +0 -1
  43. package/dist/src/cli/cli.types.d.ts +0 -18
  44. package/dist/src/cli/cli.types.js +0 -3
  45. package/dist/src/cli/cli.types.js.map +0 -1
  46. package/dist/src/cli/index.d.ts +0 -6
  47. package/dist/src/cli/index.js +0 -15
  48. package/dist/src/cli/index.js.map +0 -1
  49. package/dist/src/cli/init/config.generator.d.ts +0 -16
  50. package/dist/src/cli/init/config.generator.js +0 -70
  51. package/dist/src/cli/init/config.generator.js.map +0 -1
  52. package/dist/src/cli/init/config.writer.d.ts +0 -10
  53. package/dist/src/cli/init/config.writer.js +0 -43
  54. package/dist/src/cli/init/config.writer.js.map +0 -1
  55. package/dist/src/cli/init/index.d.ts +0 -5
  56. package/dist/src/cli/init/index.js +0 -16
  57. package/dist/src/cli/init/index.js.map +0 -1
  58. package/dist/src/cli/init/init.command.d.ts +0 -3
  59. package/dist/src/cli/init/init.command.js +0 -80
  60. package/dist/src/cli/init/init.command.js.map +0 -1
  61. package/dist/src/cli/init/prompt.builder.d.ts +0 -7
  62. package/dist/src/cli/init/prompt.builder.js +0 -225
  63. package/dist/src/cli/init/prompt.builder.js.map +0 -1
  64. package/dist/src/cli/utils/console.d.ts +0 -11
  65. package/dist/src/cli/utils/console.js +0 -33
  66. package/dist/src/cli/utils/console.js.map +0 -1
  67. package/dist/src/cli/utils/index.d.ts +0 -2
  68. package/dist/src/cli/utils/index.js +0 -7
  69. package/dist/src/cli/utils/index.js.map +0 -1
  70. package/dist/src/config/config.loader.d.ts +0 -22
  71. package/dist/src/config/config.loader.js +0 -105
  72. package/dist/src/config/config.loader.js.map +0 -1
  73. package/dist/src/config/config.module.d.ts +0 -2
  74. package/dist/src/config/config.module.js +0 -21
  75. package/dist/src/config/config.module.js.map +0 -1
  76. package/dist/src/config/config.schema.d.ts +0 -544
  77. package/dist/src/config/config.schema.js +0 -98
  78. package/dist/src/config/config.schema.js.map +0 -1
  79. package/dist/src/config/config.service.d.ts +0 -33
  80. package/dist/src/config/config.service.js +0 -126
  81. package/dist/src/config/config.service.js.map +0 -1
  82. package/dist/src/config/config.types.d.ts +0 -2
  83. package/dist/src/config/config.types.js +0 -6
  84. package/dist/src/config/config.types.js.map +0 -1
  85. package/dist/src/config/context.loader.d.ts +0 -23
  86. package/dist/src/config/context.loader.js +0 -146
  87. package/dist/src/config/context.loader.js.map +0 -1
  88. package/dist/src/config/ignore.parser.d.ts +0 -12
  89. package/dist/src/config/ignore.parser.js +0 -132
  90. package/dist/src/config/ignore.parser.js.map +0 -1
  91. package/dist/src/config/index.d.ts +0 -13
  92. package/dist/src/config/index.js +0 -41
  93. package/dist/src/config/index.js.map +0 -1
  94. package/dist/src/shared/file.utils.d.ts +0 -4
  95. package/dist/src/shared/file.utils.js +0 -37
  96. package/dist/src/shared/file.utils.js.map +0 -1
  97. package/dist/src/shared/path.utils.d.ts +0 -2
  98. package/dist/src/shared/path.utils.js +0 -14
  99. package/dist/src/shared/path.utils.js.map +0 -1
  100. package/dist/tsconfig.build.tsbuildinfo +0 -1
@@ -1,544 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const TechDetailSchema: z.ZodObject<{
3
- version: z.ZodOptional<z.ZodString>;
4
- config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5
- notes: z.ZodOptional<z.ZodString>;
6
- }, "strip", z.ZodTypeAny, {
7
- version?: string | undefined;
8
- config?: Record<string, unknown> | undefined;
9
- notes?: string | undefined;
10
- }, {
11
- version?: string | undefined;
12
- config?: Record<string, unknown> | undefined;
13
- notes?: string | undefined;
14
- }>;
15
- export declare const ArchitectureLayerSchema: z.ZodObject<{
16
- name: z.ZodString;
17
- path: z.ZodString;
18
- description: z.ZodOptional<z.ZodString>;
19
- dependencies: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
20
- }, "strip", z.ZodTypeAny, {
21
- name: string;
22
- path: string;
23
- description?: string | undefined;
24
- dependencies?: string[] | undefined;
25
- }, {
26
- name: string;
27
- path: string;
28
- description?: string | undefined;
29
- dependencies?: string[] | undefined;
30
- }>;
31
- export declare const NamingConventionSchema: z.ZodObject<{
32
- files: z.ZodOptional<z.ZodEnum<["kebab-case", "camelCase", "PascalCase", "snake_case"]>>;
33
- components: z.ZodOptional<z.ZodEnum<["PascalCase", "kebab-case"]>>;
34
- functions: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
35
- variables: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
36
- constants: z.ZodOptional<z.ZodEnum<["UPPER_SNAKE_CASE", "camelCase"]>>;
37
- types: z.ZodOptional<z.ZodEnum<["PascalCase"]>>;
38
- interfaces: z.ZodOptional<z.ZodEnum<["PascalCase", "IPascalCase"]>>;
39
- }, "strip", z.ZodTypeAny, {
40
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
41
- components?: "kebab-case" | "PascalCase" | undefined;
42
- functions?: "camelCase" | "snake_case" | undefined;
43
- variables?: "camelCase" | "snake_case" | undefined;
44
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
45
- types?: "PascalCase" | undefined;
46
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
47
- }, {
48
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
49
- components?: "kebab-case" | "PascalCase" | undefined;
50
- functions?: "camelCase" | "snake_case" | undefined;
51
- variables?: "camelCase" | "snake_case" | undefined;
52
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
53
- types?: "PascalCase" | undefined;
54
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
55
- }>;
56
- export declare const TechStackConfigSchema: z.ZodObject<{
57
- languages: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
58
- frontend: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
59
- backend: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
60
- database: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
61
- infrastructure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
62
- tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
63
- details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
64
- version: z.ZodOptional<z.ZodString>;
65
- config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
66
- notes: z.ZodOptional<z.ZodString>;
67
- }, "strip", z.ZodTypeAny, {
68
- version?: string | undefined;
69
- config?: Record<string, unknown> | undefined;
70
- notes?: string | undefined;
71
- }, {
72
- version?: string | undefined;
73
- config?: Record<string, unknown> | undefined;
74
- notes?: string | undefined;
75
- }>>>;
76
- }, "strip", z.ZodTypeAny, {
77
- languages?: string[] | undefined;
78
- frontend?: string[] | undefined;
79
- backend?: string[] | undefined;
80
- database?: string[] | undefined;
81
- infrastructure?: string[] | undefined;
82
- tools?: string[] | undefined;
83
- details?: Record<string, {
84
- version?: string | undefined;
85
- config?: Record<string, unknown> | undefined;
86
- notes?: string | undefined;
87
- }> | undefined;
88
- }, {
89
- languages?: string[] | undefined;
90
- frontend?: string[] | undefined;
91
- backend?: string[] | undefined;
92
- database?: string[] | undefined;
93
- infrastructure?: string[] | undefined;
94
- tools?: string[] | undefined;
95
- details?: Record<string, {
96
- version?: string | undefined;
97
- config?: Record<string, unknown> | undefined;
98
- notes?: string | undefined;
99
- }> | undefined;
100
- }>;
101
- export declare const ArchitectureConfigSchema: z.ZodObject<{
102
- pattern: z.ZodOptional<z.ZodString>;
103
- structure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
104
- componentStyle: z.ZodOptional<z.ZodEnum<["flat", "grouped", "feature-based"]>>;
105
- layers: z.ZodOptional<z.ZodArray<z.ZodObject<{
106
- name: z.ZodString;
107
- path: z.ZodString;
108
- description: z.ZodOptional<z.ZodString>;
109
- dependencies: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
110
- }, "strip", z.ZodTypeAny, {
111
- name: string;
112
- path: string;
113
- description?: string | undefined;
114
- dependencies?: string[] | undefined;
115
- }, {
116
- name: string;
117
- path: string;
118
- description?: string | undefined;
119
- dependencies?: string[] | undefined;
120
- }>, "many">>;
121
- }, "strip", z.ZodTypeAny, {
122
- pattern?: string | undefined;
123
- structure?: string[] | undefined;
124
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
125
- layers?: {
126
- name: string;
127
- path: string;
128
- description?: string | undefined;
129
- dependencies?: string[] | undefined;
130
- }[] | undefined;
131
- }, {
132
- pattern?: string | undefined;
133
- structure?: string[] | undefined;
134
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
135
- layers?: {
136
- name: string;
137
- path: string;
138
- description?: string | undefined;
139
- dependencies?: string[] | undefined;
140
- }[] | undefined;
141
- }>;
142
- export declare const ConventionsConfigSchema: z.ZodObject<{
143
- style: z.ZodOptional<z.ZodString>;
144
- naming: z.ZodOptional<z.ZodObject<{
145
- files: z.ZodOptional<z.ZodEnum<["kebab-case", "camelCase", "PascalCase", "snake_case"]>>;
146
- components: z.ZodOptional<z.ZodEnum<["PascalCase", "kebab-case"]>>;
147
- functions: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
148
- variables: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
149
- constants: z.ZodOptional<z.ZodEnum<["UPPER_SNAKE_CASE", "camelCase"]>>;
150
- types: z.ZodOptional<z.ZodEnum<["PascalCase"]>>;
151
- interfaces: z.ZodOptional<z.ZodEnum<["PascalCase", "IPascalCase"]>>;
152
- }, "strip", z.ZodTypeAny, {
153
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
154
- components?: "kebab-case" | "PascalCase" | undefined;
155
- functions?: "camelCase" | "snake_case" | undefined;
156
- variables?: "camelCase" | "snake_case" | undefined;
157
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
158
- types?: "PascalCase" | undefined;
159
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
160
- }, {
161
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
162
- components?: "kebab-case" | "PascalCase" | undefined;
163
- functions?: "camelCase" | "snake_case" | undefined;
164
- variables?: "camelCase" | "snake_case" | undefined;
165
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
166
- types?: "PascalCase" | undefined;
167
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
168
- }>>;
169
- importOrder: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
170
- maxLineLength: z.ZodOptional<z.ZodNumber>;
171
- semicolons: z.ZodOptional<z.ZodBoolean>;
172
- quotes: z.ZodOptional<z.ZodEnum<["single", "double"]>>;
173
- rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
174
- }, "strip", z.ZodTypeAny, {
175
- rules?: Record<string, unknown> | undefined;
176
- style?: string | undefined;
177
- naming?: {
178
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
179
- components?: "kebab-case" | "PascalCase" | undefined;
180
- functions?: "camelCase" | "snake_case" | undefined;
181
- variables?: "camelCase" | "snake_case" | undefined;
182
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
183
- types?: "PascalCase" | undefined;
184
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
185
- } | undefined;
186
- importOrder?: string[] | undefined;
187
- maxLineLength?: number | undefined;
188
- semicolons?: boolean | undefined;
189
- quotes?: "single" | "double" | undefined;
190
- }, {
191
- rules?: Record<string, unknown> | undefined;
192
- style?: string | undefined;
193
- naming?: {
194
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
195
- components?: "kebab-case" | "PascalCase" | undefined;
196
- functions?: "camelCase" | "snake_case" | undefined;
197
- variables?: "camelCase" | "snake_case" | undefined;
198
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
199
- types?: "PascalCase" | undefined;
200
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
201
- } | undefined;
202
- importOrder?: string[] | undefined;
203
- maxLineLength?: number | undefined;
204
- semicolons?: boolean | undefined;
205
- quotes?: "single" | "double" | undefined;
206
- }>;
207
- export declare const TestStrategyConfigSchema: z.ZodObject<{
208
- approach: z.ZodOptional<z.ZodEnum<["tdd", "bdd", "test-after", "mixed"]>>;
209
- frameworks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
210
- coverage: z.ZodOptional<z.ZodNumber>;
211
- unitTestPattern: z.ZodOptional<z.ZodEnum<["colocated", "separate"]>>;
212
- e2eDirectory: z.ZodOptional<z.ZodString>;
213
- mockingStrategy: z.ZodOptional<z.ZodEnum<["minimal", "extensive", "no-mocks"]>>;
214
- }, "strip", z.ZodTypeAny, {
215
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
216
- frameworks?: string[] | undefined;
217
- coverage?: number | undefined;
218
- unitTestPattern?: "colocated" | "separate" | undefined;
219
- e2eDirectory?: string | undefined;
220
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
221
- }, {
222
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
223
- frameworks?: string[] | undefined;
224
- coverage?: number | undefined;
225
- unitTestPattern?: "colocated" | "separate" | undefined;
226
- e2eDirectory?: string | undefined;
227
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
228
- }>;
229
- export declare const CodingBuddyConfigSchema: z.ZodObject<{
230
- language: z.ZodOptional<z.ZodString>;
231
- projectName: z.ZodOptional<z.ZodString>;
232
- description: z.ZodOptional<z.ZodString>;
233
- repository: z.ZodOptional<z.ZodString>;
234
- techStack: z.ZodOptional<z.ZodObject<{
235
- languages: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
236
- frontend: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
237
- backend: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
238
- database: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
239
- infrastructure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
240
- tools: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
241
- details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
242
- version: z.ZodOptional<z.ZodString>;
243
- config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
244
- notes: z.ZodOptional<z.ZodString>;
245
- }, "strip", z.ZodTypeAny, {
246
- version?: string | undefined;
247
- config?: Record<string, unknown> | undefined;
248
- notes?: string | undefined;
249
- }, {
250
- version?: string | undefined;
251
- config?: Record<string, unknown> | undefined;
252
- notes?: string | undefined;
253
- }>>>;
254
- }, "strip", z.ZodTypeAny, {
255
- languages?: string[] | undefined;
256
- frontend?: string[] | undefined;
257
- backend?: string[] | undefined;
258
- database?: string[] | undefined;
259
- infrastructure?: string[] | undefined;
260
- tools?: string[] | undefined;
261
- details?: Record<string, {
262
- version?: string | undefined;
263
- config?: Record<string, unknown> | undefined;
264
- notes?: string | undefined;
265
- }> | undefined;
266
- }, {
267
- languages?: string[] | undefined;
268
- frontend?: string[] | undefined;
269
- backend?: string[] | undefined;
270
- database?: string[] | undefined;
271
- infrastructure?: string[] | undefined;
272
- tools?: string[] | undefined;
273
- details?: Record<string, {
274
- version?: string | undefined;
275
- config?: Record<string, unknown> | undefined;
276
- notes?: string | undefined;
277
- }> | undefined;
278
- }>>;
279
- architecture: z.ZodOptional<z.ZodObject<{
280
- pattern: z.ZodOptional<z.ZodString>;
281
- structure: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
282
- componentStyle: z.ZodOptional<z.ZodEnum<["flat", "grouped", "feature-based"]>>;
283
- layers: z.ZodOptional<z.ZodArray<z.ZodObject<{
284
- name: z.ZodString;
285
- path: z.ZodString;
286
- description: z.ZodOptional<z.ZodString>;
287
- dependencies: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
288
- }, "strip", z.ZodTypeAny, {
289
- name: string;
290
- path: string;
291
- description?: string | undefined;
292
- dependencies?: string[] | undefined;
293
- }, {
294
- name: string;
295
- path: string;
296
- description?: string | undefined;
297
- dependencies?: string[] | undefined;
298
- }>, "many">>;
299
- }, "strip", z.ZodTypeAny, {
300
- pattern?: string | undefined;
301
- structure?: string[] | undefined;
302
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
303
- layers?: {
304
- name: string;
305
- path: string;
306
- description?: string | undefined;
307
- dependencies?: string[] | undefined;
308
- }[] | undefined;
309
- }, {
310
- pattern?: string | undefined;
311
- structure?: string[] | undefined;
312
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
313
- layers?: {
314
- name: string;
315
- path: string;
316
- description?: string | undefined;
317
- dependencies?: string[] | undefined;
318
- }[] | undefined;
319
- }>>;
320
- conventions: z.ZodOptional<z.ZodObject<{
321
- style: z.ZodOptional<z.ZodString>;
322
- naming: z.ZodOptional<z.ZodObject<{
323
- files: z.ZodOptional<z.ZodEnum<["kebab-case", "camelCase", "PascalCase", "snake_case"]>>;
324
- components: z.ZodOptional<z.ZodEnum<["PascalCase", "kebab-case"]>>;
325
- functions: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
326
- variables: z.ZodOptional<z.ZodEnum<["camelCase", "snake_case"]>>;
327
- constants: z.ZodOptional<z.ZodEnum<["UPPER_SNAKE_CASE", "camelCase"]>>;
328
- types: z.ZodOptional<z.ZodEnum<["PascalCase"]>>;
329
- interfaces: z.ZodOptional<z.ZodEnum<["PascalCase", "IPascalCase"]>>;
330
- }, "strip", z.ZodTypeAny, {
331
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
332
- components?: "kebab-case" | "PascalCase" | undefined;
333
- functions?: "camelCase" | "snake_case" | undefined;
334
- variables?: "camelCase" | "snake_case" | undefined;
335
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
336
- types?: "PascalCase" | undefined;
337
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
338
- }, {
339
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
340
- components?: "kebab-case" | "PascalCase" | undefined;
341
- functions?: "camelCase" | "snake_case" | undefined;
342
- variables?: "camelCase" | "snake_case" | undefined;
343
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
344
- types?: "PascalCase" | undefined;
345
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
346
- }>>;
347
- importOrder: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
348
- maxLineLength: z.ZodOptional<z.ZodNumber>;
349
- semicolons: z.ZodOptional<z.ZodBoolean>;
350
- quotes: z.ZodOptional<z.ZodEnum<["single", "double"]>>;
351
- rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
352
- }, "strip", z.ZodTypeAny, {
353
- rules?: Record<string, unknown> | undefined;
354
- style?: string | undefined;
355
- naming?: {
356
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
357
- components?: "kebab-case" | "PascalCase" | undefined;
358
- functions?: "camelCase" | "snake_case" | undefined;
359
- variables?: "camelCase" | "snake_case" | undefined;
360
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
361
- types?: "PascalCase" | undefined;
362
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
363
- } | undefined;
364
- importOrder?: string[] | undefined;
365
- maxLineLength?: number | undefined;
366
- semicolons?: boolean | undefined;
367
- quotes?: "single" | "double" | undefined;
368
- }, {
369
- rules?: Record<string, unknown> | undefined;
370
- style?: string | undefined;
371
- naming?: {
372
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
373
- components?: "kebab-case" | "PascalCase" | undefined;
374
- functions?: "camelCase" | "snake_case" | undefined;
375
- variables?: "camelCase" | "snake_case" | undefined;
376
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
377
- types?: "PascalCase" | undefined;
378
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
379
- } | undefined;
380
- importOrder?: string[] | undefined;
381
- maxLineLength?: number | undefined;
382
- semicolons?: boolean | undefined;
383
- quotes?: "single" | "double" | undefined;
384
- }>>;
385
- testStrategy: z.ZodOptional<z.ZodObject<{
386
- approach: z.ZodOptional<z.ZodEnum<["tdd", "bdd", "test-after", "mixed"]>>;
387
- frameworks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
388
- coverage: z.ZodOptional<z.ZodNumber>;
389
- unitTestPattern: z.ZodOptional<z.ZodEnum<["colocated", "separate"]>>;
390
- e2eDirectory: z.ZodOptional<z.ZodString>;
391
- mockingStrategy: z.ZodOptional<z.ZodEnum<["minimal", "extensive", "no-mocks"]>>;
392
- }, "strip", z.ZodTypeAny, {
393
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
394
- frameworks?: string[] | undefined;
395
- coverage?: number | undefined;
396
- unitTestPattern?: "colocated" | "separate" | undefined;
397
- e2eDirectory?: string | undefined;
398
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
399
- }, {
400
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
401
- frameworks?: string[] | undefined;
402
- coverage?: number | undefined;
403
- unitTestPattern?: "colocated" | "separate" | undefined;
404
- e2eDirectory?: string | undefined;
405
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
406
- }>>;
407
- keyFiles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
408
- avoid: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
409
- custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
410
- }, "strip", z.ZodTypeAny, {
411
- custom?: Record<string, unknown> | undefined;
412
- description?: string | undefined;
413
- language?: string | undefined;
414
- projectName?: string | undefined;
415
- repository?: string | undefined;
416
- techStack?: {
417
- languages?: string[] | undefined;
418
- frontend?: string[] | undefined;
419
- backend?: string[] | undefined;
420
- database?: string[] | undefined;
421
- infrastructure?: string[] | undefined;
422
- tools?: string[] | undefined;
423
- details?: Record<string, {
424
- version?: string | undefined;
425
- config?: Record<string, unknown> | undefined;
426
- notes?: string | undefined;
427
- }> | undefined;
428
- } | undefined;
429
- architecture?: {
430
- pattern?: string | undefined;
431
- structure?: string[] | undefined;
432
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
433
- layers?: {
434
- name: string;
435
- path: string;
436
- description?: string | undefined;
437
- dependencies?: string[] | undefined;
438
- }[] | undefined;
439
- } | undefined;
440
- conventions?: {
441
- rules?: Record<string, unknown> | undefined;
442
- style?: string | undefined;
443
- naming?: {
444
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
445
- components?: "kebab-case" | "PascalCase" | undefined;
446
- functions?: "camelCase" | "snake_case" | undefined;
447
- variables?: "camelCase" | "snake_case" | undefined;
448
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
449
- types?: "PascalCase" | undefined;
450
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
451
- } | undefined;
452
- importOrder?: string[] | undefined;
453
- maxLineLength?: number | undefined;
454
- semicolons?: boolean | undefined;
455
- quotes?: "single" | "double" | undefined;
456
- } | undefined;
457
- testStrategy?: {
458
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
459
- frameworks?: string[] | undefined;
460
- coverage?: number | undefined;
461
- unitTestPattern?: "colocated" | "separate" | undefined;
462
- e2eDirectory?: string | undefined;
463
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
464
- } | undefined;
465
- keyFiles?: string[] | undefined;
466
- avoid?: string[] | undefined;
467
- }, {
468
- custom?: Record<string, unknown> | undefined;
469
- description?: string | undefined;
470
- language?: string | undefined;
471
- projectName?: string | undefined;
472
- repository?: string | undefined;
473
- techStack?: {
474
- languages?: string[] | undefined;
475
- frontend?: string[] | undefined;
476
- backend?: string[] | undefined;
477
- database?: string[] | undefined;
478
- infrastructure?: string[] | undefined;
479
- tools?: string[] | undefined;
480
- details?: Record<string, {
481
- version?: string | undefined;
482
- config?: Record<string, unknown> | undefined;
483
- notes?: string | undefined;
484
- }> | undefined;
485
- } | undefined;
486
- architecture?: {
487
- pattern?: string | undefined;
488
- structure?: string[] | undefined;
489
- componentStyle?: "flat" | "grouped" | "feature-based" | undefined;
490
- layers?: {
491
- name: string;
492
- path: string;
493
- description?: string | undefined;
494
- dependencies?: string[] | undefined;
495
- }[] | undefined;
496
- } | undefined;
497
- conventions?: {
498
- rules?: Record<string, unknown> | undefined;
499
- style?: string | undefined;
500
- naming?: {
501
- files?: "kebab-case" | "camelCase" | "PascalCase" | "snake_case" | undefined;
502
- components?: "kebab-case" | "PascalCase" | undefined;
503
- functions?: "camelCase" | "snake_case" | undefined;
504
- variables?: "camelCase" | "snake_case" | undefined;
505
- constants?: "camelCase" | "UPPER_SNAKE_CASE" | undefined;
506
- types?: "PascalCase" | undefined;
507
- interfaces?: "PascalCase" | "IPascalCase" | undefined;
508
- } | undefined;
509
- importOrder?: string[] | undefined;
510
- maxLineLength?: number | undefined;
511
- semicolons?: boolean | undefined;
512
- quotes?: "single" | "double" | undefined;
513
- } | undefined;
514
- testStrategy?: {
515
- approach?: "tdd" | "bdd" | "test-after" | "mixed" | undefined;
516
- frameworks?: string[] | undefined;
517
- coverage?: number | undefined;
518
- unitTestPattern?: "colocated" | "separate" | undefined;
519
- e2eDirectory?: string | undefined;
520
- mockingStrategy?: "minimal" | "extensive" | "no-mocks" | undefined;
521
- } | undefined;
522
- keyFiles?: string[] | undefined;
523
- avoid?: string[] | undefined;
524
- }>;
525
- export type TechDetail = z.infer<typeof TechDetailSchema>;
526
- export type ArchitectureLayer = z.infer<typeof ArchitectureLayerSchema>;
527
- export type NamingConvention = z.infer<typeof NamingConventionSchema>;
528
- export type TechStackConfig = z.infer<typeof TechStackConfigSchema>;
529
- export type ArchitectureConfig = z.infer<typeof ArchitectureConfigSchema>;
530
- export type ConventionsConfig = z.infer<typeof ConventionsConfigSchema>;
531
- export type TestStrategyConfig = z.infer<typeof TestStrategyConfigSchema>;
532
- export type CodingBuddyConfig = z.infer<typeof CodingBuddyConfigSchema>;
533
- export interface ValidationResult {
534
- success: boolean;
535
- data?: CodingBuddyConfig;
536
- errors?: ValidationError[];
537
- }
538
- export interface ValidationError {
539
- path: string;
540
- message: string;
541
- }
542
- export declare function validateConfig(config: unknown): ValidationResult;
543
- export declare function parseConfig(config: unknown): CodingBuddyConfig;
544
- export declare function isCodingBuddyConfig(value: unknown): value is CodingBuddyConfig;
@@ -1,98 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CodingBuddyConfigSchema = exports.TestStrategyConfigSchema = exports.ConventionsConfigSchema = exports.ArchitectureConfigSchema = exports.TechStackConfigSchema = exports.NamingConventionSchema = exports.ArchitectureLayerSchema = exports.TechDetailSchema = void 0;
4
- exports.validateConfig = validateConfig;
5
- exports.parseConfig = parseConfig;
6
- exports.isCodingBuddyConfig = isCodingBuddyConfig;
7
- const zod_1 = require("zod");
8
- exports.TechDetailSchema = zod_1.z.object({
9
- version: zod_1.z.string().optional(),
10
- config: zod_1.z.record(zod_1.z.unknown()).optional(),
11
- notes: zod_1.z.string().optional(),
12
- });
13
- exports.ArchitectureLayerSchema = zod_1.z.object({
14
- name: zod_1.z.string(),
15
- path: zod_1.z.string(),
16
- description: zod_1.z.string().optional(),
17
- dependencies: zod_1.z.array(zod_1.z.string()).optional(),
18
- });
19
- exports.NamingConventionSchema = zod_1.z.object({
20
- files: zod_1.z
21
- .enum(['kebab-case', 'camelCase', 'PascalCase', 'snake_case'])
22
- .optional(),
23
- components: zod_1.z.enum(['PascalCase', 'kebab-case']).optional(),
24
- functions: zod_1.z.enum(['camelCase', 'snake_case']).optional(),
25
- variables: zod_1.z.enum(['camelCase', 'snake_case']).optional(),
26
- constants: zod_1.z.enum(['UPPER_SNAKE_CASE', 'camelCase']).optional(),
27
- types: zod_1.z.enum(['PascalCase']).optional(),
28
- interfaces: zod_1.z.enum(['PascalCase', 'IPascalCase']).optional(),
29
- });
30
- exports.TechStackConfigSchema = zod_1.z.object({
31
- languages: zod_1.z.array(zod_1.z.string()).optional(),
32
- frontend: zod_1.z.array(zod_1.z.string()).optional(),
33
- backend: zod_1.z.array(zod_1.z.string()).optional(),
34
- database: zod_1.z.array(zod_1.z.string()).optional(),
35
- infrastructure: zod_1.z.array(zod_1.z.string()).optional(),
36
- tools: zod_1.z.array(zod_1.z.string()).optional(),
37
- details: zod_1.z.record(exports.TechDetailSchema).optional(),
38
- });
39
- exports.ArchitectureConfigSchema = zod_1.z.object({
40
- pattern: zod_1.z.string().optional(),
41
- structure: zod_1.z.array(zod_1.z.string()).optional(),
42
- componentStyle: zod_1.z.enum(['flat', 'grouped', 'feature-based']).optional(),
43
- layers: zod_1.z.array(exports.ArchitectureLayerSchema).optional(),
44
- });
45
- exports.ConventionsConfigSchema = zod_1.z.object({
46
- style: zod_1.z.string().optional(),
47
- naming: exports.NamingConventionSchema.optional(),
48
- importOrder: zod_1.z.array(zod_1.z.string()).optional(),
49
- maxLineLength: zod_1.z.number().int().positive().optional(),
50
- semicolons: zod_1.z.boolean().optional(),
51
- quotes: zod_1.z.enum(['single', 'double']).optional(),
52
- rules: zod_1.z.record(zod_1.z.unknown()).optional(),
53
- });
54
- exports.TestStrategyConfigSchema = zod_1.z.object({
55
- approach: zod_1.z.enum(['tdd', 'bdd', 'test-after', 'mixed']).optional(),
56
- frameworks: zod_1.z.array(zod_1.z.string()).optional(),
57
- coverage: zod_1.z.number().min(0).max(100).optional(),
58
- unitTestPattern: zod_1.z.enum(['colocated', 'separate']).optional(),
59
- e2eDirectory: zod_1.z.string().optional(),
60
- mockingStrategy: zod_1.z.enum(['minimal', 'extensive', 'no-mocks']).optional(),
61
- });
62
- exports.CodingBuddyConfigSchema = zod_1.z.object({
63
- language: zod_1.z.string().optional(),
64
- projectName: zod_1.z.string().optional(),
65
- description: zod_1.z.string().optional(),
66
- repository: zod_1.z.string().url().optional(),
67
- techStack: exports.TechStackConfigSchema.optional(),
68
- architecture: exports.ArchitectureConfigSchema.optional(),
69
- conventions: exports.ConventionsConfigSchema.optional(),
70
- testStrategy: exports.TestStrategyConfigSchema.optional(),
71
- keyFiles: zod_1.z.array(zod_1.z.string()).optional(),
72
- avoid: zod_1.z.array(zod_1.z.string()).optional(),
73
- custom: zod_1.z.record(zod_1.z.unknown()).optional(),
74
- });
75
- function validateConfig(config) {
76
- const result = exports.CodingBuddyConfigSchema.safeParse(config);
77
- if (result.success) {
78
- return {
79
- success: true,
80
- data: result.data,
81
- };
82
- }
83
- const errors = result.error.issues.map(issue => ({
84
- path: issue.path.join('.'),
85
- message: issue.message,
86
- }));
87
- return {
88
- success: false,
89
- errors,
90
- };
91
- }
92
- function parseConfig(config) {
93
- return exports.CodingBuddyConfigSchema.parse(config);
94
- }
95
- function isCodingBuddyConfig(value) {
96
- return exports.CodingBuddyConfigSchema.safeParse(value).success;
97
- }
98
- //# sourceMappingURL=config.schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../../../src/config/config.schema.ts"],"names":[],"mappings":"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"}