@open330/oac-core 2026.2.17

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.
@@ -0,0 +1,1659 @@
1
+ import { z } from 'zod';
2
+ import { EventEmitter } from 'eventemitter3';
3
+
4
+ declare const RepoTargetSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
5
+ name: z.ZodString;
6
+ branch: z.ZodOptional<z.ZodString>;
7
+ }, "strict", z.ZodTypeAny, {
8
+ name: string;
9
+ branch?: string | undefined;
10
+ }, {
11
+ name: string;
12
+ branch?: string | undefined;
13
+ }>]>;
14
+ declare const ProviderSchema: z.ZodDefault<z.ZodObject<{
15
+ id: z.ZodDefault<z.ZodString>;
16
+ options: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
17
+ }, "strict", z.ZodTypeAny, {
18
+ options: Record<string, unknown>;
19
+ id: string;
20
+ }, {
21
+ options?: Record<string, unknown> | undefined;
22
+ id?: string | undefined;
23
+ }>>;
24
+ declare const BudgetSchema: z.ZodDefault<z.ZodObject<{
25
+ totalTokens: z.ZodDefault<z.ZodNumber>;
26
+ reservePercent: z.ZodDefault<z.ZodNumber>;
27
+ estimationPadding: z.ZodDefault<z.ZodNumber>;
28
+ }, "strict", z.ZodTypeAny, {
29
+ totalTokens: number;
30
+ reservePercent: number;
31
+ estimationPadding: number;
32
+ }, {
33
+ totalTokens?: number | undefined;
34
+ reservePercent?: number | undefined;
35
+ estimationPadding?: number | undefined;
36
+ }>>;
37
+ declare const DiscoveryScannersSchema: z.ZodDefault<z.ZodObject<{
38
+ lint: z.ZodDefault<z.ZodBoolean>;
39
+ todo: z.ZodDefault<z.ZodBoolean>;
40
+ testGap: z.ZodDefault<z.ZodBoolean>;
41
+ deadCode: z.ZodDefault<z.ZodBoolean>;
42
+ githubIssues: z.ZodDefault<z.ZodBoolean>;
43
+ }, "strict", z.ZodTypeAny, {
44
+ lint: boolean;
45
+ todo: boolean;
46
+ testGap: boolean;
47
+ deadCode: boolean;
48
+ githubIssues: boolean;
49
+ }, {
50
+ lint?: boolean | undefined;
51
+ todo?: boolean | undefined;
52
+ testGap?: boolean | undefined;
53
+ deadCode?: boolean | undefined;
54
+ githubIssues?: boolean | undefined;
55
+ }>>;
56
+ declare const DiscoverySchema: z.ZodDefault<z.ZodObject<{
57
+ scanners: z.ZodDefault<z.ZodObject<{
58
+ lint: z.ZodDefault<z.ZodBoolean>;
59
+ todo: z.ZodDefault<z.ZodBoolean>;
60
+ testGap: z.ZodDefault<z.ZodBoolean>;
61
+ deadCode: z.ZodDefault<z.ZodBoolean>;
62
+ githubIssues: z.ZodDefault<z.ZodBoolean>;
63
+ }, "strict", z.ZodTypeAny, {
64
+ lint: boolean;
65
+ todo: boolean;
66
+ testGap: boolean;
67
+ deadCode: boolean;
68
+ githubIssues: boolean;
69
+ }, {
70
+ lint?: boolean | undefined;
71
+ todo?: boolean | undefined;
72
+ testGap?: boolean | undefined;
73
+ deadCode?: boolean | undefined;
74
+ githubIssues?: boolean | undefined;
75
+ }>>;
76
+ issueLabels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
77
+ minPriority: z.ZodDefault<z.ZodNumber>;
78
+ maxTasks: z.ZodDefault<z.ZodNumber>;
79
+ customScanners: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
80
+ exclude: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
81
+ }, "strict", z.ZodTypeAny, {
82
+ scanners: {
83
+ lint: boolean;
84
+ todo: boolean;
85
+ testGap: boolean;
86
+ deadCode: boolean;
87
+ githubIssues: boolean;
88
+ };
89
+ issueLabels: string[];
90
+ minPriority: number;
91
+ maxTasks: number;
92
+ customScanners: string[];
93
+ exclude: string[];
94
+ }, {
95
+ scanners?: {
96
+ lint?: boolean | undefined;
97
+ todo?: boolean | undefined;
98
+ testGap?: boolean | undefined;
99
+ deadCode?: boolean | undefined;
100
+ githubIssues?: boolean | undefined;
101
+ } | undefined;
102
+ issueLabels?: string[] | undefined;
103
+ minPriority?: number | undefined;
104
+ maxTasks?: number | undefined;
105
+ customScanners?: string[] | undefined;
106
+ exclude?: string[] | undefined;
107
+ }>>;
108
+ declare const ValidationSchema: z.ZodDefault<z.ZodObject<{
109
+ lint: z.ZodDefault<z.ZodBoolean>;
110
+ test: z.ZodDefault<z.ZodBoolean>;
111
+ typeCheck: z.ZodDefault<z.ZodBoolean>;
112
+ maxDiffLines: z.ZodDefault<z.ZodNumber>;
113
+ }, "strict", z.ZodTypeAny, {
114
+ lint: boolean;
115
+ test: boolean;
116
+ typeCheck: boolean;
117
+ maxDiffLines: number;
118
+ }, {
119
+ lint?: boolean | undefined;
120
+ test?: boolean | undefined;
121
+ typeCheck?: boolean | undefined;
122
+ maxDiffLines?: number | undefined;
123
+ }>>;
124
+ declare const PrSchema: z.ZodDefault<z.ZodObject<{
125
+ draft: z.ZodDefault<z.ZodBoolean>;
126
+ labels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
127
+ reviewers: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
128
+ assignees: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
129
+ }, "strict", z.ZodTypeAny, {
130
+ draft: boolean;
131
+ labels: string[];
132
+ reviewers: string[];
133
+ assignees: string[];
134
+ }, {
135
+ draft?: boolean | undefined;
136
+ labels?: string[] | undefined;
137
+ reviewers?: string[] | undefined;
138
+ assignees?: string[] | undefined;
139
+ }>>;
140
+ declare const ExecutionSchema: z.ZodDefault<z.ZodObject<{
141
+ concurrency: z.ZodDefault<z.ZodNumber>;
142
+ taskTimeout: z.ZodDefault<z.ZodNumber>;
143
+ maxRetries: z.ZodDefault<z.ZodNumber>;
144
+ mode: z.ZodDefault<z.ZodEnum<["new-pr", "update-pr", "direct-commit"]>>;
145
+ branchPattern: z.ZodDefault<z.ZodString>;
146
+ validation: z.ZodDefault<z.ZodObject<{
147
+ lint: z.ZodDefault<z.ZodBoolean>;
148
+ test: z.ZodDefault<z.ZodBoolean>;
149
+ typeCheck: z.ZodDefault<z.ZodBoolean>;
150
+ maxDiffLines: z.ZodDefault<z.ZodNumber>;
151
+ }, "strict", z.ZodTypeAny, {
152
+ lint: boolean;
153
+ test: boolean;
154
+ typeCheck: boolean;
155
+ maxDiffLines: number;
156
+ }, {
157
+ lint?: boolean | undefined;
158
+ test?: boolean | undefined;
159
+ typeCheck?: boolean | undefined;
160
+ maxDiffLines?: number | undefined;
161
+ }>>;
162
+ pr: z.ZodDefault<z.ZodObject<{
163
+ draft: z.ZodDefault<z.ZodBoolean>;
164
+ labels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
165
+ reviewers: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
166
+ assignees: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
167
+ }, "strict", z.ZodTypeAny, {
168
+ draft: boolean;
169
+ labels: string[];
170
+ reviewers: string[];
171
+ assignees: string[];
172
+ }, {
173
+ draft?: boolean | undefined;
174
+ labels?: string[] | undefined;
175
+ reviewers?: string[] | undefined;
176
+ assignees?: string[] | undefined;
177
+ }>>;
178
+ }, "strict", z.ZodTypeAny, {
179
+ validation: {
180
+ lint: boolean;
181
+ test: boolean;
182
+ typeCheck: boolean;
183
+ maxDiffLines: number;
184
+ };
185
+ concurrency: number;
186
+ taskTimeout: number;
187
+ maxRetries: number;
188
+ mode: "new-pr" | "update-pr" | "direct-commit";
189
+ branchPattern: string;
190
+ pr: {
191
+ draft: boolean;
192
+ labels: string[];
193
+ reviewers: string[];
194
+ assignees: string[];
195
+ };
196
+ }, {
197
+ validation?: {
198
+ lint?: boolean | undefined;
199
+ test?: boolean | undefined;
200
+ typeCheck?: boolean | undefined;
201
+ maxDiffLines?: number | undefined;
202
+ } | undefined;
203
+ concurrency?: number | undefined;
204
+ taskTimeout?: number | undefined;
205
+ maxRetries?: number | undefined;
206
+ mode?: "new-pr" | "update-pr" | "direct-commit" | undefined;
207
+ branchPattern?: string | undefined;
208
+ pr?: {
209
+ draft?: boolean | undefined;
210
+ labels?: string[] | undefined;
211
+ reviewers?: string[] | undefined;
212
+ assignees?: string[] | undefined;
213
+ } | undefined;
214
+ }>>;
215
+ declare const LinearIntegrationSchema: z.ZodEffects<z.ZodDefault<z.ZodObject<{
216
+ enabled: z.ZodDefault<z.ZodBoolean>;
217
+ apiKey: z.ZodOptional<z.ZodString>;
218
+ teamId: z.ZodOptional<z.ZodString>;
219
+ }, "strict", z.ZodTypeAny, {
220
+ enabled: boolean;
221
+ apiKey?: string | undefined;
222
+ teamId?: string | undefined;
223
+ }, {
224
+ enabled?: boolean | undefined;
225
+ apiKey?: string | undefined;
226
+ teamId?: string | undefined;
227
+ }>>, {
228
+ enabled: boolean;
229
+ apiKey?: string | undefined;
230
+ teamId?: string | undefined;
231
+ }, {
232
+ enabled?: boolean | undefined;
233
+ apiKey?: string | undefined;
234
+ teamId?: string | undefined;
235
+ } | undefined>;
236
+ declare const JiraIntegrationSchema: z.ZodEffects<z.ZodDefault<z.ZodObject<{
237
+ enabled: z.ZodDefault<z.ZodBoolean>;
238
+ baseUrl: z.ZodOptional<z.ZodString>;
239
+ email: z.ZodOptional<z.ZodString>;
240
+ apiToken: z.ZodOptional<z.ZodString>;
241
+ projectKey: z.ZodOptional<z.ZodString>;
242
+ }, "strict", z.ZodTypeAny, {
243
+ enabled: boolean;
244
+ baseUrl?: string | undefined;
245
+ email?: string | undefined;
246
+ apiToken?: string | undefined;
247
+ projectKey?: string | undefined;
248
+ }, {
249
+ enabled?: boolean | undefined;
250
+ baseUrl?: string | undefined;
251
+ email?: string | undefined;
252
+ apiToken?: string | undefined;
253
+ projectKey?: string | undefined;
254
+ }>>, {
255
+ enabled: boolean;
256
+ baseUrl?: string | undefined;
257
+ email?: string | undefined;
258
+ apiToken?: string | undefined;
259
+ projectKey?: string | undefined;
260
+ }, {
261
+ enabled?: boolean | undefined;
262
+ baseUrl?: string | undefined;
263
+ email?: string | undefined;
264
+ apiToken?: string | undefined;
265
+ projectKey?: string | undefined;
266
+ } | undefined>;
267
+ declare const CompletionSchema: z.ZodDefault<z.ZodObject<{
268
+ integrations: z.ZodDefault<z.ZodObject<{
269
+ linear: z.ZodEffects<z.ZodDefault<z.ZodObject<{
270
+ enabled: z.ZodDefault<z.ZodBoolean>;
271
+ apiKey: z.ZodOptional<z.ZodString>;
272
+ teamId: z.ZodOptional<z.ZodString>;
273
+ }, "strict", z.ZodTypeAny, {
274
+ enabled: boolean;
275
+ apiKey?: string | undefined;
276
+ teamId?: string | undefined;
277
+ }, {
278
+ enabled?: boolean | undefined;
279
+ apiKey?: string | undefined;
280
+ teamId?: string | undefined;
281
+ }>>, {
282
+ enabled: boolean;
283
+ apiKey?: string | undefined;
284
+ teamId?: string | undefined;
285
+ }, {
286
+ enabled?: boolean | undefined;
287
+ apiKey?: string | undefined;
288
+ teamId?: string | undefined;
289
+ } | undefined>;
290
+ jira: z.ZodEffects<z.ZodDefault<z.ZodObject<{
291
+ enabled: z.ZodDefault<z.ZodBoolean>;
292
+ baseUrl: z.ZodOptional<z.ZodString>;
293
+ email: z.ZodOptional<z.ZodString>;
294
+ apiToken: z.ZodOptional<z.ZodString>;
295
+ projectKey: z.ZodOptional<z.ZodString>;
296
+ }, "strict", z.ZodTypeAny, {
297
+ enabled: boolean;
298
+ baseUrl?: string | undefined;
299
+ email?: string | undefined;
300
+ apiToken?: string | undefined;
301
+ projectKey?: string | undefined;
302
+ }, {
303
+ enabled?: boolean | undefined;
304
+ baseUrl?: string | undefined;
305
+ email?: string | undefined;
306
+ apiToken?: string | undefined;
307
+ projectKey?: string | undefined;
308
+ }>>, {
309
+ enabled: boolean;
310
+ baseUrl?: string | undefined;
311
+ email?: string | undefined;
312
+ apiToken?: string | undefined;
313
+ projectKey?: string | undefined;
314
+ }, {
315
+ enabled?: boolean | undefined;
316
+ baseUrl?: string | undefined;
317
+ email?: string | undefined;
318
+ apiToken?: string | undefined;
319
+ projectKey?: string | undefined;
320
+ } | undefined>;
321
+ }, "strict", z.ZodTypeAny, {
322
+ linear: {
323
+ enabled: boolean;
324
+ apiKey?: string | undefined;
325
+ teamId?: string | undefined;
326
+ };
327
+ jira: {
328
+ enabled: boolean;
329
+ baseUrl?: string | undefined;
330
+ email?: string | undefined;
331
+ apiToken?: string | undefined;
332
+ projectKey?: string | undefined;
333
+ };
334
+ }, {
335
+ linear?: {
336
+ enabled?: boolean | undefined;
337
+ apiKey?: string | undefined;
338
+ teamId?: string | undefined;
339
+ } | undefined;
340
+ jira?: {
341
+ enabled?: boolean | undefined;
342
+ baseUrl?: string | undefined;
343
+ email?: string | undefined;
344
+ apiToken?: string | undefined;
345
+ projectKey?: string | undefined;
346
+ } | undefined;
347
+ }>>;
348
+ monitor: z.ZodDefault<z.ZodObject<{
349
+ enabled: z.ZodDefault<z.ZodBoolean>;
350
+ pollInterval: z.ZodDefault<z.ZodNumber>;
351
+ autoRespondToReviews: z.ZodDefault<z.ZodBoolean>;
352
+ autoDeleteBranch: z.ZodDefault<z.ZodBoolean>;
353
+ }, "strict", z.ZodTypeAny, {
354
+ enabled: boolean;
355
+ pollInterval: number;
356
+ autoRespondToReviews: boolean;
357
+ autoDeleteBranch: boolean;
358
+ }, {
359
+ enabled?: boolean | undefined;
360
+ pollInterval?: number | undefined;
361
+ autoRespondToReviews?: boolean | undefined;
362
+ autoDeleteBranch?: boolean | undefined;
363
+ }>>;
364
+ }, "strict", z.ZodTypeAny, {
365
+ integrations: {
366
+ linear: {
367
+ enabled: boolean;
368
+ apiKey?: string | undefined;
369
+ teamId?: string | undefined;
370
+ };
371
+ jira: {
372
+ enabled: boolean;
373
+ baseUrl?: string | undefined;
374
+ email?: string | undefined;
375
+ apiToken?: string | undefined;
376
+ projectKey?: string | undefined;
377
+ };
378
+ };
379
+ monitor: {
380
+ enabled: boolean;
381
+ pollInterval: number;
382
+ autoRespondToReviews: boolean;
383
+ autoDeleteBranch: boolean;
384
+ };
385
+ }, {
386
+ integrations?: {
387
+ linear?: {
388
+ enabled?: boolean | undefined;
389
+ apiKey?: string | undefined;
390
+ teamId?: string | undefined;
391
+ } | undefined;
392
+ jira?: {
393
+ enabled?: boolean | undefined;
394
+ baseUrl?: string | undefined;
395
+ email?: string | undefined;
396
+ apiToken?: string | undefined;
397
+ projectKey?: string | undefined;
398
+ } | undefined;
399
+ } | undefined;
400
+ monitor?: {
401
+ enabled?: boolean | undefined;
402
+ pollInterval?: number | undefined;
403
+ autoRespondToReviews?: boolean | undefined;
404
+ autoDeleteBranch?: boolean | undefined;
405
+ } | undefined;
406
+ }>>;
407
+ declare const TrackingSchema: z.ZodDefault<z.ZodObject<{
408
+ directory: z.ZodDefault<z.ZodString>;
409
+ autoCommit: z.ZodDefault<z.ZodBoolean>;
410
+ gitTracked: z.ZodDefault<z.ZodBoolean>;
411
+ }, "strict", z.ZodTypeAny, {
412
+ directory: string;
413
+ autoCommit: boolean;
414
+ gitTracked: boolean;
415
+ }, {
416
+ directory?: string | undefined;
417
+ autoCommit?: boolean | undefined;
418
+ gitTracked?: boolean | undefined;
419
+ }>>;
420
+ declare const DashboardSchema: z.ZodDefault<z.ZodObject<{
421
+ port: z.ZodDefault<z.ZodNumber>;
422
+ openBrowser: z.ZodDefault<z.ZodBoolean>;
423
+ }, "strict", z.ZodTypeAny, {
424
+ port: number;
425
+ openBrowser: boolean;
426
+ }, {
427
+ port?: number | undefined;
428
+ openBrowser?: boolean | undefined;
429
+ }>>;
430
+ declare const OacConfigSchema: z.ZodObject<{
431
+ repos: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
432
+ name: z.ZodString;
433
+ branch: z.ZodOptional<z.ZodString>;
434
+ }, "strict", z.ZodTypeAny, {
435
+ name: string;
436
+ branch?: string | undefined;
437
+ }, {
438
+ name: string;
439
+ branch?: string | undefined;
440
+ }>]>, "many">>;
441
+ provider: z.ZodDefault<z.ZodObject<{
442
+ id: z.ZodDefault<z.ZodString>;
443
+ options: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
444
+ }, "strict", z.ZodTypeAny, {
445
+ options: Record<string, unknown>;
446
+ id: string;
447
+ }, {
448
+ options?: Record<string, unknown> | undefined;
449
+ id?: string | undefined;
450
+ }>>;
451
+ budget: z.ZodDefault<z.ZodObject<{
452
+ totalTokens: z.ZodDefault<z.ZodNumber>;
453
+ reservePercent: z.ZodDefault<z.ZodNumber>;
454
+ estimationPadding: z.ZodDefault<z.ZodNumber>;
455
+ }, "strict", z.ZodTypeAny, {
456
+ totalTokens: number;
457
+ reservePercent: number;
458
+ estimationPadding: number;
459
+ }, {
460
+ totalTokens?: number | undefined;
461
+ reservePercent?: number | undefined;
462
+ estimationPadding?: number | undefined;
463
+ }>>;
464
+ discovery: z.ZodDefault<z.ZodObject<{
465
+ scanners: z.ZodDefault<z.ZodObject<{
466
+ lint: z.ZodDefault<z.ZodBoolean>;
467
+ todo: z.ZodDefault<z.ZodBoolean>;
468
+ testGap: z.ZodDefault<z.ZodBoolean>;
469
+ deadCode: z.ZodDefault<z.ZodBoolean>;
470
+ githubIssues: z.ZodDefault<z.ZodBoolean>;
471
+ }, "strict", z.ZodTypeAny, {
472
+ lint: boolean;
473
+ todo: boolean;
474
+ testGap: boolean;
475
+ deadCode: boolean;
476
+ githubIssues: boolean;
477
+ }, {
478
+ lint?: boolean | undefined;
479
+ todo?: boolean | undefined;
480
+ testGap?: boolean | undefined;
481
+ deadCode?: boolean | undefined;
482
+ githubIssues?: boolean | undefined;
483
+ }>>;
484
+ issueLabels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
485
+ minPriority: z.ZodDefault<z.ZodNumber>;
486
+ maxTasks: z.ZodDefault<z.ZodNumber>;
487
+ customScanners: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
488
+ exclude: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
489
+ }, "strict", z.ZodTypeAny, {
490
+ scanners: {
491
+ lint: boolean;
492
+ todo: boolean;
493
+ testGap: boolean;
494
+ deadCode: boolean;
495
+ githubIssues: boolean;
496
+ };
497
+ issueLabels: string[];
498
+ minPriority: number;
499
+ maxTasks: number;
500
+ customScanners: string[];
501
+ exclude: string[];
502
+ }, {
503
+ scanners?: {
504
+ lint?: boolean | undefined;
505
+ todo?: boolean | undefined;
506
+ testGap?: boolean | undefined;
507
+ deadCode?: boolean | undefined;
508
+ githubIssues?: boolean | undefined;
509
+ } | undefined;
510
+ issueLabels?: string[] | undefined;
511
+ minPriority?: number | undefined;
512
+ maxTasks?: number | undefined;
513
+ customScanners?: string[] | undefined;
514
+ exclude?: string[] | undefined;
515
+ }>>;
516
+ execution: z.ZodDefault<z.ZodObject<{
517
+ concurrency: z.ZodDefault<z.ZodNumber>;
518
+ taskTimeout: z.ZodDefault<z.ZodNumber>;
519
+ maxRetries: z.ZodDefault<z.ZodNumber>;
520
+ mode: z.ZodDefault<z.ZodEnum<["new-pr", "update-pr", "direct-commit"]>>;
521
+ branchPattern: z.ZodDefault<z.ZodString>;
522
+ validation: z.ZodDefault<z.ZodObject<{
523
+ lint: z.ZodDefault<z.ZodBoolean>;
524
+ test: z.ZodDefault<z.ZodBoolean>;
525
+ typeCheck: z.ZodDefault<z.ZodBoolean>;
526
+ maxDiffLines: z.ZodDefault<z.ZodNumber>;
527
+ }, "strict", z.ZodTypeAny, {
528
+ lint: boolean;
529
+ test: boolean;
530
+ typeCheck: boolean;
531
+ maxDiffLines: number;
532
+ }, {
533
+ lint?: boolean | undefined;
534
+ test?: boolean | undefined;
535
+ typeCheck?: boolean | undefined;
536
+ maxDiffLines?: number | undefined;
537
+ }>>;
538
+ pr: z.ZodDefault<z.ZodObject<{
539
+ draft: z.ZodDefault<z.ZodBoolean>;
540
+ labels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
541
+ reviewers: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
542
+ assignees: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
543
+ }, "strict", z.ZodTypeAny, {
544
+ draft: boolean;
545
+ labels: string[];
546
+ reviewers: string[];
547
+ assignees: string[];
548
+ }, {
549
+ draft?: boolean | undefined;
550
+ labels?: string[] | undefined;
551
+ reviewers?: string[] | undefined;
552
+ assignees?: string[] | undefined;
553
+ }>>;
554
+ }, "strict", z.ZodTypeAny, {
555
+ validation: {
556
+ lint: boolean;
557
+ test: boolean;
558
+ typeCheck: boolean;
559
+ maxDiffLines: number;
560
+ };
561
+ concurrency: number;
562
+ taskTimeout: number;
563
+ maxRetries: number;
564
+ mode: "new-pr" | "update-pr" | "direct-commit";
565
+ branchPattern: string;
566
+ pr: {
567
+ draft: boolean;
568
+ labels: string[];
569
+ reviewers: string[];
570
+ assignees: string[];
571
+ };
572
+ }, {
573
+ validation?: {
574
+ lint?: boolean | undefined;
575
+ test?: boolean | undefined;
576
+ typeCheck?: boolean | undefined;
577
+ maxDiffLines?: number | undefined;
578
+ } | undefined;
579
+ concurrency?: number | undefined;
580
+ taskTimeout?: number | undefined;
581
+ maxRetries?: number | undefined;
582
+ mode?: "new-pr" | "update-pr" | "direct-commit" | undefined;
583
+ branchPattern?: string | undefined;
584
+ pr?: {
585
+ draft?: boolean | undefined;
586
+ labels?: string[] | undefined;
587
+ reviewers?: string[] | undefined;
588
+ assignees?: string[] | undefined;
589
+ } | undefined;
590
+ }>>;
591
+ completion: z.ZodDefault<z.ZodObject<{
592
+ integrations: z.ZodDefault<z.ZodObject<{
593
+ linear: z.ZodEffects<z.ZodDefault<z.ZodObject<{
594
+ enabled: z.ZodDefault<z.ZodBoolean>;
595
+ apiKey: z.ZodOptional<z.ZodString>;
596
+ teamId: z.ZodOptional<z.ZodString>;
597
+ }, "strict", z.ZodTypeAny, {
598
+ enabled: boolean;
599
+ apiKey?: string | undefined;
600
+ teamId?: string | undefined;
601
+ }, {
602
+ enabled?: boolean | undefined;
603
+ apiKey?: string | undefined;
604
+ teamId?: string | undefined;
605
+ }>>, {
606
+ enabled: boolean;
607
+ apiKey?: string | undefined;
608
+ teamId?: string | undefined;
609
+ }, {
610
+ enabled?: boolean | undefined;
611
+ apiKey?: string | undefined;
612
+ teamId?: string | undefined;
613
+ } | undefined>;
614
+ jira: z.ZodEffects<z.ZodDefault<z.ZodObject<{
615
+ enabled: z.ZodDefault<z.ZodBoolean>;
616
+ baseUrl: z.ZodOptional<z.ZodString>;
617
+ email: z.ZodOptional<z.ZodString>;
618
+ apiToken: z.ZodOptional<z.ZodString>;
619
+ projectKey: z.ZodOptional<z.ZodString>;
620
+ }, "strict", z.ZodTypeAny, {
621
+ enabled: boolean;
622
+ baseUrl?: string | undefined;
623
+ email?: string | undefined;
624
+ apiToken?: string | undefined;
625
+ projectKey?: string | undefined;
626
+ }, {
627
+ enabled?: boolean | undefined;
628
+ baseUrl?: string | undefined;
629
+ email?: string | undefined;
630
+ apiToken?: string | undefined;
631
+ projectKey?: string | undefined;
632
+ }>>, {
633
+ enabled: boolean;
634
+ baseUrl?: string | undefined;
635
+ email?: string | undefined;
636
+ apiToken?: string | undefined;
637
+ projectKey?: string | undefined;
638
+ }, {
639
+ enabled?: boolean | undefined;
640
+ baseUrl?: string | undefined;
641
+ email?: string | undefined;
642
+ apiToken?: string | undefined;
643
+ projectKey?: string | undefined;
644
+ } | undefined>;
645
+ }, "strict", z.ZodTypeAny, {
646
+ linear: {
647
+ enabled: boolean;
648
+ apiKey?: string | undefined;
649
+ teamId?: string | undefined;
650
+ };
651
+ jira: {
652
+ enabled: boolean;
653
+ baseUrl?: string | undefined;
654
+ email?: string | undefined;
655
+ apiToken?: string | undefined;
656
+ projectKey?: string | undefined;
657
+ };
658
+ }, {
659
+ linear?: {
660
+ enabled?: boolean | undefined;
661
+ apiKey?: string | undefined;
662
+ teamId?: string | undefined;
663
+ } | undefined;
664
+ jira?: {
665
+ enabled?: boolean | undefined;
666
+ baseUrl?: string | undefined;
667
+ email?: string | undefined;
668
+ apiToken?: string | undefined;
669
+ projectKey?: string | undefined;
670
+ } | undefined;
671
+ }>>;
672
+ monitor: z.ZodDefault<z.ZodObject<{
673
+ enabled: z.ZodDefault<z.ZodBoolean>;
674
+ pollInterval: z.ZodDefault<z.ZodNumber>;
675
+ autoRespondToReviews: z.ZodDefault<z.ZodBoolean>;
676
+ autoDeleteBranch: z.ZodDefault<z.ZodBoolean>;
677
+ }, "strict", z.ZodTypeAny, {
678
+ enabled: boolean;
679
+ pollInterval: number;
680
+ autoRespondToReviews: boolean;
681
+ autoDeleteBranch: boolean;
682
+ }, {
683
+ enabled?: boolean | undefined;
684
+ pollInterval?: number | undefined;
685
+ autoRespondToReviews?: boolean | undefined;
686
+ autoDeleteBranch?: boolean | undefined;
687
+ }>>;
688
+ }, "strict", z.ZodTypeAny, {
689
+ integrations: {
690
+ linear: {
691
+ enabled: boolean;
692
+ apiKey?: string | undefined;
693
+ teamId?: string | undefined;
694
+ };
695
+ jira: {
696
+ enabled: boolean;
697
+ baseUrl?: string | undefined;
698
+ email?: string | undefined;
699
+ apiToken?: string | undefined;
700
+ projectKey?: string | undefined;
701
+ };
702
+ };
703
+ monitor: {
704
+ enabled: boolean;
705
+ pollInterval: number;
706
+ autoRespondToReviews: boolean;
707
+ autoDeleteBranch: boolean;
708
+ };
709
+ }, {
710
+ integrations?: {
711
+ linear?: {
712
+ enabled?: boolean | undefined;
713
+ apiKey?: string | undefined;
714
+ teamId?: string | undefined;
715
+ } | undefined;
716
+ jira?: {
717
+ enabled?: boolean | undefined;
718
+ baseUrl?: string | undefined;
719
+ email?: string | undefined;
720
+ apiToken?: string | undefined;
721
+ projectKey?: string | undefined;
722
+ } | undefined;
723
+ } | undefined;
724
+ monitor?: {
725
+ enabled?: boolean | undefined;
726
+ pollInterval?: number | undefined;
727
+ autoRespondToReviews?: boolean | undefined;
728
+ autoDeleteBranch?: boolean | undefined;
729
+ } | undefined;
730
+ }>>;
731
+ tracking: z.ZodDefault<z.ZodObject<{
732
+ directory: z.ZodDefault<z.ZodString>;
733
+ autoCommit: z.ZodDefault<z.ZodBoolean>;
734
+ gitTracked: z.ZodDefault<z.ZodBoolean>;
735
+ }, "strict", z.ZodTypeAny, {
736
+ directory: string;
737
+ autoCommit: boolean;
738
+ gitTracked: boolean;
739
+ }, {
740
+ directory?: string | undefined;
741
+ autoCommit?: boolean | undefined;
742
+ gitTracked?: boolean | undefined;
743
+ }>>;
744
+ dashboard: z.ZodDefault<z.ZodObject<{
745
+ port: z.ZodDefault<z.ZodNumber>;
746
+ openBrowser: z.ZodDefault<z.ZodBoolean>;
747
+ }, "strict", z.ZodTypeAny, {
748
+ port: number;
749
+ openBrowser: boolean;
750
+ }, {
751
+ port?: number | undefined;
752
+ openBrowser?: boolean | undefined;
753
+ }>>;
754
+ }, "strict", z.ZodTypeAny, {
755
+ repos: (string | {
756
+ name: string;
757
+ branch?: string | undefined;
758
+ })[];
759
+ provider: {
760
+ options: Record<string, unknown>;
761
+ id: string;
762
+ };
763
+ budget: {
764
+ totalTokens: number;
765
+ reservePercent: number;
766
+ estimationPadding: number;
767
+ };
768
+ discovery: {
769
+ scanners: {
770
+ lint: boolean;
771
+ todo: boolean;
772
+ testGap: boolean;
773
+ deadCode: boolean;
774
+ githubIssues: boolean;
775
+ };
776
+ issueLabels: string[];
777
+ minPriority: number;
778
+ maxTasks: number;
779
+ customScanners: string[];
780
+ exclude: string[];
781
+ };
782
+ execution: {
783
+ validation: {
784
+ lint: boolean;
785
+ test: boolean;
786
+ typeCheck: boolean;
787
+ maxDiffLines: number;
788
+ };
789
+ concurrency: number;
790
+ taskTimeout: number;
791
+ maxRetries: number;
792
+ mode: "new-pr" | "update-pr" | "direct-commit";
793
+ branchPattern: string;
794
+ pr: {
795
+ draft: boolean;
796
+ labels: string[];
797
+ reviewers: string[];
798
+ assignees: string[];
799
+ };
800
+ };
801
+ completion: {
802
+ integrations: {
803
+ linear: {
804
+ enabled: boolean;
805
+ apiKey?: string | undefined;
806
+ teamId?: string | undefined;
807
+ };
808
+ jira: {
809
+ enabled: boolean;
810
+ baseUrl?: string | undefined;
811
+ email?: string | undefined;
812
+ apiToken?: string | undefined;
813
+ projectKey?: string | undefined;
814
+ };
815
+ };
816
+ monitor: {
817
+ enabled: boolean;
818
+ pollInterval: number;
819
+ autoRespondToReviews: boolean;
820
+ autoDeleteBranch: boolean;
821
+ };
822
+ };
823
+ tracking: {
824
+ directory: string;
825
+ autoCommit: boolean;
826
+ gitTracked: boolean;
827
+ };
828
+ dashboard: {
829
+ port: number;
830
+ openBrowser: boolean;
831
+ };
832
+ }, {
833
+ repos?: (string | {
834
+ name: string;
835
+ branch?: string | undefined;
836
+ })[] | undefined;
837
+ provider?: {
838
+ options?: Record<string, unknown> | undefined;
839
+ id?: string | undefined;
840
+ } | undefined;
841
+ budget?: {
842
+ totalTokens?: number | undefined;
843
+ reservePercent?: number | undefined;
844
+ estimationPadding?: number | undefined;
845
+ } | undefined;
846
+ discovery?: {
847
+ scanners?: {
848
+ lint?: boolean | undefined;
849
+ todo?: boolean | undefined;
850
+ testGap?: boolean | undefined;
851
+ deadCode?: boolean | undefined;
852
+ githubIssues?: boolean | undefined;
853
+ } | undefined;
854
+ issueLabels?: string[] | undefined;
855
+ minPriority?: number | undefined;
856
+ maxTasks?: number | undefined;
857
+ customScanners?: string[] | undefined;
858
+ exclude?: string[] | undefined;
859
+ } | undefined;
860
+ execution?: {
861
+ validation?: {
862
+ lint?: boolean | undefined;
863
+ test?: boolean | undefined;
864
+ typeCheck?: boolean | undefined;
865
+ maxDiffLines?: number | undefined;
866
+ } | undefined;
867
+ concurrency?: number | undefined;
868
+ taskTimeout?: number | undefined;
869
+ maxRetries?: number | undefined;
870
+ mode?: "new-pr" | "update-pr" | "direct-commit" | undefined;
871
+ branchPattern?: string | undefined;
872
+ pr?: {
873
+ draft?: boolean | undefined;
874
+ labels?: string[] | undefined;
875
+ reviewers?: string[] | undefined;
876
+ assignees?: string[] | undefined;
877
+ } | undefined;
878
+ } | undefined;
879
+ completion?: {
880
+ integrations?: {
881
+ linear?: {
882
+ enabled?: boolean | undefined;
883
+ apiKey?: string | undefined;
884
+ teamId?: string | undefined;
885
+ } | undefined;
886
+ jira?: {
887
+ enabled?: boolean | undefined;
888
+ baseUrl?: string | undefined;
889
+ email?: string | undefined;
890
+ apiToken?: string | undefined;
891
+ projectKey?: string | undefined;
892
+ } | undefined;
893
+ } | undefined;
894
+ monitor?: {
895
+ enabled?: boolean | undefined;
896
+ pollInterval?: number | undefined;
897
+ autoRespondToReviews?: boolean | undefined;
898
+ autoDeleteBranch?: boolean | undefined;
899
+ } | undefined;
900
+ } | undefined;
901
+ tracking?: {
902
+ directory?: string | undefined;
903
+ autoCommit?: boolean | undefined;
904
+ gitTracked?: boolean | undefined;
905
+ } | undefined;
906
+ dashboard?: {
907
+ port?: number | undefined;
908
+ openBrowser?: boolean | undefined;
909
+ } | undefined;
910
+ }>;
911
+ declare const OacConfig: z.ZodObject<{
912
+ repos: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
913
+ name: z.ZodString;
914
+ branch: z.ZodOptional<z.ZodString>;
915
+ }, "strict", z.ZodTypeAny, {
916
+ name: string;
917
+ branch?: string | undefined;
918
+ }, {
919
+ name: string;
920
+ branch?: string | undefined;
921
+ }>]>, "many">>;
922
+ provider: z.ZodDefault<z.ZodObject<{
923
+ id: z.ZodDefault<z.ZodString>;
924
+ options: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
925
+ }, "strict", z.ZodTypeAny, {
926
+ options: Record<string, unknown>;
927
+ id: string;
928
+ }, {
929
+ options?: Record<string, unknown> | undefined;
930
+ id?: string | undefined;
931
+ }>>;
932
+ budget: z.ZodDefault<z.ZodObject<{
933
+ totalTokens: z.ZodDefault<z.ZodNumber>;
934
+ reservePercent: z.ZodDefault<z.ZodNumber>;
935
+ estimationPadding: z.ZodDefault<z.ZodNumber>;
936
+ }, "strict", z.ZodTypeAny, {
937
+ totalTokens: number;
938
+ reservePercent: number;
939
+ estimationPadding: number;
940
+ }, {
941
+ totalTokens?: number | undefined;
942
+ reservePercent?: number | undefined;
943
+ estimationPadding?: number | undefined;
944
+ }>>;
945
+ discovery: z.ZodDefault<z.ZodObject<{
946
+ scanners: z.ZodDefault<z.ZodObject<{
947
+ lint: z.ZodDefault<z.ZodBoolean>;
948
+ todo: z.ZodDefault<z.ZodBoolean>;
949
+ testGap: z.ZodDefault<z.ZodBoolean>;
950
+ deadCode: z.ZodDefault<z.ZodBoolean>;
951
+ githubIssues: z.ZodDefault<z.ZodBoolean>;
952
+ }, "strict", z.ZodTypeAny, {
953
+ lint: boolean;
954
+ todo: boolean;
955
+ testGap: boolean;
956
+ deadCode: boolean;
957
+ githubIssues: boolean;
958
+ }, {
959
+ lint?: boolean | undefined;
960
+ todo?: boolean | undefined;
961
+ testGap?: boolean | undefined;
962
+ deadCode?: boolean | undefined;
963
+ githubIssues?: boolean | undefined;
964
+ }>>;
965
+ issueLabels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
966
+ minPriority: z.ZodDefault<z.ZodNumber>;
967
+ maxTasks: z.ZodDefault<z.ZodNumber>;
968
+ customScanners: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
969
+ exclude: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
970
+ }, "strict", z.ZodTypeAny, {
971
+ scanners: {
972
+ lint: boolean;
973
+ todo: boolean;
974
+ testGap: boolean;
975
+ deadCode: boolean;
976
+ githubIssues: boolean;
977
+ };
978
+ issueLabels: string[];
979
+ minPriority: number;
980
+ maxTasks: number;
981
+ customScanners: string[];
982
+ exclude: string[];
983
+ }, {
984
+ scanners?: {
985
+ lint?: boolean | undefined;
986
+ todo?: boolean | undefined;
987
+ testGap?: boolean | undefined;
988
+ deadCode?: boolean | undefined;
989
+ githubIssues?: boolean | undefined;
990
+ } | undefined;
991
+ issueLabels?: string[] | undefined;
992
+ minPriority?: number | undefined;
993
+ maxTasks?: number | undefined;
994
+ customScanners?: string[] | undefined;
995
+ exclude?: string[] | undefined;
996
+ }>>;
997
+ execution: z.ZodDefault<z.ZodObject<{
998
+ concurrency: z.ZodDefault<z.ZodNumber>;
999
+ taskTimeout: z.ZodDefault<z.ZodNumber>;
1000
+ maxRetries: z.ZodDefault<z.ZodNumber>;
1001
+ mode: z.ZodDefault<z.ZodEnum<["new-pr", "update-pr", "direct-commit"]>>;
1002
+ branchPattern: z.ZodDefault<z.ZodString>;
1003
+ validation: z.ZodDefault<z.ZodObject<{
1004
+ lint: z.ZodDefault<z.ZodBoolean>;
1005
+ test: z.ZodDefault<z.ZodBoolean>;
1006
+ typeCheck: z.ZodDefault<z.ZodBoolean>;
1007
+ maxDiffLines: z.ZodDefault<z.ZodNumber>;
1008
+ }, "strict", z.ZodTypeAny, {
1009
+ lint: boolean;
1010
+ test: boolean;
1011
+ typeCheck: boolean;
1012
+ maxDiffLines: number;
1013
+ }, {
1014
+ lint?: boolean | undefined;
1015
+ test?: boolean | undefined;
1016
+ typeCheck?: boolean | undefined;
1017
+ maxDiffLines?: number | undefined;
1018
+ }>>;
1019
+ pr: z.ZodDefault<z.ZodObject<{
1020
+ draft: z.ZodDefault<z.ZodBoolean>;
1021
+ labels: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1022
+ reviewers: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1023
+ assignees: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
1024
+ }, "strict", z.ZodTypeAny, {
1025
+ draft: boolean;
1026
+ labels: string[];
1027
+ reviewers: string[];
1028
+ assignees: string[];
1029
+ }, {
1030
+ draft?: boolean | undefined;
1031
+ labels?: string[] | undefined;
1032
+ reviewers?: string[] | undefined;
1033
+ assignees?: string[] | undefined;
1034
+ }>>;
1035
+ }, "strict", z.ZodTypeAny, {
1036
+ validation: {
1037
+ lint: boolean;
1038
+ test: boolean;
1039
+ typeCheck: boolean;
1040
+ maxDiffLines: number;
1041
+ };
1042
+ concurrency: number;
1043
+ taskTimeout: number;
1044
+ maxRetries: number;
1045
+ mode: "new-pr" | "update-pr" | "direct-commit";
1046
+ branchPattern: string;
1047
+ pr: {
1048
+ draft: boolean;
1049
+ labels: string[];
1050
+ reviewers: string[];
1051
+ assignees: string[];
1052
+ };
1053
+ }, {
1054
+ validation?: {
1055
+ lint?: boolean | undefined;
1056
+ test?: boolean | undefined;
1057
+ typeCheck?: boolean | undefined;
1058
+ maxDiffLines?: number | undefined;
1059
+ } | undefined;
1060
+ concurrency?: number | undefined;
1061
+ taskTimeout?: number | undefined;
1062
+ maxRetries?: number | undefined;
1063
+ mode?: "new-pr" | "update-pr" | "direct-commit" | undefined;
1064
+ branchPattern?: string | undefined;
1065
+ pr?: {
1066
+ draft?: boolean | undefined;
1067
+ labels?: string[] | undefined;
1068
+ reviewers?: string[] | undefined;
1069
+ assignees?: string[] | undefined;
1070
+ } | undefined;
1071
+ }>>;
1072
+ completion: z.ZodDefault<z.ZodObject<{
1073
+ integrations: z.ZodDefault<z.ZodObject<{
1074
+ linear: z.ZodEffects<z.ZodDefault<z.ZodObject<{
1075
+ enabled: z.ZodDefault<z.ZodBoolean>;
1076
+ apiKey: z.ZodOptional<z.ZodString>;
1077
+ teamId: z.ZodOptional<z.ZodString>;
1078
+ }, "strict", z.ZodTypeAny, {
1079
+ enabled: boolean;
1080
+ apiKey?: string | undefined;
1081
+ teamId?: string | undefined;
1082
+ }, {
1083
+ enabled?: boolean | undefined;
1084
+ apiKey?: string | undefined;
1085
+ teamId?: string | undefined;
1086
+ }>>, {
1087
+ enabled: boolean;
1088
+ apiKey?: string | undefined;
1089
+ teamId?: string | undefined;
1090
+ }, {
1091
+ enabled?: boolean | undefined;
1092
+ apiKey?: string | undefined;
1093
+ teamId?: string | undefined;
1094
+ } | undefined>;
1095
+ jira: z.ZodEffects<z.ZodDefault<z.ZodObject<{
1096
+ enabled: z.ZodDefault<z.ZodBoolean>;
1097
+ baseUrl: z.ZodOptional<z.ZodString>;
1098
+ email: z.ZodOptional<z.ZodString>;
1099
+ apiToken: z.ZodOptional<z.ZodString>;
1100
+ projectKey: z.ZodOptional<z.ZodString>;
1101
+ }, "strict", z.ZodTypeAny, {
1102
+ enabled: boolean;
1103
+ baseUrl?: string | undefined;
1104
+ email?: string | undefined;
1105
+ apiToken?: string | undefined;
1106
+ projectKey?: string | undefined;
1107
+ }, {
1108
+ enabled?: boolean | undefined;
1109
+ baseUrl?: string | undefined;
1110
+ email?: string | undefined;
1111
+ apiToken?: string | undefined;
1112
+ projectKey?: string | undefined;
1113
+ }>>, {
1114
+ enabled: boolean;
1115
+ baseUrl?: string | undefined;
1116
+ email?: string | undefined;
1117
+ apiToken?: string | undefined;
1118
+ projectKey?: string | undefined;
1119
+ }, {
1120
+ enabled?: boolean | undefined;
1121
+ baseUrl?: string | undefined;
1122
+ email?: string | undefined;
1123
+ apiToken?: string | undefined;
1124
+ projectKey?: string | undefined;
1125
+ } | undefined>;
1126
+ }, "strict", z.ZodTypeAny, {
1127
+ linear: {
1128
+ enabled: boolean;
1129
+ apiKey?: string | undefined;
1130
+ teamId?: string | undefined;
1131
+ };
1132
+ jira: {
1133
+ enabled: boolean;
1134
+ baseUrl?: string | undefined;
1135
+ email?: string | undefined;
1136
+ apiToken?: string | undefined;
1137
+ projectKey?: string | undefined;
1138
+ };
1139
+ }, {
1140
+ linear?: {
1141
+ enabled?: boolean | undefined;
1142
+ apiKey?: string | undefined;
1143
+ teamId?: string | undefined;
1144
+ } | undefined;
1145
+ jira?: {
1146
+ enabled?: boolean | undefined;
1147
+ baseUrl?: string | undefined;
1148
+ email?: string | undefined;
1149
+ apiToken?: string | undefined;
1150
+ projectKey?: string | undefined;
1151
+ } | undefined;
1152
+ }>>;
1153
+ monitor: z.ZodDefault<z.ZodObject<{
1154
+ enabled: z.ZodDefault<z.ZodBoolean>;
1155
+ pollInterval: z.ZodDefault<z.ZodNumber>;
1156
+ autoRespondToReviews: z.ZodDefault<z.ZodBoolean>;
1157
+ autoDeleteBranch: z.ZodDefault<z.ZodBoolean>;
1158
+ }, "strict", z.ZodTypeAny, {
1159
+ enabled: boolean;
1160
+ pollInterval: number;
1161
+ autoRespondToReviews: boolean;
1162
+ autoDeleteBranch: boolean;
1163
+ }, {
1164
+ enabled?: boolean | undefined;
1165
+ pollInterval?: number | undefined;
1166
+ autoRespondToReviews?: boolean | undefined;
1167
+ autoDeleteBranch?: boolean | undefined;
1168
+ }>>;
1169
+ }, "strict", z.ZodTypeAny, {
1170
+ integrations: {
1171
+ linear: {
1172
+ enabled: boolean;
1173
+ apiKey?: string | undefined;
1174
+ teamId?: string | undefined;
1175
+ };
1176
+ jira: {
1177
+ enabled: boolean;
1178
+ baseUrl?: string | undefined;
1179
+ email?: string | undefined;
1180
+ apiToken?: string | undefined;
1181
+ projectKey?: string | undefined;
1182
+ };
1183
+ };
1184
+ monitor: {
1185
+ enabled: boolean;
1186
+ pollInterval: number;
1187
+ autoRespondToReviews: boolean;
1188
+ autoDeleteBranch: boolean;
1189
+ };
1190
+ }, {
1191
+ integrations?: {
1192
+ linear?: {
1193
+ enabled?: boolean | undefined;
1194
+ apiKey?: string | undefined;
1195
+ teamId?: string | undefined;
1196
+ } | undefined;
1197
+ jira?: {
1198
+ enabled?: boolean | undefined;
1199
+ baseUrl?: string | undefined;
1200
+ email?: string | undefined;
1201
+ apiToken?: string | undefined;
1202
+ projectKey?: string | undefined;
1203
+ } | undefined;
1204
+ } | undefined;
1205
+ monitor?: {
1206
+ enabled?: boolean | undefined;
1207
+ pollInterval?: number | undefined;
1208
+ autoRespondToReviews?: boolean | undefined;
1209
+ autoDeleteBranch?: boolean | undefined;
1210
+ } | undefined;
1211
+ }>>;
1212
+ tracking: z.ZodDefault<z.ZodObject<{
1213
+ directory: z.ZodDefault<z.ZodString>;
1214
+ autoCommit: z.ZodDefault<z.ZodBoolean>;
1215
+ gitTracked: z.ZodDefault<z.ZodBoolean>;
1216
+ }, "strict", z.ZodTypeAny, {
1217
+ directory: string;
1218
+ autoCommit: boolean;
1219
+ gitTracked: boolean;
1220
+ }, {
1221
+ directory?: string | undefined;
1222
+ autoCommit?: boolean | undefined;
1223
+ gitTracked?: boolean | undefined;
1224
+ }>>;
1225
+ dashboard: z.ZodDefault<z.ZodObject<{
1226
+ port: z.ZodDefault<z.ZodNumber>;
1227
+ openBrowser: z.ZodDefault<z.ZodBoolean>;
1228
+ }, "strict", z.ZodTypeAny, {
1229
+ port: number;
1230
+ openBrowser: boolean;
1231
+ }, {
1232
+ port?: number | undefined;
1233
+ openBrowser?: boolean | undefined;
1234
+ }>>;
1235
+ }, "strict", z.ZodTypeAny, {
1236
+ repos: (string | {
1237
+ name: string;
1238
+ branch?: string | undefined;
1239
+ })[];
1240
+ provider: {
1241
+ options: Record<string, unknown>;
1242
+ id: string;
1243
+ };
1244
+ budget: {
1245
+ totalTokens: number;
1246
+ reservePercent: number;
1247
+ estimationPadding: number;
1248
+ };
1249
+ discovery: {
1250
+ scanners: {
1251
+ lint: boolean;
1252
+ todo: boolean;
1253
+ testGap: boolean;
1254
+ deadCode: boolean;
1255
+ githubIssues: boolean;
1256
+ };
1257
+ issueLabels: string[];
1258
+ minPriority: number;
1259
+ maxTasks: number;
1260
+ customScanners: string[];
1261
+ exclude: string[];
1262
+ };
1263
+ execution: {
1264
+ validation: {
1265
+ lint: boolean;
1266
+ test: boolean;
1267
+ typeCheck: boolean;
1268
+ maxDiffLines: number;
1269
+ };
1270
+ concurrency: number;
1271
+ taskTimeout: number;
1272
+ maxRetries: number;
1273
+ mode: "new-pr" | "update-pr" | "direct-commit";
1274
+ branchPattern: string;
1275
+ pr: {
1276
+ draft: boolean;
1277
+ labels: string[];
1278
+ reviewers: string[];
1279
+ assignees: string[];
1280
+ };
1281
+ };
1282
+ completion: {
1283
+ integrations: {
1284
+ linear: {
1285
+ enabled: boolean;
1286
+ apiKey?: string | undefined;
1287
+ teamId?: string | undefined;
1288
+ };
1289
+ jira: {
1290
+ enabled: boolean;
1291
+ baseUrl?: string | undefined;
1292
+ email?: string | undefined;
1293
+ apiToken?: string | undefined;
1294
+ projectKey?: string | undefined;
1295
+ };
1296
+ };
1297
+ monitor: {
1298
+ enabled: boolean;
1299
+ pollInterval: number;
1300
+ autoRespondToReviews: boolean;
1301
+ autoDeleteBranch: boolean;
1302
+ };
1303
+ };
1304
+ tracking: {
1305
+ directory: string;
1306
+ autoCommit: boolean;
1307
+ gitTracked: boolean;
1308
+ };
1309
+ dashboard: {
1310
+ port: number;
1311
+ openBrowser: boolean;
1312
+ };
1313
+ }, {
1314
+ repos?: (string | {
1315
+ name: string;
1316
+ branch?: string | undefined;
1317
+ })[] | undefined;
1318
+ provider?: {
1319
+ options?: Record<string, unknown> | undefined;
1320
+ id?: string | undefined;
1321
+ } | undefined;
1322
+ budget?: {
1323
+ totalTokens?: number | undefined;
1324
+ reservePercent?: number | undefined;
1325
+ estimationPadding?: number | undefined;
1326
+ } | undefined;
1327
+ discovery?: {
1328
+ scanners?: {
1329
+ lint?: boolean | undefined;
1330
+ todo?: boolean | undefined;
1331
+ testGap?: boolean | undefined;
1332
+ deadCode?: boolean | undefined;
1333
+ githubIssues?: boolean | undefined;
1334
+ } | undefined;
1335
+ issueLabels?: string[] | undefined;
1336
+ minPriority?: number | undefined;
1337
+ maxTasks?: number | undefined;
1338
+ customScanners?: string[] | undefined;
1339
+ exclude?: string[] | undefined;
1340
+ } | undefined;
1341
+ execution?: {
1342
+ validation?: {
1343
+ lint?: boolean | undefined;
1344
+ test?: boolean | undefined;
1345
+ typeCheck?: boolean | undefined;
1346
+ maxDiffLines?: number | undefined;
1347
+ } | undefined;
1348
+ concurrency?: number | undefined;
1349
+ taskTimeout?: number | undefined;
1350
+ maxRetries?: number | undefined;
1351
+ mode?: "new-pr" | "update-pr" | "direct-commit" | undefined;
1352
+ branchPattern?: string | undefined;
1353
+ pr?: {
1354
+ draft?: boolean | undefined;
1355
+ labels?: string[] | undefined;
1356
+ reviewers?: string[] | undefined;
1357
+ assignees?: string[] | undefined;
1358
+ } | undefined;
1359
+ } | undefined;
1360
+ completion?: {
1361
+ integrations?: {
1362
+ linear?: {
1363
+ enabled?: boolean | undefined;
1364
+ apiKey?: string | undefined;
1365
+ teamId?: string | undefined;
1366
+ } | undefined;
1367
+ jira?: {
1368
+ enabled?: boolean | undefined;
1369
+ baseUrl?: string | undefined;
1370
+ email?: string | undefined;
1371
+ apiToken?: string | undefined;
1372
+ projectKey?: string | undefined;
1373
+ } | undefined;
1374
+ } | undefined;
1375
+ monitor?: {
1376
+ enabled?: boolean | undefined;
1377
+ pollInterval?: number | undefined;
1378
+ autoRespondToReviews?: boolean | undefined;
1379
+ autoDeleteBranch?: boolean | undefined;
1380
+ } | undefined;
1381
+ } | undefined;
1382
+ tracking?: {
1383
+ directory?: string | undefined;
1384
+ autoCommit?: boolean | undefined;
1385
+ gitTracked?: boolean | undefined;
1386
+ } | undefined;
1387
+ dashboard?: {
1388
+ port?: number | undefined;
1389
+ openBrowser?: boolean | undefined;
1390
+ } | undefined;
1391
+ }>;
1392
+ type OacConfig = z.output<typeof OacConfigSchema>;
1393
+ type OacConfigInput = z.input<typeof OacConfigSchema>;
1394
+ interface LoadConfigOptions {
1395
+ env?: Record<string, string | undefined>;
1396
+ }
1397
+ declare function defineConfig(config: OacConfigInput): OacConfigInput;
1398
+ declare function interpolateEnvVars(value: string, env?: Record<string, string | undefined>, path?: string[]): string;
1399
+ declare function loadConfig(config?: unknown, options?: LoadConfigOptions): OacConfig;
1400
+
1401
+ type OacErrorSeverity = "fatal" | "recoverable" | "warning";
1402
+ declare const REPO_ERROR_CODES: readonly ["REPO_NOT_FOUND", "REPO_ARCHIVED", "REPO_NO_PERMISSION", "REPO_CLONE_FAILED"];
1403
+ declare const DISCOVERY_ERROR_CODES: readonly ["SCANNER_FAILED", "SCANNER_TIMEOUT", "NO_TASKS_FOUND"];
1404
+ declare const BUDGET_ERROR_CODES: readonly ["BUDGET_INSUFFICIENT", "TOKENIZER_UNAVAILABLE"];
1405
+ declare const EXECUTION_ERROR_CODES: readonly ["AGENT_NOT_AVAILABLE", "AGENT_EXECUTION_FAILED", "AGENT_TIMEOUT", "AGENT_OOM", "AGENT_TOKEN_LIMIT", "AGENT_RATE_LIMITED", "VALIDATION_LINT_FAILED", "VALIDATION_TEST_FAILED", "VALIDATION_DIFF_TOO_LARGE", "VALIDATION_FORBIDDEN_PATTERN"];
1406
+ declare const COMPLETION_ERROR_CODES: readonly ["PR_CREATION_FAILED", "PR_PUSH_REJECTED", "WEBHOOK_DELIVERY_FAILED"];
1407
+ declare const CONFIG_ERROR_CODES: readonly ["CONFIG_INVALID", "CONFIG_SECRET_MISSING"];
1408
+ declare const SYSTEM_ERROR_CODES: readonly ["NETWORK_ERROR", "DISK_SPACE_LOW", "GIT_LOCK_FAILED"];
1409
+ declare const OAC_ERROR_CODES: readonly ["REPO_NOT_FOUND", "REPO_ARCHIVED", "REPO_NO_PERMISSION", "REPO_CLONE_FAILED", "SCANNER_FAILED", "SCANNER_TIMEOUT", "NO_TASKS_FOUND", "BUDGET_INSUFFICIENT", "TOKENIZER_UNAVAILABLE", "AGENT_NOT_AVAILABLE", "AGENT_EXECUTION_FAILED", "AGENT_TIMEOUT", "AGENT_OOM", "AGENT_TOKEN_LIMIT", "AGENT_RATE_LIMITED", "VALIDATION_LINT_FAILED", "VALIDATION_TEST_FAILED", "VALIDATION_DIFF_TOO_LARGE", "VALIDATION_FORBIDDEN_PATTERN", "PR_CREATION_FAILED", "PR_PUSH_REJECTED", "WEBHOOK_DELIVERY_FAILED", "CONFIG_INVALID", "CONFIG_SECRET_MISSING", "NETWORK_ERROR", "DISK_SPACE_LOW", "GIT_LOCK_FAILED"];
1410
+ type RepoErrorCode = (typeof REPO_ERROR_CODES)[number];
1411
+ type DiscoveryErrorCode = (typeof DISCOVERY_ERROR_CODES)[number];
1412
+ type BudgetErrorCode = (typeof BUDGET_ERROR_CODES)[number];
1413
+ type ExecutionErrorCode = (typeof EXECUTION_ERROR_CODES)[number];
1414
+ type CompletionErrorCode = (typeof COMPLETION_ERROR_CODES)[number];
1415
+ type ConfigErrorCode = (typeof CONFIG_ERROR_CODES)[number];
1416
+ type SystemErrorCode = (typeof SYSTEM_ERROR_CODES)[number];
1417
+ type OacErrorCode = (typeof OAC_ERROR_CODES)[number];
1418
+ interface OacErrorOptions {
1419
+ severity?: OacErrorSeverity;
1420
+ context?: Record<string, unknown>;
1421
+ cause?: unknown;
1422
+ }
1423
+ declare class OacError extends Error {
1424
+ readonly code: OacErrorCode;
1425
+ readonly severity: OacErrorSeverity;
1426
+ readonly context?: Record<string, unknown>;
1427
+ readonly cause?: unknown;
1428
+ constructor(message: string, code: OacErrorCode, severity: OacErrorSeverity, context?: Record<string, unknown>, cause?: unknown);
1429
+ }
1430
+ declare function repoError(code: RepoErrorCode, message: string, options?: OacErrorOptions): OacError;
1431
+ declare function discoveryError(code: DiscoveryErrorCode, message: string, options?: OacErrorOptions): OacError;
1432
+ declare function budgetError(code: BudgetErrorCode, message: string, options?: OacErrorOptions): OacError;
1433
+ declare function executionError(code: ExecutionErrorCode, message: string, options?: OacErrorOptions): OacError;
1434
+ declare function completionError(code: CompletionErrorCode, message: string, options?: OacErrorOptions): OacError;
1435
+ declare function configError(code: ConfigErrorCode, message: string, options?: OacErrorOptions): OacError;
1436
+
1437
+ type AgentProviderId = "claude-code" | "codex-cli" | "opencode" | (string & {});
1438
+ /**
1439
+ * Sentinel value representing an unlimited token budget.
1440
+ * Uses MAX_SAFE_INTEGER (passes Number.isFinite() checks in budget planner).
1441
+ */
1442
+ declare const UNLIMITED_BUDGET: number;
1443
+ interface ResolvedRepo {
1444
+ fullName: string;
1445
+ owner: string;
1446
+ name: string;
1447
+ localPath: string;
1448
+ worktreePath: string;
1449
+ meta: {
1450
+ defaultBranch: string;
1451
+ language?: string;
1452
+ languages: Record<string, number>;
1453
+ size: number;
1454
+ stars: number;
1455
+ openIssuesCount: number;
1456
+ topics: string[];
1457
+ license?: string;
1458
+ isArchived: boolean;
1459
+ isFork: boolean;
1460
+ permissions: {
1461
+ admin: boolean;
1462
+ maintain: boolean;
1463
+ push: boolean;
1464
+ triage: boolean;
1465
+ pull: boolean;
1466
+ };
1467
+ };
1468
+ git: {
1469
+ headSha: string;
1470
+ remoteUrl: string;
1471
+ isShallowClone: boolean;
1472
+ };
1473
+ }
1474
+ type TaskSource = "lint" | "todo" | "test-gap" | "dead-code" | "github-issue" | "custom";
1475
+ type TaskComplexity = "trivial" | "simple" | "moderate" | "complex";
1476
+ type ExecutionMode = "new-pr" | "update-pr" | "direct-commit";
1477
+ interface Task {
1478
+ id: string;
1479
+ source: TaskSource;
1480
+ title: string;
1481
+ description: string;
1482
+ targetFiles: string[];
1483
+ priority: number;
1484
+ complexity: TaskComplexity;
1485
+ executionMode: ExecutionMode;
1486
+ linkedIssue?: {
1487
+ number: number;
1488
+ url: string;
1489
+ labels: string[];
1490
+ };
1491
+ metadata: Record<string, unknown>;
1492
+ discoveredAt: string;
1493
+ }
1494
+ interface TokenEstimate {
1495
+ taskId: string;
1496
+ providerId: AgentProviderId;
1497
+ contextTokens: number;
1498
+ promptTokens: number;
1499
+ expectedOutputTokens: number;
1500
+ totalEstimatedTokens: number;
1501
+ confidence: number;
1502
+ feasible: boolean;
1503
+ estimatedCostUsd?: number;
1504
+ }
1505
+ interface ExecutionPlan {
1506
+ totalBudget: number;
1507
+ selectedTasks: Array<{
1508
+ task: Task;
1509
+ estimate: TokenEstimate;
1510
+ cumulativeBudgetUsed: number;
1511
+ }>;
1512
+ deferredTasks: Array<{
1513
+ task: Task;
1514
+ estimate: TokenEstimate;
1515
+ reason: "budget_exceeded" | "low_confidence" | "too_complex";
1516
+ }>;
1517
+ reserveTokens: number;
1518
+ remainingTokens: number;
1519
+ }
1520
+ interface ContributionTask {
1521
+ taskId: string;
1522
+ title: string;
1523
+ source: TaskSource;
1524
+ complexity: TaskComplexity;
1525
+ status: "success" | "partial" | "failed";
1526
+ tokensUsed: number;
1527
+ duration: number;
1528
+ filesChanged: string[];
1529
+ pr?: {
1530
+ number: number;
1531
+ url: string;
1532
+ status: "open" | "merged" | "closed";
1533
+ };
1534
+ linkedIssue?: {
1535
+ number: number;
1536
+ url: string;
1537
+ };
1538
+ error?: string;
1539
+ }
1540
+ interface ContributionLog {
1541
+ version: "1.0";
1542
+ runId: string;
1543
+ timestamp: string;
1544
+ contributor: {
1545
+ githubUsername: string;
1546
+ email?: string;
1547
+ };
1548
+ repo: {
1549
+ fullName: string;
1550
+ headSha: string;
1551
+ defaultBranch: string;
1552
+ };
1553
+ budget: {
1554
+ provider: AgentProviderId;
1555
+ totalTokensBudgeted: number;
1556
+ totalTokensUsed: number;
1557
+ estimatedCostUsd?: number;
1558
+ };
1559
+ tasks: ContributionTask[];
1560
+ metrics: {
1561
+ tasksDiscovered: number;
1562
+ tasksAttempted: number;
1563
+ tasksSucceeded: number;
1564
+ tasksFailed: number;
1565
+ totalDuration: number;
1566
+ totalFilesChanged: number;
1567
+ totalLinesAdded: number;
1568
+ totalLinesRemoved: number;
1569
+ };
1570
+ }
1571
+ interface ExecutionResult {
1572
+ success: boolean;
1573
+ exitCode: number;
1574
+ totalTokensUsed: number;
1575
+ filesChanged: string[];
1576
+ duration: number;
1577
+ error?: string;
1578
+ }
1579
+ interface RunSummary {
1580
+ runId: string;
1581
+ repo: string;
1582
+ provider: AgentProviderId;
1583
+ startedAt: string;
1584
+ completedAt: string;
1585
+ duration: number;
1586
+ budget: {
1587
+ totalTokens: number;
1588
+ reserveTokens: number;
1589
+ usedTokens: number;
1590
+ remainingTokens: number;
1591
+ estimatedCostUsd?: number;
1592
+ };
1593
+ tasks: {
1594
+ discovered: number;
1595
+ selected: number;
1596
+ attempted: number;
1597
+ succeeded: number;
1598
+ failed: number;
1599
+ deferred: number;
1600
+ };
1601
+ pullRequests: {
1602
+ created: number;
1603
+ merged: number;
1604
+ urls: string[];
1605
+ };
1606
+ }
1607
+
1608
+ interface OacEvents {
1609
+ "repo:resolved": {
1610
+ repo: ResolvedRepo;
1611
+ };
1612
+ "task:discovered": {
1613
+ tasks: Task[];
1614
+ };
1615
+ "task:selected": {
1616
+ task: Task;
1617
+ reason: string;
1618
+ };
1619
+ "budget:estimated": {
1620
+ task: Task;
1621
+ estimate: TokenEstimate;
1622
+ };
1623
+ "execution:started": {
1624
+ jobId: string;
1625
+ task: Task;
1626
+ agent: string;
1627
+ };
1628
+ "execution:progress": {
1629
+ jobId: string;
1630
+ tokensUsed: number;
1631
+ stage: string;
1632
+ };
1633
+ "execution:completed": {
1634
+ jobId: string;
1635
+ result: ExecutionResult;
1636
+ };
1637
+ "execution:failed": {
1638
+ jobId: string;
1639
+ error: OacError;
1640
+ };
1641
+ "pr:created": {
1642
+ jobId: string;
1643
+ prUrl: string;
1644
+ };
1645
+ "pr:merged": {
1646
+ jobId: string;
1647
+ prUrl: string;
1648
+ };
1649
+ "run:completed": {
1650
+ summary: RunSummary;
1651
+ };
1652
+ }
1653
+ type OacEventArgs = {
1654
+ [K in keyof OacEvents]: [payload: OacEvents[K]];
1655
+ };
1656
+ type OacEventBus = EventEmitter<OacEventArgs>;
1657
+ declare function createEventBus(): OacEventBus;
1658
+
1659
+ export { type AgentProviderId, BUDGET_ERROR_CODES, type BudgetErrorCode, BudgetSchema, COMPLETION_ERROR_CODES, CONFIG_ERROR_CODES, type CompletionErrorCode, CompletionSchema, type ConfigErrorCode, type ContributionLog, type ContributionTask, DISCOVERY_ERROR_CODES, DashboardSchema, type DiscoveryErrorCode, DiscoveryScannersSchema, DiscoverySchema, EXECUTION_ERROR_CODES, type ExecutionErrorCode, type ExecutionMode, type ExecutionPlan, type ExecutionResult, ExecutionSchema, JiraIntegrationSchema, LinearIntegrationSchema, type LoadConfigOptions, OAC_ERROR_CODES, OacConfig, type OacConfigInput, OacConfigSchema, OacError, type OacErrorCode, type OacErrorOptions, type OacErrorSeverity, type OacEventBus, type OacEvents, PrSchema, ProviderSchema, REPO_ERROR_CODES, type RepoErrorCode, RepoTargetSchema, type ResolvedRepo, type RunSummary, SYSTEM_ERROR_CODES, type SystemErrorCode, type Task, type TaskComplexity, type TaskSource, type TokenEstimate, TrackingSchema, UNLIMITED_BUDGET, ValidationSchema, budgetError, completionError, configError, createEventBus, defineConfig, discoveryError, executionError, interpolateEnvVars, loadConfig, repoError };