@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
package/dist/merge.d.ts CHANGED
@@ -13,6 +13,84 @@ export declare const requirementConcernLevelSchema: v.PicklistSchema<["none", "l
13
13
  export type RequirementConcernLevel = v.InferOutput<typeof requirementConcernLevelSchema>;
14
14
  /** Rank of a {@link RequirementConcernLevel} for "at or below" comparisons. */
15
15
  export declare const REQUIREMENT_CONCERN_RANK: Record<RequirementConcernLevel, number>;
16
+ /**
17
+ * What a preset does with a pull request of a given change class:
18
+ *
19
+ * - `thresholds` — compare the merger's scores against this preset's ceilings (the default,
20
+ * and what an ABSENT entry means, so `{}` behaves exactly like no rules at all).
21
+ * - `always` — auto-merge regardless of the scores.
22
+ * - `never` — always route to a human, regardless of the scores.
23
+ */
24
+ export declare const mergeClassRuleSchema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
25
+ export type MergeClassRule = v.InferOutput<typeof mergeClassRuleSchema>;
26
+ /**
27
+ * A preset's per-class rules: a PARTIAL map from change class to its rule. An absent class
28
+ * means `thresholds`, so an empty object is the "behave exactly as before" identity.
29
+ *
30
+ * `unknown` is deliberately NOT a member: an unclassifiable diff (no VCS client wired, a
31
+ * transient provider outage) must fall back to the score thresholds rather than silently
32
+ * adopt a widened policy. See `RULEABLE_CHANGE_CLASSES`.
33
+ */
34
+ export declare const mergeClassRulesSchema: Omit<v.StrictObjectSchema<{
35
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
36
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
37
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
38
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
39
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
40
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
41
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
42
+ readonly entries: {
43
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
44
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
45
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
46
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
47
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
48
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
49
+ };
50
+ readonly "~standard": v.StandardProps<{
51
+ config?: "always" | "never" | "thresholds" | undefined;
52
+ dependency?: "always" | "never" | "thresholds" | undefined;
53
+ docs?: "always" | "never" | "thresholds" | undefined;
54
+ schema?: "always" | "never" | "thresholds" | undefined;
55
+ source?: "always" | "never" | "thresholds" | undefined;
56
+ test?: "always" | "never" | "thresholds" | undefined;
57
+ }, {
58
+ config?: "always" | "never" | "thresholds" | undefined;
59
+ dependency?: "always" | "never" | "thresholds" | undefined;
60
+ docs?: "always" | "never" | "thresholds" | undefined;
61
+ schema?: "always" | "never" | "thresholds" | undefined;
62
+ source?: "always" | "never" | "thresholds" | undefined;
63
+ test?: "always" | "never" | "thresholds" | undefined;
64
+ }>;
65
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
66
+ config?: "always" | "never" | "thresholds" | undefined;
67
+ dependency?: "always" | "never" | "thresholds" | undefined;
68
+ docs?: "always" | "never" | "thresholds" | undefined;
69
+ schema?: "always" | "never" | "thresholds" | undefined;
70
+ source?: "always" | "never" | "thresholds" | undefined;
71
+ test?: "always" | "never" | "thresholds" | undefined;
72
+ }, v.PicklistIssue | v.StrictObjectIssue>;
73
+ readonly "~types"?: {
74
+ readonly input: {
75
+ config?: "always" | "never" | "thresholds" | undefined;
76
+ dependency?: "always" | "never" | "thresholds" | undefined;
77
+ docs?: "always" | "never" | "thresholds" | undefined;
78
+ schema?: "always" | "never" | "thresholds" | undefined;
79
+ source?: "always" | "never" | "thresholds" | undefined;
80
+ test?: "always" | "never" | "thresholds" | undefined;
81
+ };
82
+ readonly output: {
83
+ config?: "always" | "never" | "thresholds" | undefined;
84
+ dependency?: "always" | "never" | "thresholds" | undefined;
85
+ docs?: "always" | "never" | "thresholds" | undefined;
86
+ schema?: "always" | "never" | "thresholds" | undefined;
87
+ source?: "always" | "never" | "thresholds" | undefined;
88
+ test?: "always" | "never" | "thresholds" | undefined;
89
+ };
90
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
91
+ } | undefined;
92
+ };
93
+ export type MergeClassRules = v.InferOutput<typeof mergeClassRulesSchema>;
16
94
  export declare const mergeAssessmentSchema: v.ObjectSchema<{
17
95
  /** How intricate the change is (size, coupling, subtlety). */
18
96
  readonly complexity: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
@@ -106,6 +184,70 @@ export declare const riskPolicySchema: v.ObjectSchema<{
106
184
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
107
185
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
108
186
  }, undefined>, undefined>, undefined>;
187
+ /**
188
+ * Per-change-class auto-merge rules ({@link mergeClassRulesSchema}). An absent class — and
189
+ * therefore an empty object — means "use the score ceilings above", so `{}` is the identity.
190
+ * A rule NEVER overrides `autoMergeEnabled: false`: that master switch wins first.
191
+ */
192
+ readonly classRules: Omit<v.StrictObjectSchema<{
193
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
194
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
195
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
196
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
197
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
198
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
199
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
200
+ readonly entries: {
201
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
202
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
203
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
204
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
205
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
206
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
207
+ };
208
+ readonly "~standard": v.StandardProps<{
209
+ config?: "always" | "never" | "thresholds" | undefined;
210
+ dependency?: "always" | "never" | "thresholds" | undefined;
211
+ docs?: "always" | "never" | "thresholds" | undefined;
212
+ schema?: "always" | "never" | "thresholds" | undefined;
213
+ source?: "always" | "never" | "thresholds" | undefined;
214
+ test?: "always" | "never" | "thresholds" | undefined;
215
+ }, {
216
+ config?: "always" | "never" | "thresholds" | undefined;
217
+ dependency?: "always" | "never" | "thresholds" | undefined;
218
+ docs?: "always" | "never" | "thresholds" | undefined;
219
+ schema?: "always" | "never" | "thresholds" | undefined;
220
+ source?: "always" | "never" | "thresholds" | undefined;
221
+ test?: "always" | "never" | "thresholds" | undefined;
222
+ }>;
223
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
224
+ config?: "always" | "never" | "thresholds" | undefined;
225
+ dependency?: "always" | "never" | "thresholds" | undefined;
226
+ docs?: "always" | "never" | "thresholds" | undefined;
227
+ schema?: "always" | "never" | "thresholds" | undefined;
228
+ source?: "always" | "never" | "thresholds" | undefined;
229
+ test?: "always" | "never" | "thresholds" | undefined;
230
+ }, v.PicklistIssue | v.StrictObjectIssue>;
231
+ readonly "~types"?: {
232
+ readonly input: {
233
+ config?: "always" | "never" | "thresholds" | undefined;
234
+ dependency?: "always" | "never" | "thresholds" | undefined;
235
+ docs?: "always" | "never" | "thresholds" | undefined;
236
+ schema?: "always" | "never" | "thresholds" | undefined;
237
+ source?: "always" | "never" | "thresholds" | undefined;
238
+ test?: "always" | "never" | "thresholds" | undefined;
239
+ };
240
+ readonly output: {
241
+ config?: "always" | "never" | "thresholds" | undefined;
242
+ dependency?: "always" | "never" | "thresholds" | undefined;
243
+ docs?: "always" | "never" | "thresholds" | undefined;
244
+ schema?: "always" | "never" | "thresholds" | undefined;
245
+ source?: "always" | "never" | "thresholds" | undefined;
246
+ test?: "always" | "never" | "thresholds" | undefined;
247
+ };
248
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
249
+ } | undefined;
250
+ };
109
251
  /** The workspace's fallback preset, used by tasks that pick none. Exactly one is true. */
110
252
  readonly isDefault: v.BooleanSchema<undefined>;
111
253
  /**
@@ -141,6 +283,66 @@ export declare const createRiskPolicySchema: v.ObjectSchema<{
141
283
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
142
284
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
143
285
  }, undefined>, undefined>, undefined>;
286
+ /** Per-change-class auto-merge rules; absent ⇒ every class uses the score ceilings. */
287
+ readonly classRules: v.OptionalSchema<Omit<v.StrictObjectSchema<{
288
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
289
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
290
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
291
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
292
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
293
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
294
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
295
+ readonly entries: {
296
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
297
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
298
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
299
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
300
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
301
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
302
+ };
303
+ readonly "~standard": v.StandardProps<{
304
+ config?: "always" | "never" | "thresholds" | undefined;
305
+ dependency?: "always" | "never" | "thresholds" | undefined;
306
+ docs?: "always" | "never" | "thresholds" | undefined;
307
+ schema?: "always" | "never" | "thresholds" | undefined;
308
+ source?: "always" | "never" | "thresholds" | undefined;
309
+ test?: "always" | "never" | "thresholds" | undefined;
310
+ }, {
311
+ config?: "always" | "never" | "thresholds" | undefined;
312
+ dependency?: "always" | "never" | "thresholds" | undefined;
313
+ docs?: "always" | "never" | "thresholds" | undefined;
314
+ schema?: "always" | "never" | "thresholds" | undefined;
315
+ source?: "always" | "never" | "thresholds" | undefined;
316
+ test?: "always" | "never" | "thresholds" | undefined;
317
+ }>;
318
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
319
+ config?: "always" | "never" | "thresholds" | undefined;
320
+ dependency?: "always" | "never" | "thresholds" | undefined;
321
+ docs?: "always" | "never" | "thresholds" | undefined;
322
+ schema?: "always" | "never" | "thresholds" | undefined;
323
+ source?: "always" | "never" | "thresholds" | undefined;
324
+ test?: "always" | "never" | "thresholds" | undefined;
325
+ }, v.PicklistIssue | v.StrictObjectIssue>;
326
+ readonly "~types"?: {
327
+ readonly input: {
328
+ config?: "always" | "never" | "thresholds" | undefined;
329
+ dependency?: "always" | "never" | "thresholds" | undefined;
330
+ docs?: "always" | "never" | "thresholds" | undefined;
331
+ schema?: "always" | "never" | "thresholds" | undefined;
332
+ source?: "always" | "never" | "thresholds" | undefined;
333
+ test?: "always" | "never" | "thresholds" | undefined;
334
+ };
335
+ readonly output: {
336
+ config?: "always" | "never" | "thresholds" | undefined;
337
+ dependency?: "always" | "never" | "thresholds" | undefined;
338
+ docs?: "always" | "never" | "thresholds" | undefined;
339
+ schema?: "always" | "never" | "thresholds" | undefined;
340
+ source?: "always" | "never" | "thresholds" | undefined;
341
+ test?: "always" | "never" | "thresholds" | undefined;
342
+ };
343
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
344
+ } | undefined;
345
+ }, {}>;
144
346
  /** Make this the workspace default (demotes the previous default). */
145
347
  readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, false>;
146
348
  }, undefined>;
@@ -166,6 +368,66 @@ export declare const updateRiskPolicySchema: v.ObjectSchema<{
166
368
  readonly minImpact: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>, undefined>;
167
369
  readonly onMissingEstimate: v.OptionalSchema<v.PicklistSchema<["run", "skip"], undefined>, "run">;
168
370
  }, undefined>, undefined>, undefined>;
371
+ /** Replaces the whole rule map (not merged), so clearing a class is a plain omission. */
372
+ readonly classRules: v.OptionalSchema<Omit<v.StrictObjectSchema<{
373
+ config: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
374
+ dependency: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
375
+ docs: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
376
+ schema: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
377
+ source: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
378
+ test: v.PicklistSchema<["thresholds", "always", "never"], undefined>;
379
+ }, undefined>, "entries" | "~run" | "~standard" | "~types"> & {
380
+ readonly entries: {
381
+ config: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
382
+ dependency: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
383
+ docs: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
384
+ schema: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
385
+ source: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
386
+ test: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
387
+ };
388
+ readonly "~standard": v.StandardProps<{
389
+ config?: "always" | "never" | "thresholds" | undefined;
390
+ dependency?: "always" | "never" | "thresholds" | undefined;
391
+ docs?: "always" | "never" | "thresholds" | undefined;
392
+ schema?: "always" | "never" | "thresholds" | undefined;
393
+ source?: "always" | "never" | "thresholds" | undefined;
394
+ test?: "always" | "never" | "thresholds" | undefined;
395
+ }, {
396
+ config?: "always" | "never" | "thresholds" | undefined;
397
+ dependency?: "always" | "never" | "thresholds" | undefined;
398
+ docs?: "always" | "never" | "thresholds" | undefined;
399
+ schema?: "always" | "never" | "thresholds" | undefined;
400
+ source?: "always" | "never" | "thresholds" | undefined;
401
+ test?: "always" | "never" | "thresholds" | undefined;
402
+ }>;
403
+ readonly "~run": (dataset: v.UnknownDataset, config: v.Config<v.BaseIssue<unknown>>) => v.OutputDataset<{
404
+ config?: "always" | "never" | "thresholds" | undefined;
405
+ dependency?: "always" | "never" | "thresholds" | undefined;
406
+ docs?: "always" | "never" | "thresholds" | undefined;
407
+ schema?: "always" | "never" | "thresholds" | undefined;
408
+ source?: "always" | "never" | "thresholds" | undefined;
409
+ test?: "always" | "never" | "thresholds" | undefined;
410
+ }, v.PicklistIssue | v.StrictObjectIssue>;
411
+ readonly "~types"?: {
412
+ readonly input: {
413
+ config?: "always" | "never" | "thresholds" | undefined;
414
+ dependency?: "always" | "never" | "thresholds" | undefined;
415
+ docs?: "always" | "never" | "thresholds" | undefined;
416
+ schema?: "always" | "never" | "thresholds" | undefined;
417
+ source?: "always" | "never" | "thresholds" | undefined;
418
+ test?: "always" | "never" | "thresholds" | undefined;
419
+ };
420
+ readonly output: {
421
+ config?: "always" | "never" | "thresholds" | undefined;
422
+ dependency?: "always" | "never" | "thresholds" | undefined;
423
+ docs?: "always" | "never" | "thresholds" | undefined;
424
+ schema?: "always" | "never" | "thresholds" | undefined;
425
+ source?: "always" | "never" | "thresholds" | undefined;
426
+ test?: "always" | "never" | "thresholds" | undefined;
427
+ };
428
+ readonly issue: v.PicklistIssue | v.StrictObjectIssue;
429
+ } | undefined;
430
+ }, undefined>;
169
431
  readonly isDefault: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
170
432
  }, undefined>;
171
433
  export type UpdateRiskPolicyInput = v.InferOutput<typeof updateRiskPolicySchema>;
@@ -182,6 +444,13 @@ export declare const mergeDecisionThresholdsSchema: v.ObjectSchema<{
182
444
  readonly maxRisk: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
183
445
  readonly maxImpact: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
184
446
  readonly autoMergeEnabled: v.BooleanSchema<undefined>;
447
+ /**
448
+ * The rule the preset carried for the run's resolved change class, when one applied —
449
+ * so the decision banner can say "auto-merged because this preset always auto-merges
450
+ * dependency bumps" rather than implying the scores did it. Absent when the class was
451
+ * `unknown` (rules never match it) or the preset left the class on `thresholds`.
452
+ */
453
+ readonly classRule: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
185
454
  }, undefined>;
186
455
  export type MergeDecisionThresholds = v.InferOutput<typeof mergeDecisionThresholdsSchema>;
187
456
  export declare const mergeDecisionSchema: v.ObjectSchema<{
@@ -200,8 +469,13 @@ export declare const mergeDecisionSchema: v.ObjectSchema<{
200
469
  * - `merge_partial`: review; a MULTI-REPO task auto-merged some of its PRs but an
201
470
  * intermediate merge failed (cross-repo merges are non-atomic), so the block is left
202
471
  * blocked with a notification enumerating the merged vs unmerged repos.
472
+ * - `class_auto_merge`: auto-merged because the preset's rule for the run's change class
473
+ * is `always` — the scores (and the rationale-credibility backstop) were bypassed by an
474
+ * explicit operator policy keyed on the DETERMINISTIC backend classification.
475
+ * - `class_requires_review`: review; the preset's rule for the change class is `never`,
476
+ * regardless of how low the scores were.
203
477
  */
204
- readonly reason: v.PicklistSchema<["within_thresholds", "exceeded_thresholds", "auto_merge_disabled", "no_rationale", "no_assessment", "merge_failed", "merge_partial"], undefined>;
478
+ readonly reason: v.PicklistSchema<["within_thresholds", "exceeded_thresholds", "auto_merge_disabled", "no_rationale", "no_assessment", "merge_failed", "merge_partial", "class_auto_merge", "class_requires_review"], undefined>;
205
479
  /** The merger's assessment (absent only when it produced no parseable one). */
206
480
  readonly assessment: v.OptionalSchema<v.ObjectSchema<{
207
481
  /** How intricate the change is (size, coupling, subtlety). */
@@ -220,9 +494,23 @@ export declare const mergeDecisionSchema: v.ObjectSchema<{
220
494
  readonly maxRisk: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
221
495
  readonly maxImpact: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.MinValueAction<number, 0, undefined>, v.MaxValueAction<number, 1, undefined>]>;
222
496
  readonly autoMergeEnabled: v.BooleanSchema<undefined>;
497
+ /**
498
+ * The rule the preset carried for the run's resolved change class, when one applied —
499
+ * so the decision banner can say "auto-merged because this preset always auto-merges
500
+ * dependency bumps" rather than implying the scores did it. Absent when the class was
501
+ * `unknown` (rules never match it) or the preset left the class on `thresholds`.
502
+ */
503
+ readonly classRule: v.OptionalSchema<v.PicklistSchema<["thresholds", "always", "never"], undefined>, undefined>;
223
504
  }, undefined>;
224
505
  /** The axes that exceeded their ceiling (empty unless `reason` is `exceeded_thresholds`). */
225
506
  readonly exceededAxes: v.ArraySchema<v.PicklistSchema<["complexity", "risk", "impact"], undefined>, undefined>;
507
+ /**
508
+ * The run's deterministic change class, when classification resolved one. Recorded on the
509
+ * step so the SPA can show WHAT KIND of change the decision was made about (and, with the
510
+ * class's rollup, how that class has historically fared). Absent ⇒ classification did not
511
+ * run (no VCS client wired) — the same state `unknown` denotes on a track record.
512
+ */
513
+ readonly changeClass: v.OptionalSchema<v.PicklistSchema<["docs", "test", "dependency", "config", "source", "schema", "unknown"], undefined>, undefined>;
226
514
  }, undefined>;
227
515
  export type MergeDecision = v.InferOutput<typeof mergeDecisionSchema>;
228
516
  //# sourceMappingURL=merge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAkB5B;;;;GAIG;AACH;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,gEAAgD,CAAA;AAC1F,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEzF,+EAA+E;AAC/E,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAK5E,CAAA;AAED,eAAO,MAAM,qBAAqB;IAChC,8DAA8D;;IAE9D,yEAAyE;;IAEzE,+DAA+D;;IAE/D,qFAAqF;;aAErF,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB;;;IAG3B,4EAA4E;;IAE5E,sEAAsE;;IAEtE,wEAAwE;;IAExE,qFAAqF;;IAErF;;;;OAIG;;IAEH;;;;;;;OAOG;;IAEH;;;;;;OAMG;;IAEH;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;;OAKG;;IAEH;;;;;;;;;OASG;;;;;;;;IAEH,0FAA0F;;IAE1F;;;;;OAKG;;;aAGH,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAY/D,0DAA0D;AAC1D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;IAYjC,mFAAmF;;IAEnF,+FAA+F;;;;;;;;IAE/F,sEAAsE;;aAEtE,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEhF,sEAAsE;AACtE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;aAejC,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEhF,wFAAwF;AACxF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAEpE;AAUD,yDAAyD;AACzD,eAAO,MAAM,eAAe,+DAA+C,CAAA;AAC3E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D,yFAAyF;AACzF,eAAO,MAAM,6BAA6B;IACxC,4DAA4D;;;;;;aAM5D,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEzF,eAAO,MAAM,mBAAmB;IAC9B,gFAAgF;;IAEhF;;;;;;;;;;;;;OAaG;;IAUH,+EAA+E;;QA7M/E,8DAA8D;;QAE9D,yEAAyE;;QAEzE,+DAA+D;;QAE/D,qFAAqF;;;;QAoKrF,4DAA4D;;;;;;;IAsC5D,6FAA6F;;aAE7F,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"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"}
package/dist/merge.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import * as v from 'valibot';
2
2
  import { stepGatingSchema } from './consensus.js';
3
+ import { changeClassSchema, RULEABLE_CHANGE_CLASSES } from './mergeTrackRecord.js';
3
4
  // ---------------------------------------------------------------------------
4
5
  // Merge-policy wire contracts. After a pipeline's implementation work is done
5
6
  // and CI is green, a `merger` agent assesses the pull request along three axes —
@@ -32,6 +33,34 @@ export const REQUIREMENT_CONCERN_RANK = {
32
33
  medium: 2,
33
34
  high: 3,
34
35
  };
36
+ // ---------------------------------------------------------------------------
37
+ // Per-CLASS auto-merge rules. The score ceilings below apply uniformly to every
38
+ // change, which leaves a workspace unable to express "auto-merge dependency bumps
39
+ // and docs, always review schema changes". A preset therefore also carries an
40
+ // optional rule per {@link ChangeClass}, resolved against the run's deterministic,
41
+ // path-derived classification. See `docs/initiatives/merge-track-record.md`.
42
+ // ---------------------------------------------------------------------------
43
+ /**
44
+ * What a preset does with a pull request of a given change class:
45
+ *
46
+ * - `thresholds` — compare the merger's scores against this preset's ceilings (the default,
47
+ * and what an ABSENT entry means, so `{}` behaves exactly like no rules at all).
48
+ * - `always` — auto-merge regardless of the scores.
49
+ * - `never` — always route to a human, regardless of the scores.
50
+ */
51
+ export const mergeClassRuleSchema = v.picklist(['thresholds', 'always', 'never']);
52
+ /**
53
+ * A preset's per-class rules: a PARTIAL map from change class to its rule. An absent class
54
+ * means `thresholds`, so an empty object is the "behave exactly as before" identity.
55
+ *
56
+ * `unknown` is deliberately NOT a member: an unclassifiable diff (no VCS client wired, a
57
+ * transient provider outage) must fall back to the score thresholds rather than silently
58
+ * adopt a widened policy. See `RULEABLE_CHANGE_CLASSES`.
59
+ */
60
+ export const mergeClassRulesSchema = v.partial(
61
+ // STRICT: an unknown key (notably `unknown`, which no rule may ever match) is a 400 rather than
62
+ // being silently stripped. A caller who thinks they authored a rule must not be told it worked.
63
+ v.strictObject(Object.fromEntries(RULEABLE_CHANGE_CLASSES.map((c) => [c, mergeClassRuleSchema]))));
35
64
  export const mergeAssessmentSchema = v.object({
36
65
  /** How intricate the change is (size, coupling, subtlety). */
37
66
  complexity: v.pipe(v.number(), v.minValue(0), v.maxValue(1)),
@@ -118,6 +147,12 @@ export const riskPolicySchema = v.object({
118
147
  * built-in presets.
119
148
  */
120
149
  forkDecision: v.optional(v.nullable(stepGatingSchema)),
150
+ /**
151
+ * Per-change-class auto-merge rules ({@link mergeClassRulesSchema}). An absent class — and
152
+ * therefore an empty object — means "use the score ceilings above", so `{}` is the identity.
153
+ * A rule NEVER overrides `autoMergeEnabled: false`: that master switch wins first.
154
+ */
155
+ classRules: mergeClassRulesSchema,
121
156
  /** The workspace's fallback preset, used by tasks that pick none. Exactly one is true. */
122
157
  isDefault: v.boolean(),
123
158
  /**
@@ -154,6 +189,8 @@ export const createRiskPolicySchema = v.object({
154
189
  autoMergeEnabled: v.optional(v.boolean(), true),
155
190
  /** Estimate gating for the implementation-fork decision phase; absent ⇒ off in `auto` mode. */
156
191
  forkDecision: v.optional(v.nullable(stepGatingSchema)),
192
+ /** Per-change-class auto-merge rules; absent ⇒ every class uses the score ceilings. */
193
+ classRules: v.optional(mergeClassRulesSchema, {}),
157
194
  /** Make this the workspace default (demotes the previous default). */
158
195
  isDefault: v.optional(v.boolean(), false),
159
196
  });
@@ -172,6 +209,8 @@ export const updateRiskPolicySchema = v.object({
172
209
  humanReviewGraceMinutes: v.optional(graceMinutesSchema),
173
210
  autoMergeEnabled: v.optional(v.boolean()),
174
211
  forkDecision: v.optional(v.nullable(stepGatingSchema)),
212
+ /** Replaces the whole rule map (not merged), so clearing a class is a plain omission. */
213
+ classRules: v.optional(mergeClassRulesSchema),
175
214
  isDefault: v.optional(v.boolean()),
176
215
  });
177
216
  /** Parse-or-throw an assessment payload an agent returned (the engine validates it). */
@@ -195,6 +234,13 @@ export const mergeDecisionThresholdsSchema = v.object({
195
234
  maxRisk: v.pipe(v.number(), v.minValue(0), v.maxValue(1)),
196
235
  maxImpact: v.pipe(v.number(), v.minValue(0), v.maxValue(1)),
197
236
  autoMergeEnabled: v.boolean(),
237
+ /**
238
+ * The rule the preset carried for the run's resolved change class, when one applied —
239
+ * so the decision banner can say "auto-merged because this preset always auto-merges
240
+ * dependency bumps" rather than implying the scores did it. Absent when the class was
241
+ * `unknown` (rules never match it) or the preset left the class on `thresholds`.
242
+ */
243
+ classRule: v.optional(mergeClassRuleSchema),
198
244
  });
199
245
  export const mergeDecisionSchema = v.object({
200
246
  /** What the engine did: merged the PR for real, or left it open for a human. */
@@ -212,6 +258,11 @@ export const mergeDecisionSchema = v.object({
212
258
  * - `merge_partial`: review; a MULTI-REPO task auto-merged some of its PRs but an
213
259
  * intermediate merge failed (cross-repo merges are non-atomic), so the block is left
214
260
  * blocked with a notification enumerating the merged vs unmerged repos.
261
+ * - `class_auto_merge`: auto-merged because the preset's rule for the run's change class
262
+ * is `always` — the scores (and the rationale-credibility backstop) were bypassed by an
263
+ * explicit operator policy keyed on the DETERMINISTIC backend classification.
264
+ * - `class_requires_review`: review; the preset's rule for the change class is `never`,
265
+ * regardless of how low the scores were.
215
266
  */
216
267
  reason: v.picklist([
217
268
  'within_thresholds',
@@ -221,11 +272,20 @@ export const mergeDecisionSchema = v.object({
221
272
  'no_assessment',
222
273
  'merge_failed',
223
274
  'merge_partial',
275
+ 'class_auto_merge',
276
+ 'class_requires_review',
224
277
  ]),
225
278
  /** The merger's assessment (absent only when it produced no parseable one). */
226
279
  assessment: v.optional(mergeAssessmentSchema),
227
280
  thresholds: mergeDecisionThresholdsSchema,
228
281
  /** The axes that exceeded their ceiling (empty unless `reason` is `exceeded_thresholds`). */
229
282
  exceededAxes: v.array(mergeAxisSchema),
283
+ /**
284
+ * The run's deterministic change class, when classification resolved one. Recorded on the
285
+ * step so the SPA can show WHAT KIND of change the decision was made about (and, with the
286
+ * class's rollup, how that class has historically fared). Absent ⇒ classification did not
287
+ * run (no VCS client wired) — the same state `unknown` denotes on a track record.
288
+ */
289
+ changeClass: v.optional(changeClassSchema),
230
290
  });
231
291
  //# sourceMappingURL=merge.js.map
package/dist/merge.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merge.js","sourceRoot":"","sources":["../src/merge.ts"],"names":[],"mappings":"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"}