@cat-factory/contracts 0.166.0 → 0.168.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 (64) hide show
  1. package/dist/execution.d.ts +78 -0
  2. package/dist/execution.d.ts.map +1 -1
  3. package/dist/execution.js +13 -0
  4. package/dist/execution.js.map +1 -1
  5. package/dist/index.d.ts +2 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +2 -0
  8. package/dist/index.js.map +1 -1
  9. package/dist/merge.d.ts +289 -1
  10. package/dist/merge.d.ts.map +1 -1
  11. package/dist/merge.js +60 -0
  12. package/dist/merge.js.map +1 -1
  13. package/dist/mergeTrackRecord.d.ts +183 -0
  14. package/dist/mergeTrackRecord.d.ts.map +1 -0
  15. package/dist/mergeTrackRecord.js +251 -0
  16. package/dist/mergeTrackRecord.js.map +1 -0
  17. package/dist/notification-webhooks.d.ts +5 -3
  18. package/dist/notification-webhooks.d.ts.map +1 -1
  19. package/dist/notifications.d.ts +42 -3
  20. package/dist/notifications.d.ts.map +1 -1
  21. package/dist/notifications.js +33 -1
  22. package/dist/notifications.js.map +1 -1
  23. package/dist/public-api.d.ts +3 -1
  24. package/dist/public-api.d.ts.map +1 -1
  25. package/dist/reproduction.d.ts +163 -0
  26. package/dist/reproduction.d.ts.map +1 -0
  27. package/dist/reproduction.js +166 -0
  28. package/dist/reproduction.js.map +1 -0
  29. package/dist/routes/agent-runs.d.ts +56 -0
  30. package/dist/routes/agent-runs.d.ts.map +1 -1
  31. package/dist/routes/execution.d.ts +227 -1
  32. package/dist/routes/execution.d.ts.map +1 -1
  33. package/dist/routes/execution.js +5 -1
  34. package/dist/routes/execution.js.map +1 -1
  35. package/dist/routes/human-review.d.ts +28 -0
  36. package/dist/routes/human-review.d.ts.map +1 -1
  37. package/dist/routes/human-test.d.ts +140 -0
  38. package/dist/routes/human-test.d.ts.map +1 -1
  39. package/dist/routes/index.d.ts +1 -0
  40. package/dist/routes/index.d.ts.map +1 -1
  41. package/dist/routes/index.js +1 -0
  42. package/dist/routes/index.js.map +1 -1
  43. package/dist/routes/merge.d.ts +354 -0
  44. package/dist/routes/merge.d.ts.map +1 -1
  45. package/dist/routes/mergeTrackRecord.d.ts +113 -0
  46. package/dist/routes/mergeTrackRecord.d.ts.map +1 -0
  47. package/dist/routes/mergeTrackRecord.js +33 -0
  48. package/dist/routes/mergeTrackRecord.js.map +1 -0
  49. package/dist/routes/notification-webhooks.d.ts +3 -3
  50. package/dist/routes/notifications.d.ts +12 -4
  51. package/dist/routes/notifications.d.ts.map +1 -1
  52. package/dist/routes/notifications.js +4 -2
  53. package/dist/routes/notifications.js.map +1 -1
  54. package/dist/routes/public-api.d.ts +9 -3
  55. package/dist/routes/public-api.d.ts.map +1 -1
  56. package/dist/routes/slack.d.ts +3 -3
  57. package/dist/routes/visual-confirm.d.ts +84 -0
  58. package/dist/routes/visual-confirm.d.ts.map +1 -1
  59. package/dist/routes/workspaces.d.ts +180 -2
  60. package/dist/routes/workspaces.d.ts.map +1 -1
  61. package/dist/slack.d.ts +2 -2
  62. package/dist/snapshot.d.ts +90 -1
  63. package/dist/snapshot.d.ts.map +1 -1
  64. package/package.json +1 -1
@@ -47,6 +47,65 @@ export declare const listRiskPoliciesContract: {
47
47
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
48
48
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
49
49
  }, undefined>, undefined>, undefined>;
50
+ readonly classRules: Omit<v.StrictObjectSchema<{
51
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
52
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
53
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
54
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
55
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
56
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
57
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
58
+ readonly entries: {
59
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
60
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
61
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
62
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
63
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
64
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
65
+ };
66
+ readonly "~standard": v.StandardProps<{
67
+ config?: "always" | "never" | "thresholds" | undefined;
68
+ dependency?: "always" | "never" | "thresholds" | undefined;
69
+ docs?: "always" | "never" | "thresholds" | undefined;
70
+ schema?: "always" | "never" | "thresholds" | undefined;
71
+ source?: "always" | "never" | "thresholds" | undefined;
72
+ test?: "always" | "never" | "thresholds" | undefined;
73
+ }, {
74
+ config?: "always" | "never" | "thresholds" | undefined;
75
+ dependency?: "always" | "never" | "thresholds" | undefined;
76
+ docs?: "always" | "never" | "thresholds" | undefined;
77
+ schema?: "always" | "never" | "thresholds" | undefined;
78
+ source?: "always" | "never" | "thresholds" | undefined;
79
+ test?: "always" | "never" | "thresholds" | undefined;
80
+ }>;
81
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
82
+ config?: "always" | "never" | "thresholds" | undefined;
83
+ dependency?: "always" | "never" | "thresholds" | undefined;
84
+ docs?: "always" | "never" | "thresholds" | undefined;
85
+ schema?: "always" | "never" | "thresholds" | undefined;
86
+ source?: "always" | "never" | "thresholds" | undefined;
87
+ test?: "always" | "never" | "thresholds" | undefined;
88
+ }, v.PicklistIssue | v.StrictObjectIssue>;
89
+ readonly "~types"?: {
90
+ readonly input: {
91
+ config?: "always" | "never" | "thresholds" | undefined;
92
+ dependency?: "always" | "never" | "thresholds" | undefined;
93
+ docs?: "always" | "never" | "thresholds" | undefined;
94
+ schema?: "always" | "never" | "thresholds" | undefined;
95
+ source?: "always" | "never" | "thresholds" | undefined;
96
+ test?: "always" | "never" | "thresholds" | undefined;
97
+ };
98
+ readonly output: {
99
+ config?: "always" | "never" | "thresholds" | undefined;
100
+ dependency?: "always" | "never" | "thresholds" | undefined;
101
+ docs?: "always" | "never" | "thresholds" | undefined;
102
+ schema?: "always" | "never" | "thresholds" | undefined;
103
+ source?: "always" | "never" | "thresholds" | undefined;
104
+ test?: "always" | "never" | "thresholds" | undefined;
105
+ };
106
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
107
+ } | undefined;
108
+ };
50
109
  readonly isDefault: v.BooleanSchema<undefined>;
51
110
  readonly version: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
52
111
  readonly createdAt: v.NumberSchema<undefined>;
@@ -76,6 +135,65 @@ export declare const createRiskPolicyContract: {
76
135
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
77
136
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
78
137
  }, undefined>, undefined>, undefined>;
138
+ readonly classRules: v.OptionalSchema<Omit<v.StrictObjectSchema<{
139
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
140
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
141
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
142
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
143
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
144
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
145
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
146
+ readonly entries: {
147
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
148
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
149
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
150
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
151
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
152
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
153
+ };
154
+ readonly "~standard": v.StandardProps<{
155
+ config?: "always" | "never" | "thresholds" | undefined;
156
+ dependency?: "always" | "never" | "thresholds" | undefined;
157
+ docs?: "always" | "never" | "thresholds" | undefined;
158
+ schema?: "always" | "never" | "thresholds" | undefined;
159
+ source?: "always" | "never" | "thresholds" | undefined;
160
+ test?: "always" | "never" | "thresholds" | undefined;
161
+ }, {
162
+ config?: "always" | "never" | "thresholds" | undefined;
163
+ dependency?: "always" | "never" | "thresholds" | undefined;
164
+ docs?: "always" | "never" | "thresholds" | undefined;
165
+ schema?: "always" | "never" | "thresholds" | undefined;
166
+ source?: "always" | "never" | "thresholds" | undefined;
167
+ test?: "always" | "never" | "thresholds" | undefined;
168
+ }>;
169
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
170
+ config?: "always" | "never" | "thresholds" | undefined;
171
+ dependency?: "always" | "never" | "thresholds" | undefined;
172
+ docs?: "always" | "never" | "thresholds" | undefined;
173
+ schema?: "always" | "never" | "thresholds" | undefined;
174
+ source?: "always" | "never" | "thresholds" | undefined;
175
+ test?: "always" | "never" | "thresholds" | undefined;
176
+ }, v.PicklistIssue | v.StrictObjectIssue>;
177
+ readonly "~types"?: {
178
+ readonly input: {
179
+ config?: "always" | "never" | "thresholds" | undefined;
180
+ dependency?: "always" | "never" | "thresholds" | undefined;
181
+ docs?: "always" | "never" | "thresholds" | undefined;
182
+ schema?: "always" | "never" | "thresholds" | undefined;
183
+ source?: "always" | "never" | "thresholds" | undefined;
184
+ test?: "always" | "never" | "thresholds" | undefined;
185
+ };
186
+ readonly output: {
187
+ config?: "always" | "never" | "thresholds" | undefined;
188
+ dependency?: "always" | "never" | "thresholds" | undefined;
189
+ docs?: "always" | "never" | "thresholds" | undefined;
190
+ schema?: "always" | "never" | "thresholds" | undefined;
191
+ source?: "always" | "never" | "thresholds" | undefined;
192
+ test?: "always" | "never" | "thresholds" | undefined;
193
+ };
194
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
195
+ } | undefined;
196
+ }, {}>;
79
197
  readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, false>;
80
198
  }, undefined>;
81
199
  readonly responsesByStatusCode: {
@@ -122,6 +240,65 @@ export declare const createRiskPolicyContract: {
122
240
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
123
241
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
124
242
  }, undefined>, undefined>, undefined>;
243
+ readonly classRules: Omit<v.StrictObjectSchema<{
244
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
245
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
246
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
247
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
248
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
249
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
250
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
251
+ readonly entries: {
252
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
253
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
254
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
255
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
256
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
257
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
258
+ };
259
+ readonly "~standard": v.StandardProps<{
260
+ config?: "always" | "never" | "thresholds" | undefined;
261
+ dependency?: "always" | "never" | "thresholds" | undefined;
262
+ docs?: "always" | "never" | "thresholds" | undefined;
263
+ schema?: "always" | "never" | "thresholds" | undefined;
264
+ source?: "always" | "never" | "thresholds" | undefined;
265
+ test?: "always" | "never" | "thresholds" | undefined;
266
+ }, {
267
+ config?: "always" | "never" | "thresholds" | undefined;
268
+ dependency?: "always" | "never" | "thresholds" | undefined;
269
+ docs?: "always" | "never" | "thresholds" | undefined;
270
+ schema?: "always" | "never" | "thresholds" | undefined;
271
+ source?: "always" | "never" | "thresholds" | undefined;
272
+ test?: "always" | "never" | "thresholds" | undefined;
273
+ }>;
274
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
275
+ config?: "always" | "never" | "thresholds" | undefined;
276
+ dependency?: "always" | "never" | "thresholds" | undefined;
277
+ docs?: "always" | "never" | "thresholds" | undefined;
278
+ schema?: "always" | "never" | "thresholds" | undefined;
279
+ source?: "always" | "never" | "thresholds" | undefined;
280
+ test?: "always" | "never" | "thresholds" | undefined;
281
+ }, v.PicklistIssue | v.StrictObjectIssue>;
282
+ readonly "~types"?: {
283
+ readonly input: {
284
+ config?: "always" | "never" | "thresholds" | undefined;
285
+ dependency?: "always" | "never" | "thresholds" | undefined;
286
+ docs?: "always" | "never" | "thresholds" | undefined;
287
+ schema?: "always" | "never" | "thresholds" | undefined;
288
+ source?: "always" | "never" | "thresholds" | undefined;
289
+ test?: "always" | "never" | "thresholds" | undefined;
290
+ };
291
+ readonly output: {
292
+ config?: "always" | "never" | "thresholds" | undefined;
293
+ dependency?: "always" | "never" | "thresholds" | undefined;
294
+ docs?: "always" | "never" | "thresholds" | undefined;
295
+ schema?: "always" | "never" | "thresholds" | undefined;
296
+ source?: "always" | "never" | "thresholds" | undefined;
297
+ test?: "always" | "never" | "thresholds" | undefined;
298
+ };
299
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
300
+ } | undefined;
301
+ };
125
302
  readonly isDefault: v.BooleanSchema<undefined>;
126
303
  readonly version: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
127
304
  readonly createdAt: v.NumberSchema<undefined>;
@@ -156,6 +333,65 @@ export declare const updateRiskPolicyContract: {
156
333
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
157
334
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
158
335
  }, undefined>, undefined>, undefined>;
336
+ readonly classRules: v.OptionalSchema<Omit<v.StrictObjectSchema<{
337
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
338
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
339
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
340
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
341
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
342
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
343
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
344
+ readonly entries: {
345
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
346
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
347
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
348
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
349
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
350
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
351
+ };
352
+ readonly "~standard": v.StandardProps<{
353
+ config?: "always" | "never" | "thresholds" | undefined;
354
+ dependency?: "always" | "never" | "thresholds" | undefined;
355
+ docs?: "always" | "never" | "thresholds" | undefined;
356
+ schema?: "always" | "never" | "thresholds" | undefined;
357
+ source?: "always" | "never" | "thresholds" | undefined;
358
+ test?: "always" | "never" | "thresholds" | undefined;
359
+ }, {
360
+ config?: "always" | "never" | "thresholds" | undefined;
361
+ dependency?: "always" | "never" | "thresholds" | undefined;
362
+ docs?: "always" | "never" | "thresholds" | undefined;
363
+ schema?: "always" | "never" | "thresholds" | undefined;
364
+ source?: "always" | "never" | "thresholds" | undefined;
365
+ test?: "always" | "never" | "thresholds" | undefined;
366
+ }>;
367
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
368
+ config?: "always" | "never" | "thresholds" | undefined;
369
+ dependency?: "always" | "never" | "thresholds" | undefined;
370
+ docs?: "always" | "never" | "thresholds" | undefined;
371
+ schema?: "always" | "never" | "thresholds" | undefined;
372
+ source?: "always" | "never" | "thresholds" | undefined;
373
+ test?: "always" | "never" | "thresholds" | undefined;
374
+ }, v.PicklistIssue | v.StrictObjectIssue>;
375
+ readonly "~types"?: {
376
+ readonly input: {
377
+ config?: "always" | "never" | "thresholds" | undefined;
378
+ dependency?: "always" | "never" | "thresholds" | undefined;
379
+ docs?: "always" | "never" | "thresholds" | undefined;
380
+ schema?: "always" | "never" | "thresholds" | undefined;
381
+ source?: "always" | "never" | "thresholds" | undefined;
382
+ test?: "always" | "never" | "thresholds" | undefined;
383
+ };
384
+ readonly output: {
385
+ config?: "always" | "never" | "thresholds" | undefined;
386
+ dependency?: "always" | "never" | "thresholds" | undefined;
387
+ docs?: "always" | "never" | "thresholds" | undefined;
388
+ schema?: "always" | "never" | "thresholds" | undefined;
389
+ source?: "always" | "never" | "thresholds" | undefined;
390
+ test?: "always" | "never" | "thresholds" | undefined;
391
+ };
392
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
393
+ } | undefined;
394
+ }, undefined>;
159
395
  readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
160
396
  }, undefined>;
161
397
  readonly responsesByStatusCode: {
@@ -202,6 +438,65 @@ export declare const updateRiskPolicyContract: {
202
438
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
203
439
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
204
440
  }, undefined>, undefined>, undefined>;
441
+ readonly classRules: Omit<v.StrictObjectSchema<{
442
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
443
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
444
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
445
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
446
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
447
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
448
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
449
+ readonly entries: {
450
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
451
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
452
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
453
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
454
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
455
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
456
+ };
457
+ readonly "~standard": v.StandardProps<{
458
+ config?: "always" | "never" | "thresholds" | undefined;
459
+ dependency?: "always" | "never" | "thresholds" | undefined;
460
+ docs?: "always" | "never" | "thresholds" | undefined;
461
+ schema?: "always" | "never" | "thresholds" | undefined;
462
+ source?: "always" | "never" | "thresholds" | undefined;
463
+ test?: "always" | "never" | "thresholds" | undefined;
464
+ }, {
465
+ config?: "always" | "never" | "thresholds" | undefined;
466
+ dependency?: "always" | "never" | "thresholds" | undefined;
467
+ docs?: "always" | "never" | "thresholds" | undefined;
468
+ schema?: "always" | "never" | "thresholds" | undefined;
469
+ source?: "always" | "never" | "thresholds" | undefined;
470
+ test?: "always" | "never" | "thresholds" | undefined;
471
+ }>;
472
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
473
+ config?: "always" | "never" | "thresholds" | undefined;
474
+ dependency?: "always" | "never" | "thresholds" | undefined;
475
+ docs?: "always" | "never" | "thresholds" | undefined;
476
+ schema?: "always" | "never" | "thresholds" | undefined;
477
+ source?: "always" | "never" | "thresholds" | undefined;
478
+ test?: "always" | "never" | "thresholds" | undefined;
479
+ }, v.PicklistIssue | v.StrictObjectIssue>;
480
+ readonly "~types"?: {
481
+ readonly input: {
482
+ config?: "always" | "never" | "thresholds" | undefined;
483
+ dependency?: "always" | "never" | "thresholds" | undefined;
484
+ docs?: "always" | "never" | "thresholds" | undefined;
485
+ schema?: "always" | "never" | "thresholds" | undefined;
486
+ source?: "always" | "never" | "thresholds" | undefined;
487
+ test?: "always" | "never" | "thresholds" | undefined;
488
+ };
489
+ readonly output: {
490
+ config?: "always" | "never" | "thresholds" | undefined;
491
+ dependency?: "always" | "never" | "thresholds" | undefined;
492
+ docs?: "always" | "never" | "thresholds" | undefined;
493
+ schema?: "always" | "never" | "thresholds" | undefined;
494
+ source?: "always" | "never" | "thresholds" | undefined;
495
+ test?: "always" | "never" | "thresholds" | undefined;
496
+ };
497
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
498
+ } | undefined;
499
+ };
205
500
  readonly isDefault: v.BooleanSchema<undefined>;
206
501
  readonly version: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
207
502
  readonly createdAt: v.NumberSchema<undefined>;
@@ -301,6 +596,65 @@ export declare const reseedRiskPolicyContract: {
301
596
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
302
597
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
303
598
  }, undefined>, undefined>, undefined>;
599
+ readonly classRules: Omit<v.StrictObjectSchema<{
600
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
601
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
602
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
603
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
604
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
605
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
606
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
607
+ readonly entries: {
608
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
609
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
610
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
611
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
612
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
613
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
614
+ };
615
+ readonly "~standard": v.StandardProps<{
616
+ config?: "always" | "never" | "thresholds" | undefined;
617
+ dependency?: "always" | "never" | "thresholds" | undefined;
618
+ docs?: "always" | "never" | "thresholds" | undefined;
619
+ schema?: "always" | "never" | "thresholds" | undefined;
620
+ source?: "always" | "never" | "thresholds" | undefined;
621
+ test?: "always" | "never" | "thresholds" | undefined;
622
+ }, {
623
+ config?: "always" | "never" | "thresholds" | undefined;
624
+ dependency?: "always" | "never" | "thresholds" | undefined;
625
+ docs?: "always" | "never" | "thresholds" | undefined;
626
+ schema?: "always" | "never" | "thresholds" | undefined;
627
+ source?: "always" | "never" | "thresholds" | undefined;
628
+ test?: "always" | "never" | "thresholds" | undefined;
629
+ }>;
630
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
631
+ config?: "always" | "never" | "thresholds" | undefined;
632
+ dependency?: "always" | "never" | "thresholds" | undefined;
633
+ docs?: "always" | "never" | "thresholds" | undefined;
634
+ schema?: "always" | "never" | "thresholds" | undefined;
635
+ source?: "always" | "never" | "thresholds" | undefined;
636
+ test?: "always" | "never" | "thresholds" | undefined;
637
+ }, v.PicklistIssue | v.StrictObjectIssue>;
638
+ readonly "~types"?: {
639
+ readonly input: {
640
+ config?: "always" | "never" | "thresholds" | undefined;
641
+ dependency?: "always" | "never" | "thresholds" | undefined;
642
+ docs?: "always" | "never" | "thresholds" | undefined;
643
+ schema?: "always" | "never" | "thresholds" | undefined;
644
+ source?: "always" | "never" | "thresholds" | undefined;
645
+ test?: "always" | "never" | "thresholds" | undefined;
646
+ };
647
+ readonly output: {
648
+ config?: "always" | "never" | "thresholds" | undefined;
649
+ dependency?: "always" | "never" | "thresholds" | undefined;
650
+ docs?: "always" | "never" | "thresholds" | undefined;
651
+ schema?: "always" | "never" | "thresholds" | undefined;
652
+ source?: "always" | "never" | "thresholds" | undefined;
653
+ test?: "always" | "never" | "thresholds" | undefined;
654
+ };
655
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
656
+ } | undefined;
657
+ };
304
658
  readonly isDefault: v.BooleanSchema<undefined>;
305
659
  readonly version: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
306
660
  readonly createdAt: v.NumberSchema<undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/routes/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAa5B,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAInC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA"}
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/routes/merge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAa5B,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAInC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnC,CAAA"}
@@ -0,0 +1,113 @@
1
+ import * as v from 'valibot';
2
+ /**
3
+ * Per-change-class rollups for the workspace — ONE request returns every class, computed as a
4
+ * single SQL aggregate (`GROUP BY change_class` + conditional `SUM`s). The preset editor renders
5
+ * each class's rule next to these numbers, so it must never fan out one request per class.
6
+ */
7
+ export declare const listMergeClassRollupsContract: {
8
+ readonly method: "get";
9
+ readonly pathResolver: () => string;
10
+ readonly responsesByStatusCode: {
11
+ readonly '4xx': v.ObjectSchema<{
12
+ readonly error: v.ObjectSchema<{
13
+ readonly code: v.StringSchema<undefined>;
14
+ readonly message: v.StringSchema<undefined>;
15
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
16
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
17
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
18
+ readonly message: v.StringSchema<undefined>;
19
+ }, undefined>, undefined>, undefined>;
20
+ }, undefined>;
21
+ }, undefined>;
22
+ readonly '5xx': v.ObjectSchema<{
23
+ readonly error: v.ObjectSchema<{
24
+ readonly code: v.StringSchema<undefined>;
25
+ readonly message: v.StringSchema<undefined>;
26
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
27
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
28
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
29
+ readonly message: v.StringSchema<undefined>;
30
+ }, undefined>, undefined>, undefined>;
31
+ }, undefined>;
32
+ }, undefined>;
33
+ readonly 200: v.ArraySchema<v.ObjectSchema<{
34
+ readonly changeClass: v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>;
35
+ readonly total: v.NumberSchema<undefined>;
36
+ readonly merged: v.NumberSchema<undefined>;
37
+ readonly autoMerged: v.NumberSchema<undefined>;
38
+ readonly humanMerged: v.NumberSchema<undefined>;
39
+ readonly externalMerged: v.NumberSchema<undefined>;
40
+ readonly rejected: v.NumberSchema<undefined>;
41
+ readonly pendingReview: v.NumberSchema<undefined>;
42
+ readonly effort: v.ObjectSchema<{
43
+ readonly none: v.NumberSchema<undefined>;
44
+ readonly minor: v.NumberSchema<undefined>;
45
+ readonly major: v.NumberSchema<undefined>;
46
+ readonly untagged: v.NumberSchema<undefined>;
47
+ }, undefined>;
48
+ }, undefined>, undefined>;
49
+ };
50
+ };
51
+ /**
52
+ * Tag (or clear) the reviewer effort a human spent on a merged pull request. Deliberately a
53
+ * standalone route as well as an `act`-body field: an external merge (or the inspector's merge
54
+ * control) needs to tag a record with no notification act in flight.
55
+ */
56
+ export declare const tagMergeReviewEffortContract: {
57
+ readonly method: "post";
58
+ readonly requestPathParamsSchema: v.ObjectSchema<{
59
+ recordId: v.StringSchema<undefined>;
60
+ }, undefined> & import("@toad-contracts/core").StandardObjectKeysV1<unknown, unknown>;
61
+ readonly pathResolver: ({ recordId }: {
62
+ recordId: string;
63
+ }) => string;
64
+ readonly requestBodySchema: v.ObjectSchema<{
65
+ readonly reviewEffort: v.NullableSchema<v.PicklistSchema<["none", "minor", "major"], undefined>, undefined>;
66
+ }, undefined>;
67
+ readonly responsesByStatusCode: {
68
+ readonly '4xx': v.ObjectSchema<{
69
+ readonly error: v.ObjectSchema<{
70
+ readonly code: v.StringSchema<undefined>;
71
+ readonly message: v.StringSchema<undefined>;
72
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
73
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
74
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
75
+ readonly message: v.StringSchema<undefined>;
76
+ }, undefined>, undefined>, undefined>;
77
+ }, undefined>;
78
+ }, undefined>;
79
+ readonly '5xx': v.ObjectSchema<{
80
+ readonly error: v.ObjectSchema<{
81
+ readonly code: v.StringSchema<undefined>;
82
+ readonly message: v.StringSchema<undefined>;
83
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
84
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
85
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
86
+ readonly message: v.StringSchema<undefined>;
87
+ }, undefined>, undefined>, undefined>;
88
+ }, undefined>;
89
+ }, undefined>;
90
+ readonly 200: v.ObjectSchema<{
91
+ readonly id: v.StringSchema<undefined>;
92
+ readonly blockId: v.StringSchema<undefined>;
93
+ readonly executionId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
94
+ readonly changeClass: v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>;
95
+ readonly changedFileCount: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
96
+ readonly complexity: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
97
+ readonly risk: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
98
+ readonly impact: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
99
+ readonly riskPolicyId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
100
+ readonly riskPolicyName: v.NullableSchema<v.StringSchema<undefined>, undefined>;
101
+ readonly decision: v.PicklistSchema<["pending_review", "auto_merged", "human_merged", "external_merged", "rejected"], undefined>;
102
+ readonly reviewEffort: v.NullableSchema<v.PicklistSchema<["none", "minor", "major"], undefined>, undefined>;
103
+ readonly prNumber: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
104
+ readonly prUrl: v.NullableSchema<v.StringSchema<undefined>, undefined>;
105
+ readonly repoId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
106
+ readonly provider: v.NullableSchema<v.PicklistSchema<["github", "gitlab"], undefined>, undefined>;
107
+ readonly createdAt: v.NumberSchema<undefined>;
108
+ readonly resolvedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
109
+ readonly taggedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
110
+ }, undefined>;
111
+ };
112
+ };
113
+ //# sourceMappingURL=mergeTrackRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeTrackRecord.d.ts","sourceRoot":"","sources":["../../src/routes/mergeTrackRecord.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAgB5B;;;;GAIG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIxC,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMvC,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { defineApiContract } from '@toad-contracts/valibot';
2
+ import * as v from 'valibot';
3
+ import { mergeClassRollupSchema, mergeTrackRecordSchema, tagReviewEffortSchema, } from '../mergeTrackRecord.js';
4
+ import { errorResponses, singleStringParam } from './_shared.js';
5
+ // ---------------------------------------------------------------------------
6
+ // Merge track record route contracts. Mounted under `/workspaces/:workspaceId`,
7
+ // so the paths here are relative to that prefix. See MergeTrackRecordController in
8
+ // @cat-factory/server.
9
+ // ---------------------------------------------------------------------------
10
+ const recordIdParams = singleStringParam('recordId');
11
+ /**
12
+ * Per-change-class rollups for the workspace — ONE request returns every class, computed as a
13
+ * single SQL aggregate (`GROUP BY change_class` + conditional `SUM`s). The preset editor renders
14
+ * each class's rule next to these numbers, so it must never fan out one request per class.
15
+ */
16
+ export const listMergeClassRollupsContract = defineApiContract({
17
+ method: 'get',
18
+ pathResolver: () => '/merge-track-records/rollups',
19
+ responsesByStatusCode: { 200: v.array(mergeClassRollupSchema), ...errorResponses },
20
+ });
21
+ /**
22
+ * Tag (or clear) the reviewer effort a human spent on a merged pull request. Deliberately a
23
+ * standalone route as well as an `act`-body field: an external merge (or the inspector's merge
24
+ * control) needs to tag a record with no notification act in flight.
25
+ */
26
+ export const tagMergeReviewEffortContract = defineApiContract({
27
+ method: 'post',
28
+ requestPathParamsSchema: recordIdParams,
29
+ pathResolver: ({ recordId }) => `/merge-track-records/${recordId}/effort`,
30
+ requestBodySchema: tagReviewEffortSchema,
31
+ responsesByStatusCode: { 200: mergeTrackRecordSchema, ...errorResponses },
32
+ });
33
+ //# sourceMappingURL=mergeTrackRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mergeTrackRecord.js","sourceRoot":"","sources":["../../src/routes/mergeTrackRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhE,8EAA8E;AAC9E,gFAAgF;AAChF,mFAAmF;AACnF,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;AAEpD;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,iBAAiB,CAAC;IAC7D,MAAM,EAAE,KAAK;IACb,YAAY,EAAE,GAAG,EAAE,CAAC,8BAA8B;IAClD,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,GAAG,cAAc,EAAE;CACnF,CAAC,CAAA;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;IAC5D,MAAM,EAAE,MAAM;IACd,uBAAuB,EAAE,cAAc;IACvC,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,wBAAwB,QAAQ,SAAS;IACzE,iBAAiB,EAAE,qBAAqB;IACxC,qBAAqB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,GAAG,cAAc,EAAE;CAC1E,CAAC,CAAA"}
@@ -29,7 +29,7 @@ export declare const getNotificationWebhookContract: {
29
29
  }, undefined>;
30
30
  readonly 200: v.NullableSchema<v.ObjectSchema<{
31
31
  readonly url: v.StringSchema<undefined>;
32
- readonly types: v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift"], undefined>, undefined>;
32
+ readonly types: v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift", "merge_tag_request"], undefined>, undefined>;
33
33
  readonly enabled: v.BooleanSchema<undefined>;
34
34
  readonly hasSecret: v.BooleanSchema<undefined>;
35
35
  readonly updatedAt: v.NumberSchema<undefined>;
@@ -42,7 +42,7 @@ export declare const putNotificationWebhookContract: {
42
42
  readonly pathResolver: () => string;
43
43
  readonly requestBodySchema: v.ObjectSchema<{
44
44
  readonly url: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.UrlAction<string, undefined>, v.StartsWithAction<string, "https://", "The webhook endpoint must be an https:// URL">, v.MaxLengthAction<string, 2000, undefined>]>;
45
- readonly types: v.OptionalSchema<v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift"], undefined>, undefined>, undefined>;
45
+ readonly types: v.OptionalSchema<v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift", "merge_tag_request"], undefined>, undefined>, undefined>;
46
46
  readonly enabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
47
47
  readonly secret: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 16, undefined>, v.MaxLengthAction<string, 200, undefined>]>, undefined>;
48
48
  }, undefined>;
@@ -71,7 +71,7 @@ export declare const putNotificationWebhookContract: {
71
71
  }, undefined>;
72
72
  readonly 200: v.ObjectSchema<{
73
73
  readonly url: v.StringSchema<undefined>;
74
- readonly types: v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift"], undefined>, undefined>;
74
+ readonly types: v.ArraySchema<v.PicklistSchema<["merge_review", "pipeline_complete", "ci_failed", "test_failed", "requirement_review", "clarity_review", "release_regression", "decision_required", "human_test_ready", "visual_confirmation_ready", "human_review", "followup_pending", "fork_decision_pending", "pr_review_ready", "initiative", "platform_health", "budget_paused", "key_drift", "merge_tag_request"], undefined>, undefined>;
75
75
  readonly enabled: v.BooleanSchema<undefined>;
76
76
  readonly hasSecret: v.BooleanSchema<undefined>;
77
77
  readonly updatedAt: v.NumberSchema<undefined>;