@cat-factory/contracts 0.226.0 → 0.229.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 (67) hide show
  1. package/dist/errors.d.ts +1 -1
  2. package/dist/errors.d.ts.map +1 -1
  3. package/dist/errors.js +15 -0
  4. package/dist/errors.js.map +1 -1
  5. package/dist/execution.d.ts +24 -0
  6. package/dist/execution.d.ts.map +1 -1
  7. package/dist/execution.js +15 -0
  8. package/dist/execution.js.map +1 -1
  9. package/dist/github.d.ts +17 -1
  10. package/dist/github.d.ts.map +1 -1
  11. package/dist/github.js +18 -1
  12. package/dist/github.js.map +1 -1
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/input-gate.d.ts +115 -0
  18. package/dist/input-gate.d.ts.map +1 -0
  19. package/dist/input-gate.js +131 -0
  20. package/dist/input-gate.js.map +1 -0
  21. package/dist/public-decisions.d.ts +65 -1
  22. package/dist/public-decisions.d.ts.map +1 -1
  23. package/dist/public-decisions.js +45 -6
  24. package/dist/public-decisions.js.map +1 -1
  25. package/dist/routes/agent-runs.d.ts +22 -0
  26. package/dist/routes/agent-runs.d.ts.map +1 -1
  27. package/dist/routes/bug-hunt.d.ts +22 -0
  28. package/dist/routes/bug-hunt.d.ts.map +1 -1
  29. package/dist/routes/execution.d.ts +88 -0
  30. package/dist/routes/execution.d.ts.map +1 -1
  31. package/dist/routes/github.d.ts +2 -0
  32. package/dist/routes/github.d.ts.map +1 -1
  33. package/dist/routes/gitlab.d.ts +2 -0
  34. package/dist/routes/gitlab.d.ts.map +1 -1
  35. package/dist/routes/human-review.d.ts +11 -0
  36. package/dist/routes/human-review.d.ts.map +1 -1
  37. package/dist/routes/human-test.d.ts +55 -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/input-gate.d.ts +48 -0
  44. package/dist/routes/input-gate.d.ts.map +1 -0
  45. package/dist/routes/input-gate.js +24 -0
  46. package/dist/routes/input-gate.js.map +1 -0
  47. package/dist/routes/public-decisions.d.ts +193 -0
  48. package/dist/routes/public-decisions.d.ts.map +1 -1
  49. package/dist/routes/public-decisions.js +20 -1
  50. package/dist/routes/public-decisions.js.map +1 -1
  51. package/dist/routes/visual-confirm.d.ts +33 -0
  52. package/dist/routes/visual-confirm.d.ts.map +1 -1
  53. package/dist/routes/workspace-settings.d.ts +3 -0
  54. package/dist/routes/workspace-settings.d.ts.map +1 -1
  55. package/dist/routes/workspaces.d.ts +28 -0
  56. package/dist/routes/workspaces.d.ts.map +1 -1
  57. package/dist/snapshot.d.ts +14 -0
  58. package/dist/snapshot.d.ts.map +1 -1
  59. package/dist/task-types.d.ts +27 -0
  60. package/dist/task-types.d.ts.map +1 -1
  61. package/dist/task-types.js +20 -0
  62. package/dist/task-types.js.map +1 -1
  63. package/dist/workspace-settings.d.ts +13 -0
  64. package/dist/workspace-settings.d.ts.map +1 -1
  65. package/dist/workspace-settings.js +14 -0
  66. package/dist/workspace-settings.js.map +1 -1
  67. package/package.json +1 -1
@@ -0,0 +1,131 @@
1
+ import * as v from 'valibot';
2
+ // ---------------------------------------------------------------------------
3
+ // The PRE-TOKEN INPUT GATE's wire vocabulary: what a run's structural input check
4
+ // found, how severe it is, and how the run was let past it.
5
+ //
6
+ // The gate is a deterministic reduction over a task's own authored fields (title,
7
+ // description, the per-type fields), run ONCE before a run's first agent step is
8
+ // dispatched, so a task nobody could act on parks having spent nothing, rather than
9
+ // buying that same verdict from the requirements reviewer for one model call.
10
+ //
11
+ // It lives in contracts (not only in kernel) because the SPA renders each finding and
12
+ // must key its translated copy off the SAME closed vocabulary the engine writes. Pure
13
+ // evaluation is kernel's `domain/input-gate.ts`; the run state is stamped by the
14
+ // orchestration `InputGateController`.
15
+ // ---------------------------------------------------------------------------
16
+ /**
17
+ * A structural gap the gate can find in a task's input. CLOSED and PERSISTED (it rides a
18
+ * run row), so a member may be added freely but a retired one has to be NAMED as retired
19
+ * rather than dropped. A stored run keeps whatever code was current when it parked, and
20
+ * the reader that meets a withdrawn value is the very surface whose job is to tell a human
21
+ * what to go and fix.
22
+ *
23
+ * - `description_missing`: the task has no description at all.
24
+ * - `description_placeholder`: the description is nothing but a placeholder (`TBD`, `TODO`,
25
+ * `n/a`, `?`), authored but carrying no statement of the work.
26
+ * - `description_thin`: a description too short to specify anything (advisory: a one-line
27
+ * task can still be a real task).
28
+ * - `reproduction_missing`: a `bug` task with neither reproduction steps nor any
29
+ * reproduction cue in its description. The single most expensive input gap there is: a
30
+ * fixer with nothing to reproduce cannot know when it is done.
31
+ * - `review_target_missing`: a `review` task naming no pull request. There is literally
32
+ * nothing for the run to open.
33
+ * - `success_criteria_missing`: a `spike` with no stated success criteria or research
34
+ * question, so nothing decides when the timebox has been spent well (advisory).
35
+ */
36
+ export const INPUT_GATE_ISSUE_CODES = [
37
+ 'description_missing',
38
+ 'description_placeholder',
39
+ 'description_thin',
40
+ 'reproduction_missing',
41
+ 'review_target_missing',
42
+ 'success_criteria_missing',
43
+ ];
44
+ export const inputGateIssueCodeSchema = v.picklist(INPUT_GATE_ISSUE_CODES);
45
+ /**
46
+ * How hard a finding bites. `blocking` parks the run before its first dispatch;
47
+ * `advisory` is recorded and reported but never stops anything.
48
+ *
49
+ * A finding's severity is INTRINSIC to its code (see kernel's `INPUT_GATE_SEVERITY`) and
50
+ * then floored by the workspace's {@link inputGateModeSchema}. `advisory` mode downgrades
51
+ * every finding; it never upgrades one. So the mode can only ever make the gate quieter,
52
+ * which is what lets it default to on.
53
+ */
54
+ export const inputGateSeveritySchema = v.picklist(['blocking', 'advisory']);
55
+ /** One structural finding: its code and the severity it carried in THIS evaluation. */
56
+ export const inputGateIssueSchema = v.object({
57
+ code: inputGateIssueCodeSchema,
58
+ severity: inputGateSeveritySchema,
59
+ });
60
+ /**
61
+ * Whether/how the gate applies to a workspace's runs:
62
+ * - `standard` (the default): a blocking finding parks the run before any model call.
63
+ * - `advisory`: every finding is downgraded, so nothing ever parks; the findings are
64
+ * still recorded on the run (and shown), which is how a workspace watches what the gate
65
+ * WOULD have caught before turning it up.
66
+ * - `off`: the gate does not run. Distinct from `advisory`: `off` records no
67
+ * findings at all, so "we looked and found nothing" and "nobody looked" stay apart.
68
+ */
69
+ export const inputGateModeSchema = v.picklist(['standard', 'advisory', 'off']);
70
+ /**
71
+ * The gate's disposition for a run. Five values because each needs a different reaction and
72
+ * collapsing any pair would state something false:
73
+ * - `off`: the workspace has the gate turned off, so it did not run. NOT the same as
74
+ * finding nothing.
75
+ * - `not_applicable`: the gate is on, but this run's task is not one a human AUTHORED, so
76
+ * there is no description for it to judge. A recurring schedule's reused block is the
77
+ * case: its real input is the schedule (and, for intake, the ticket it picks up), and a
78
+ * blank description on it means nothing is wrong. Kept apart from `off` because the two
79
+ * have opposite fixes: one is a setting somebody chose, the other is a property of the
80
+ * task that no setting will change.
81
+ * - `passed`: it ran and nothing blocking was found (`issues` may still hold advisories).
82
+ * - `blocked`: it ran, found blocking gaps, and the run is parked on them.
83
+ * - `overridden`: a human read the blocking gaps and chose to run anyway. The findings
84
+ * stay on the run: what was waived is part of the record, and the agents are told.
85
+ */
86
+ export const inputGateStatusSchema = v.picklist([
87
+ 'off',
88
+ 'not_applicable',
89
+ 'passed',
90
+ 'blocked',
91
+ 'overridden',
92
+ ]);
93
+ /**
94
+ * The gate's verdict as stamped on a run. Rides the run's `detail` JSON (no dedicated
95
+ * column, so it is runtime-symmetric by construction) and is written exactly once per
96
+ * evaluation. The presence of this record is also what makes the check idempotent under a
97
+ * durable replay: a re-driven run reads its own settled verdict instead of re-evaluating a
98
+ * block a human may have edited in the meantime.
99
+ */
100
+ export const runInputGateSchema = v.object({
101
+ /** The disposition (see {@link inputGateStatusSchema}). */
102
+ status: inputGateStatusSchema,
103
+ /** The mode the evaluation ran under, so a recorded verdict explains its own severities. */
104
+ mode: inputGateModeSchema,
105
+ /**
106
+ * Every finding, blocking and advisory alike, in a stable order. Empty on `off` (nothing
107
+ * was looked at) and on a clean `passed`.
108
+ */
109
+ issues: v.array(inputGateIssueSchema),
110
+ /** Epoch ms of the evaluation that produced this verdict. */
111
+ checkedAt: v.number(),
112
+ /**
113
+ * Internal user id (`usr_*`) of whoever waived the blocking findings, on `overridden`.
114
+ * Absent when the run was never blocked, and when the waiver came from a caller with no
115
+ * signed-in user (auth-disabled dev, a headless key).
116
+ */
117
+ overriddenBy: v.optional(v.nullable(v.string())),
118
+ /** Epoch ms the override was recorded. Absent unless `status` is `overridden`. */
119
+ overriddenAt: v.optional(v.number()),
120
+ });
121
+ /**
122
+ * How a human resolves a run parked on the gate:
123
+ * - `recheck`: re-evaluate against the task as it stands NOW (they went and filled the
124
+ * gaps in). Clears the park only if the gaps are genuinely gone, so the fix is verified
125
+ * rather than asserted.
126
+ * - `proceed`: waive the findings and run anyway.
127
+ */
128
+ export const resolveInputGateSchema = v.object({
129
+ choice: v.picklist(['recheck', 'proceed']),
130
+ });
131
+ //# sourceMappingURL=input-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-gate.js","sourceRoot":"","sources":["../src/input-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,kFAAkF;AAClF,4DAA4D;AAC5D,EAAE;AACF,kFAAkF;AAClF,iFAAiF;AACjF,oFAAoF;AACpF,8EAA8E;AAC9E,EAAE;AACF,sFAAsF;AACtF,sFAAsF;AACtF,iFAAiF;AACjF,uCAAuC;AACvC,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,qBAAqB;IACrB,yBAAyB;IACzB,kBAAkB;IAClB,sBAAsB;IACtB,uBAAuB;IACvB,0BAA0B;CAClB,CAAA;AACV,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA;AAG1E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AAG3E,uFAAuF;AACvF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,wBAAwB;IAC9B,QAAQ,EAAE,uBAAuB;CAClC,CAAC,CAAA;AAGF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAA;AAG9E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC9C,KAAK;IACL,gBAAgB;IAChB,QAAQ;IACR,SAAS;IACT,YAAY;CACb,CAAC,CAAA;AAGF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,2DAA2D;IAC3D,MAAM,EAAE,qBAAqB;IAC7B,4FAA4F;IAC5F,IAAI,EAAE,mBAAmB;IACzB;;;OAGG;IACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;IACrC,6DAA6D;IAC7D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB;;;;OAIG;IACH,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,kFAAkF;IAClF,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACrC,CAAC,CAAA;AAGF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;CAC3C,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import * as v from 'valibot';
2
2
  /** Which parked decision a `publicDecision` entry describes. */
3
- export declare const publicDecisionKindSchema: v.PicklistSchema<["requirements-review", "fork", "judge"], undefined>;
3
+ export declare const publicDecisionKindSchema: v.PicklistSchema<["requirements-review", "fork", "judge", "input-gate"], undefined>;
4
4
  export type PublicDecisionKind = v.InferOutput<typeof publicDecisionKindSchema>;
5
5
  /**
6
6
  * One reviewer finding as exposed externally — the question, how serious it is, and where it
@@ -126,6 +126,33 @@ export declare const publicJudgeDecisionSchema: v.ObjectSchema<{
126
126
  readonly maxBounces: v.NumberSchema<undefined>;
127
127
  }, undefined>;
128
128
  export type PublicJudgeDecision = v.InferOutput<typeof publicJudgeDecisionSchema>;
129
+ /**
130
+ * A run parked on the PRE-TOKEN INPUT GATE as exposed externally: the task states nothing an
131
+ * agent could act on, and the run stopped before its first dispatch having spent nothing.
132
+ *
133
+ * This one is exposed for a reason the other three do not have. The gate parks on the shape of
134
+ * the TASK rather than the shape of the pipeline, so it can hold ANY public run, including one
135
+ * whose pipeline carries no park at all; a caller filing title-only tasks would otherwise watch
136
+ * them stop with `GET .../decisions` reporting `parked: true` and nothing to answer, and
137
+ * `POST /api/v1/jobs/:id/cancel` as the only way out. The findings are the same closed codes the
138
+ * SPA renders, so an integration can map them to its own copy or hand them back to whoever filed
139
+ * the ticket.
140
+ */
141
+ export declare const publicInputGateDecisionSchema: v.ObjectSchema<{
142
+ readonly kind: v.LiteralSchema<"input-gate", undefined>;
143
+ /** The disposition; only `blocked` accepts an answer. */
144
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
145
+ /** The workspace mode the evaluation ran under, so a verdict explains its own severities. */
146
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
147
+ /** Every finding, blocking and advisory alike, in a stable order. */
148
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
149
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
150
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
151
+ }, undefined>, undefined>;
152
+ /** Epoch ms of the evaluation that produced this verdict. */
153
+ readonly checkedAt: v.NumberSchema<undefined>;
154
+ }, undefined>;
155
+ export type PublicInputGateDecision = v.InferOutput<typeof publicInputGateDecisionSchema>;
129
156
  export declare const publicDecisionSchema: v.VariantSchema<"kind", [v.ObjectSchema<{
130
157
  readonly kind: v.LiteralSchema<"requirements-review", undefined>;
131
158
  readonly reviewId: v.StringSchema<undefined>;
@@ -197,6 +224,19 @@ export declare const publicDecisionSchema: v.VariantSchema<"kind", [v.ObjectSche
197
224
  /** Rework rounds spent and the ceiling, so a caller knows whether `bounce` is the last word. */
198
225
  readonly bounces: v.NumberSchema<undefined>;
199
226
  readonly maxBounces: v.NumberSchema<undefined>;
227
+ }, undefined>, v.ObjectSchema<{
228
+ readonly kind: v.LiteralSchema<"input-gate", undefined>;
229
+ /** The disposition; only `blocked` accepts an answer. */
230
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
231
+ /** The workspace mode the evaluation ran under, so a verdict explains its own severities. */
232
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
233
+ /** Every finding, blocking and advisory alike, in a stable order. */
234
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
235
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
236
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
237
+ }, undefined>, undefined>;
238
+ /** Epoch ms of the evaluation that produced this verdict. */
239
+ readonly checkedAt: v.NumberSchema<undefined>;
200
240
  }, undefined>], undefined>;
201
241
  export type PublicDecision = v.InferOutput<typeof publicDecisionSchema>;
202
242
  /**
@@ -282,6 +322,19 @@ export declare const publicDecisionListSchema: v.ObjectSchema<{
282
322
  /** Rework rounds spent and the ceiling, so a caller knows whether `bounce` is the last word. */
283
323
  readonly bounces: v.NumberSchema<undefined>;
284
324
  readonly maxBounces: v.NumberSchema<undefined>;
325
+ }, undefined>, v.ObjectSchema<{
326
+ readonly kind: v.LiteralSchema<"input-gate", undefined>;
327
+ /** The disposition; only `blocked` accepts an answer. */
328
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
329
+ /** The workspace mode the evaluation ran under, so a verdict explains its own severities. */
330
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
331
+ /** Every finding, blocking and advisory alike, in a stable order. */
332
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
333
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
334
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
335
+ }, undefined>, undefined>;
336
+ /** Epoch ms of the evaluation that produced this verdict. */
337
+ readonly checkedAt: v.NumberSchema<undefined>;
285
338
  }, undefined>], undefined>, undefined>;
286
339
  }, undefined>;
287
340
  export type PublicDecisionList = v.InferOutput<typeof publicDecisionListSchema>;
@@ -344,4 +397,15 @@ export declare const publicResolveJudgeSchema: v.ObjectSchema<{
344
397
  readonly feedback: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MaxLengthAction<string, 4000, undefined>]>, undefined>, undefined>;
345
398
  }, undefined>;
346
399
  export type PublicResolveJudgeInput = v.InferOutput<typeof publicResolveJudgeSchema>;
400
+ /**
401
+ * Resolve a run parked on the PRE-TOKEN INPUT GATE from a headless caller. Identical to the
402
+ * SPA's {@link resolveInputGateSchema} — both surfaces drive the SAME service method, so there
403
+ * is nothing to narrow: `recheck` re-evaluates the task as it now stands (which is what actually
404
+ * clears the park, so an integration fixes the task over `PATCH /api/v1/tasks/:taskId` first),
405
+ * and `proceed` waives the findings and records who did it.
406
+ */
407
+ export declare const publicResolveInputGateSchema: v.ObjectSchema<{
408
+ readonly choice: v.PicklistSchema<["recheck", "proceed"], undefined>;
409
+ }, undefined>;
410
+ export type PublicResolveInputGateInput = v.InferOutput<typeof publicResolveInputGateSchema>;
347
411
  //# sourceMappingURL=public-decisions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-decisions.d.ts","sourceRoot":"","sources":["../src/public-decisions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-decisions.d.ts","sourceRoot":"","sources":["../src/public-decisions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import * as v from 'valibot';
2
2
  import { forkDecisionStatusSchema, forkOptionSchema } from './forkDecision.js';
3
+ import { inputGateIssueSchema, inputGateModeSchema, inputGateStatusSchema, resolveInputGateSchema, } from './input-gate.js';
3
4
  import { judgeStatusSchema, judgeVerdictSchema, resolveJudgeSchema } from './judge.js';
4
5
  import { publicRunStatusSchema } from './public-api.js';
5
6
  import { requirementReviewStatusSchema, reviewItemCategorySchema, reviewItemSeveritySchema, reviewItemStatusSchema, } from './requirements.js';
@@ -12,11 +13,12 @@ import { requirementReviewStatusSchema, reviewItemCategorySchema, reviewItemSeve
12
13
  // the SPA, so a headless (`/api/v1`) run could not include clarification at all — the public
13
14
  // surface refused any pipeline that could park.
14
15
  //
15
- // These resources are the external counterpart of that loop. Two decision kinds are exposed today:
16
- // the requirements review (findings + the iteration loop) and the implementation-fork choice. Both
17
- // are deliberately SMALL projections of the internal entities, following the `publicTask` /
18
- // `publicService` pattern: a caller sees the findings and their stable ids, never the engine's
19
- // step/approval internals, the recommendation machinery, or the reviewer's model plumbing.
16
+ // These resources are the external counterpart of that loop. Four decision kinds are exposed
17
+ // today: the requirements review (findings + the iteration loop), the implementation-fork choice,
18
+ // a parked judge verdict, and the pre-token input gate. Each is deliberately a SMALL projection of
19
+ // the internal entity, following the `publicTask` / `publicService` pattern: a caller sees the
20
+ // findings and their stable ids, never the engine's step/approval internals, the recommendation
21
+ // machinery, or the reviewer's model plumbing.
20
22
  //
21
23
  // Answering rides the SAME service methods the SPA controllers call, so the park's CAS/approval-id
22
24
  // arbitration and the task's merge-preset knobs (iteration cap, tolerated severity) apply
@@ -24,7 +26,12 @@ import { requirementReviewStatusSchema, reviewItemCategorySchema, reviewItemSeve
24
26
  // `docs/initiatives/headless-clarification-loop.md`.
25
27
  // ---------------------------------------------------------------------------
26
28
  /** Which parked decision a `publicDecision` entry describes. */
27
- export const publicDecisionKindSchema = v.picklist(['requirements-review', 'fork', 'judge']);
29
+ export const publicDecisionKindSchema = v.picklist([
30
+ 'requirements-review',
31
+ 'fork',
32
+ 'judge',
33
+ 'input-gate',
34
+ ]);
28
35
  /**
29
36
  * One reviewer finding as exposed externally — the question, how serious it is, and where it
30
37
  * stands. `itemId` is the STABLE anchor a reply addresses (and, in slice 2, the id rendered into
@@ -114,10 +121,34 @@ export const publicJudgeDecisionSchema = v.object({
114
121
  bounces: v.number(),
115
122
  maxBounces: v.number(),
116
123
  });
124
+ /**
125
+ * A run parked on the PRE-TOKEN INPUT GATE as exposed externally: the task states nothing an
126
+ * agent could act on, and the run stopped before its first dispatch having spent nothing.
127
+ *
128
+ * This one is exposed for a reason the other three do not have. The gate parks on the shape of
129
+ * the TASK rather than the shape of the pipeline, so it can hold ANY public run, including one
130
+ * whose pipeline carries no park at all; a caller filing title-only tasks would otherwise watch
131
+ * them stop with `GET .../decisions` reporting `parked: true` and nothing to answer, and
132
+ * `POST /api/v1/jobs/:id/cancel` as the only way out. The findings are the same closed codes the
133
+ * SPA renders, so an integration can map them to its own copy or hand them back to whoever filed
134
+ * the ticket.
135
+ */
136
+ export const publicInputGateDecisionSchema = v.object({
137
+ kind: v.literal('input-gate'),
138
+ /** The disposition; only `blocked` accepts an answer. */
139
+ status: inputGateStatusSchema,
140
+ /** The workspace mode the evaluation ran under, so a verdict explains its own severities. */
141
+ mode: inputGateModeSchema,
142
+ /** Every finding, blocking and advisory alike, in a stable order. */
143
+ issues: v.array(inputGateIssueSchema),
144
+ /** Epoch ms of the evaluation that produced this verdict. */
145
+ checkedAt: v.number(),
146
+ });
117
147
  export const publicDecisionSchema = v.variant('kind', [
118
148
  publicRequirementsDecisionSchema,
119
149
  publicForkDecisionSchema,
120
150
  publicJudgeDecisionSchema,
151
+ publicInputGateDecisionSchema,
121
152
  ]);
122
153
  /**
123
154
  * A run's currently-parked decisions. `parked` is the single flag a caller polls or reacts to:
@@ -180,4 +211,12 @@ export const publicChooseForkSchema = v.pipe(v.object({
180
211
  * nothing to narrow: `proceed` / `bounce` / `stop` mean exactly the same thing either way.
181
212
  */
182
213
  export const publicResolveJudgeSchema = resolveJudgeSchema;
214
+ /**
215
+ * Resolve a run parked on the PRE-TOKEN INPUT GATE from a headless caller. Identical to the
216
+ * SPA's {@link resolveInputGateSchema} — both surfaces drive the SAME service method, so there
217
+ * is nothing to narrow: `recheck` re-evaluates the task as it now stands (which is what actually
218
+ * clears the park, so an integration fixes the task over `PATCH /api/v1/tasks/:taskId` first),
219
+ * and `proceed` waives the findings and records who did it.
220
+ */
221
+ export const publicResolveInputGateSchema = resolveInputGateSchema;
183
222
  //# sourceMappingURL=public-decisions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-decisions.js","sourceRoot":"","sources":["../src/public-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAC9E,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EACL,6BAA6B,EAC7B,wBAAwB,EACxB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,mBAAmB,CAAA;AAE1B,8EAA8E;AAC9E,kGAAkG;AAClG,EAAE;AACF,8FAA8F;AAC9F,kGAAkG;AAClG,kGAAkG;AAClG,6FAA6F;AAC7F,gDAAgD;AAChD,EAAE;AACF,mGAAmG;AACnG,mGAAmG;AACnG,4FAA4F;AAC5F,+FAA+F;AAC/F,2FAA2F;AAC3F,EAAE;AACF,mGAAmG;AACnG,0FAA0F;AAC1F,mDAAmD;AACnD,qDAAqD;AACrD,8EAA8E;AAE9E,gEAAgE;AAChE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,qBAAqB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAG5F;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,6FAA6F;IAC7F,QAAQ,EAAE,wBAAwB;IAClC,oEAAoE;IACpE,QAAQ,EAAE,wBAAwB;IAClC,qCAAqC;IACrC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,2DAA2D;IAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,oFAAoF;IACpF,MAAM,EAAE,sBAAsB;IAC9B,qDAAqD;IACrD,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAC9B,CAAC,CAAA;AAGF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC;IACtC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,4CAA4C;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,MAAM,EAAE,6BAA6B;IACrC,6DAA6D;IAC7D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,8DAA8D;IAC9D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC;IAC5C;;;;OAIG;IACH,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CACjD,CAAC,CAAA;AAGF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,wFAAwF;IACxF,MAAM,EAAE,wBAAwB;IAChC,gFAAgF;IAChF,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,kFAAkF;IAClF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;CACjC,CAAC,CAAA;AAGF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,8EAA8E;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,iBAAiB;IACzB,kFAAkF;IAClF,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAChC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,yEAAyE;IACzE,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,qEAAqE;IACrE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACvC,gGAAgG;IAChG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAA;AAGF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE;IACpD,gCAAgC;IAChC,wBAAwB;IACxB,yBAAyB;CAC1B,CAAC,CAAA;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,4DAA4D;IAC5D,MAAM,EAAE,qBAAqB;IAC7B,qEAAqE;IACrE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;CACzC,CAAC,CAAA;AAGF,8EAA8E;AAE9E,qFAAqF;AACrF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;CACvE,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;CAC1C,CAAC,CAAA;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;CACtE,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;CAC7D,CAAC,CAAA;AAGF;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI,CAC1C,CAAC,CAAC,MAAM,CAAC;IACP,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAC9E,CAAC,EACF,CAAC,CAAC,KAAK,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAC9F,0CAA0C,CAC3C,CACF,CAAA;AAGD;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,kBAAkB,CAAA"}
1
+ {"version":3,"file":"public-decisions.js","sourceRoot":"","sources":["../src/public-decisions.ts"],"names":[],"mappings":"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"}
@@ -1079,6 +1079,17 @@ export declare const retryAgentRunContract: {
1079
1079
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1080
1080
  }, undefined>, undefined>;
1081
1081
  }, undefined>, undefined>;
1082
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
1083
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
1084
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
1085
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
1086
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
1087
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
1088
+ }, undefined>, undefined>;
1089
+ readonly checkedAt: v.NumberSchema<undefined>;
1090
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1091
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1092
+ }, undefined>, undefined>;
1082
1093
  }, undefined>, v.ObjectSchema<{
1083
1094
  readonly id: v.StringSchema<undefined>;
1084
1095
  readonly workspaceId: v.StringSchema<undefined>;
@@ -2205,6 +2216,17 @@ export declare const stopAgentRunContract: {
2205
2216
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
2206
2217
  }, undefined>, undefined>;
2207
2218
  }, undefined>, undefined>;
2219
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
2220
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
2221
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
2222
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
2223
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
2224
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
2225
+ }, undefined>, undefined>;
2226
+ readonly checkedAt: v.NumberSchema<undefined>;
2227
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2228
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
2229
+ }, undefined>, undefined>;
2208
2230
  }, undefined>, v.ObjectSchema<{
2209
2231
  readonly id: v.StringSchema<undefined>;
2210
2232
  readonly workspaceId: v.StringSchema<undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runs.d.ts","sourceRoot":"","sources":["../../src/routes/agent-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM/B,CAAA"}
1
+ {"version":3,"file":"agent-runs.d.ts","sourceRoot":"","sources":["../../src/routes/agent-runs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAqB,MAAM,yBAAyB,CAAA;AAC3E,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAsB5B,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMhC,CAAA;AAEF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM/B,CAAA"}
@@ -1394,6 +1394,17 @@ declare const adoptBugHuntResultSchema: v.ObjectSchema<{
1394
1394
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1395
1395
  }, undefined>, undefined>;
1396
1396
  }, undefined>, undefined>;
1397
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
1398
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
1399
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
1400
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
1401
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
1402
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
1403
+ }, undefined>, undefined>;
1404
+ readonly checkedAt: v.NumberSchema<undefined>;
1405
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1406
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1407
+ }, undefined>, undefined>;
1397
1408
  }, undefined>;
1398
1409
  }, undefined>;
1399
1410
  export type AdoptBugHuntResult = v.InferOutput<typeof adoptBugHuntResultSchema>;
@@ -2937,6 +2948,17 @@ export declare const adoptBugHuntCandidateContract: {
2937
2948
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
2938
2949
  }, undefined>, undefined>;
2939
2950
  }, undefined>, undefined>;
2951
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
2952
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
2953
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
2954
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
2955
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
2956
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
2957
+ }, undefined>, undefined>;
2958
+ readonly checkedAt: v.NumberSchema<undefined>;
2959
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2960
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
2961
+ }, undefined>, undefined>;
2940
2962
  }, undefined>;
2941
2963
  }, undefined>;
2942
2964
  };
@@ -1 +1 @@
1
- {"version":3,"file":"bug-hunt.d.ts","sourceRoot":"","sources":["../../src/routes/bug-hunt.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMxC,CAAA"}
1
+ {"version":3,"file":"bug-hunt.d.ts","sourceRoot":"","sources":["../../src/routes/bug-hunt.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAe5B,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAI5B,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKpC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM7B,CAAA;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMxC,CAAA"}
@@ -1039,6 +1039,17 @@ export declare const startExecutionContract: {
1039
1039
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
1040
1040
  }, undefined>, undefined>;
1041
1041
  }, undefined>, undefined>;
1042
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
1043
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
1044
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
1045
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
1046
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
1047
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
1048
+ }, undefined>, undefined>;
1049
+ readonly checkedAt: v.NumberSchema<undefined>;
1050
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1051
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
1052
+ }, undefined>, undefined>;
1042
1053
  }, undefined>;
1043
1054
  };
1044
1055
  };
@@ -2919,6 +2930,17 @@ export declare const resumeSpendContract: {
2919
2930
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
2920
2931
  }, undefined>, undefined>;
2921
2932
  }, undefined>, undefined>;
2933
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
2934
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
2935
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
2936
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
2937
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
2938
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
2939
+ }, undefined>, undefined>;
2940
+ readonly checkedAt: v.NumberSchema<undefined>;
2941
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2942
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
2943
+ }, undefined>, undefined>;
2922
2944
  }, undefined>, undefined>;
2923
2945
  };
2924
2946
  };
@@ -4283,6 +4305,17 @@ export declare const resolveDecisionContract: {
4283
4305
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
4284
4306
  }, undefined>, undefined>;
4285
4307
  }, undefined>, undefined>;
4308
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
4309
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
4310
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
4311
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
4312
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
4313
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
4314
+ }, undefined>, undefined>;
4315
+ readonly checkedAt: v.NumberSchema<undefined>;
4316
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
4317
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
4318
+ }, undefined>, undefined>;
4286
4319
  }, undefined>;
4287
4320
  };
4288
4321
  };
@@ -5326,6 +5359,17 @@ export declare const approveStepContract: {
5326
5359
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
5327
5360
  }, undefined>, undefined>;
5328
5361
  }, undefined>, undefined>;
5362
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
5363
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
5364
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
5365
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
5366
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
5367
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
5368
+ }, undefined>, undefined>;
5369
+ readonly checkedAt: v.NumberSchema<undefined>;
5370
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
5371
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
5372
+ }, undefined>, undefined>;
5329
5373
  }, undefined>;
5330
5374
  };
5331
5375
  };
@@ -6383,6 +6427,17 @@ export declare const requestStepChangesContract: {
6383
6427
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
6384
6428
  }, undefined>, undefined>;
6385
6429
  }, undefined>, undefined>;
6430
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
6431
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
6432
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
6433
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
6434
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
6435
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
6436
+ }, undefined>, undefined>;
6437
+ readonly checkedAt: v.NumberSchema<undefined>;
6438
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
6439
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
6440
+ }, undefined>, undefined>;
6386
6441
  }, undefined>;
6387
6442
  };
6388
6443
  };
@@ -7426,6 +7481,17 @@ export declare const resolveStepExceededContract: {
7426
7481
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
7427
7482
  }, undefined>, undefined>;
7428
7483
  }, undefined>, undefined>;
7484
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
7485
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
7486
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
7487
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
7488
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
7489
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
7490
+ }, undefined>, undefined>;
7491
+ readonly checkedAt: v.NumberSchema<undefined>;
7492
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
7493
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
7494
+ }, undefined>, undefined>;
7429
7495
  }, undefined>;
7430
7496
  };
7431
7497
  };
@@ -8467,6 +8533,17 @@ export declare const restartExecutionContract: {
8467
8533
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
8468
8534
  }, undefined>, undefined>;
8469
8535
  }, undefined>, undefined>;
8536
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
8537
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
8538
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
8539
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
8540
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
8541
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
8542
+ }, undefined>, undefined>;
8543
+ readonly checkedAt: v.NumberSchema<undefined>;
8544
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
8545
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
8546
+ }, undefined>, undefined>;
8470
8547
  }, undefined>;
8471
8548
  };
8472
8549
  };
@@ -9510,6 +9587,17 @@ export declare const rejectStepContract: {
9510
9587
  readonly platform: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
9511
9588
  }, undefined>, undefined>;
9512
9589
  }, undefined>, undefined>;
9590
+ readonly inputGate: v.OptionalSchema<v.ObjectSchema<{
9591
+ readonly status: v.PicklistSchema<["off", "not_applicable", "passed", "blocked", "overridden"], undefined>;
9592
+ readonly mode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
9593
+ readonly issues: v.ArraySchema<v.ObjectSchema<{
9594
+ readonly code: v.PicklistSchema<readonly ["description_missing", "description_placeholder", "description_thin", "reproduction_missing", "review_target_missing", "success_criteria_missing"], undefined>;
9595
+ readonly severity: v.PicklistSchema<["blocking", "advisory"], undefined>;
9596
+ }, undefined>, undefined>;
9597
+ readonly checkedAt: v.NumberSchema<undefined>;
9598
+ readonly overriddenBy: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
9599
+ readonly overriddenAt: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
9600
+ }, undefined>, undefined>;
9513
9601
  }, undefined>;
9514
9602
  };
9515
9603
  };