@cat-factory/contracts 0.240.0 → 0.242.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 (91) hide show
  1. package/dist/entities.d.ts +32 -0
  2. package/dist/entities.d.ts.map +1 -1
  3. package/dist/entities.js +10 -0
  4. package/dist/entities.js.map +1 -1
  5. package/dist/execution.d.ts +38 -0
  6. package/dist/execution.d.ts.map +1 -1
  7. package/dist/form-fields.d.ts +26 -0
  8. package/dist/form-fields.d.ts.map +1 -1
  9. package/dist/form-fields.js +21 -0
  10. package/dist/form-fields.js.map +1 -1
  11. package/dist/gate-approval.d.ts +66 -0
  12. package/dist/gate-approval.d.ts.map +1 -0
  13. package/dist/gate-approval.js +67 -0
  14. package/dist/gate-approval.js.map +1 -0
  15. package/dist/gate-config.d.ts +134 -0
  16. package/dist/gate-config.d.ts.map +1 -0
  17. package/dist/gate-config.js +134 -0
  18. package/dist/gate-config.js.map +1 -0
  19. package/dist/gate.d.ts +10 -0
  20. package/dist/gate.d.ts.map +1 -1
  21. package/dist/gate.js +11 -0
  22. package/dist/gate.js.map +1 -1
  23. package/dist/index.d.ts +3 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +3 -0
  26. package/dist/index.js.map +1 -1
  27. package/dist/initiative-preset.d.ts +4 -0
  28. package/dist/initiative-preset.d.ts.map +1 -1
  29. package/dist/observability.d.ts +11 -4
  30. package/dist/observability.d.ts.map +1 -1
  31. package/dist/observability.js +11 -4
  32. package/dist/observability.js.map +1 -1
  33. package/dist/pr-report.d.ts +48 -8
  34. package/dist/pr-report.d.ts.map +1 -1
  35. package/dist/pr-report.js +39 -8
  36. package/dist/pr-report.js.map +1 -1
  37. package/dist/public-api-keys.d.ts +67 -0
  38. package/dist/public-api-keys.d.ts.map +1 -1
  39. package/dist/public-api-keys.js +34 -0
  40. package/dist/public-api-keys.js.map +1 -1
  41. package/dist/public-decisions.d.ts +57 -0
  42. package/dist/public-decisions.d.ts.map +1 -1
  43. package/dist/public-decisions.js +19 -0
  44. package/dist/public-decisions.js.map +1 -1
  45. package/dist/public-evidence.d.ts +55 -0
  46. package/dist/public-evidence.d.ts.map +1 -0
  47. package/dist/public-evidence.js +59 -0
  48. package/dist/public-evidence.js.map +1 -0
  49. package/dist/requests.d.ts +16 -0
  50. package/dist/requests.d.ts.map +1 -1
  51. package/dist/routes/agent-runs.d.ts +38 -0
  52. package/dist/routes/agent-runs.d.ts.map +1 -1
  53. package/dist/routes/bug-hunt.d.ts +38 -0
  54. package/dist/routes/bug-hunt.d.ts.map +1 -1
  55. package/dist/routes/execution.d.ts +152 -0
  56. package/dist/routes/execution.d.ts.map +1 -1
  57. package/dist/routes/human-review.d.ts +19 -0
  58. package/dist/routes/human-review.d.ts.map +1 -1
  59. package/dist/routes/human-test.d.ts +95 -0
  60. package/dist/routes/human-test.d.ts.map +1 -1
  61. package/dist/routes/index.d.ts +1 -0
  62. package/dist/routes/index.d.ts.map +1 -1
  63. package/dist/routes/index.js +1 -0
  64. package/dist/routes/index.js.map +1 -1
  65. package/dist/routes/pipelines.d.ts +64 -0
  66. package/dist/routes/pipelines.d.ts.map +1 -1
  67. package/dist/routes/public-api.d.ts +140 -0
  68. package/dist/routes/public-api.d.ts.map +1 -1
  69. package/dist/routes/public-api.js +44 -1
  70. package/dist/routes/public-api.js.map +1 -1
  71. package/dist/routes/public-decisions.d.ts +68 -0
  72. package/dist/routes/public-decisions.d.ts.map +1 -1
  73. package/dist/routes/public-evidence.d.ts +291 -0
  74. package/dist/routes/public-evidence.d.ts.map +1 -0
  75. package/dist/routes/public-evidence.js +42 -0
  76. package/dist/routes/public-evidence.js.map +1 -0
  77. package/dist/routes/visual-confirm.d.ts +57 -0
  78. package/dist/routes/visual-confirm.d.ts.map +1 -1
  79. package/dist/routes/workspaces.d.ts +112 -0
  80. package/dist/routes/workspaces.d.ts.map +1 -1
  81. package/dist/snapshot.d.ts +65 -0
  82. package/dist/snapshot.d.ts.map +1 -1
  83. package/dist/snapshot.js +11 -0
  84. package/dist/snapshot.js.map +1 -1
  85. package/dist/step-decisions.d.ts +27 -0
  86. package/dist/step-decisions.d.ts.map +1 -1
  87. package/dist/step-decisions.js +24 -2
  88. package/dist/step-decisions.js.map +1 -1
  89. package/dist/task-types.d.ts +4 -0
  90. package/dist/task-types.d.ts.map +1 -1
  91. package/package.json +1 -1
@@ -0,0 +1,134 @@
1
+ import * as v from 'valibot';
2
+ /**
3
+ * The most approvals one gate may demand. A bound rather than an open number because the quorum
4
+ * is counted against DISTINCT workspace identities: a pipeline asking for more approvers than a
5
+ * board plausibly has is a run that parks forever, and the author gets told at save time instead
6
+ * of discovering it mid-delivery.
7
+ */
8
+ export declare const MAX_GATE_APPROVALS = 10;
9
+ /**
10
+ * WHO may resolve a step's human approval gate (approve / request changes / reject).
11
+ *
12
+ * Both axes are ADDITIVE — an actor qualifies by holding a listed role OR by being a listed
13
+ * user — because the two express different intents ("any admin" vs "these two people") and a
14
+ * policy routinely wants both. An absent/empty policy means today's behaviour: anyone the
15
+ * workspace RBAC gate already admitted to write (member and above) may resolve the gate.
16
+ *
17
+ * This NARROWS the member tier; it never widens anything. A viewer still cannot resolve a gate
18
+ * (the RBAC write floor refuses the request before this is consulted), and a workspace `admin`
19
+ * is always permitted regardless of what the policy lists — an admin can cancel the run or edit
20
+ * the pipeline outright, so denying them here would buy no safety and would deadlock a run whose
21
+ * named approvers have left the board.
22
+ */
23
+ export declare const gateApproverPolicySchema: v.ObjectSchema<{
24
+ /** Workspace roles whose holders may resolve the gate. Absent/empty ⇒ no role rule. */
25
+ readonly roles: v.OptionalSchema<v.ArraySchema<v.PicklistSchema<readonly ["admin", "member", "viewer"], undefined>, undefined>, undefined>;
26
+ /** Specific workspace members (`usr_*`) who may resolve the gate. Absent/empty ⇒ no user rule. */
27
+ readonly userIds: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
28
+ }, undefined>;
29
+ export type GateApproverPolicy = v.InferOutput<typeof gateApproverPolicySchema>;
30
+ /**
31
+ * A step's gate configuration, stored at `stepOptions[i].gateConfig`.
32
+ *
33
+ * Every field is optional and absent means the shipped default, so a pipeline that configures
34
+ * nothing persists no `gateConfig` at all and behaves exactly as it did before this existed.
35
+ */
36
+ export declare const stepGateConfigSchema: v.ObjectSchema<{
37
+ /**
38
+ * Who may resolve this step's human approval gate. Ignored (and refused at pipeline save) on a
39
+ * step that carries no approval gate — a policy on an ungated step reads as a checkpoint that
40
+ * silently does not exist.
41
+ */
42
+ readonly approvers: v.OptionalSchema<v.ObjectSchema<{
43
+ /** Workspace roles whose holders may resolve the gate. Absent/empty ⇒ no role rule. */
44
+ readonly roles: v.OptionalSchema<v.ArraySchema<v.PicklistSchema<readonly ["admin", "member", "viewer"], undefined>, undefined>, undefined>;
45
+ /** Specific workspace members (`usr_*`) who may resolve the gate. Absent/empty ⇒ no user rule. */
46
+ readonly userIds: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
47
+ }, undefined>, undefined>;
48
+ /**
49
+ * How many DISTINCT permitted approvals the gate needs before the run advances. Absent ⇒ 1
50
+ * (today's behaviour). Each approval is recorded on the gate; a second approval from the same
51
+ * identity replaces the first rather than counting twice.
52
+ *
53
+ * A quorum above 1 needs identities to count, so it is only meaningful on a deployment with
54
+ * authentication enabled: with auth off every caller is the same unattributed actor and the
55
+ * gate would never reach two.
56
+ */
57
+ readonly minApprovals: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 10, undefined>]>, undefined>;
58
+ /**
59
+ * The step's parameters for its own REGISTERED gate kind (a `ci` / `conflicts` /
60
+ * `post-release-health` step, or a deployment's own gate), validated at pipeline save and at
61
+ * run start against the descriptor fields that gate registered. Threaded onto the live gate
62
+ * state, so a gate reads its knobs off the STEP instead of the engine or the workspace merge
63
+ * preset.
64
+ *
65
+ * Refused at save on a step whose kind registers no gate, and on a field the gate does not
66
+ * declare: an unread key is indistinguishable from a typo'd one, and both look to whoever
67
+ * typed them like configuration that took effect.
68
+ */
69
+ readonly fields: v.OptionalSchema<v.RecordSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, v.UnionSchema<[v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, v.MaxLengthAction<string[], 50, undefined>]>, v.BooleanSchema<undefined>, v.NumberSchema<undefined>], undefined>, undefined>, undefined>;
70
+ }, undefined>;
71
+ export type StepGateConfig = v.InferOutput<typeof stepGateConfigSchema>;
72
+ /**
73
+ * A registered gate's own config form, as projected to the SPA on the workspace snapshot: the
74
+ * gate's step `kind` plus the descriptor fields it declared. The pipeline builder renders these
75
+ * through the SAME `DescriptorFields` component every other descriptor form uses, so a
76
+ * deployment's gate gets an authoring form with no frontend change — the "ambient" half of the
77
+ * per-step gate config.
78
+ *
79
+ * Absent from the snapshot when no registered gate declares any fields, so the stock product
80
+ * carries nothing.
81
+ */
82
+ export declare const gateConfigFormSchema: v.ObjectSchema<{
83
+ /** The step `agentKind` this gate is registered for. */
84
+ readonly kind: v.StringSchema<undefined>;
85
+ /** The gate's declared parameters (deployment-authored English labels, rendered verbatim). */
86
+ readonly fields: v.ArraySchema<v.ObjectSchema<{
87
+ readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
88
+ readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
89
+ readonly help: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 300, undefined>]>, undefined>;
90
+ readonly placeholder: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 200, undefined>]>, undefined>;
91
+ readonly required: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
92
+ readonly options: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
93
+ readonly value: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
94
+ readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
95
+ }, undefined>, undefined>, undefined>;
96
+ readonly default: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
97
+ readonly defaultValues: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, v.MaxLengthAction<string[], 50, undefined>]>, undefined>;
98
+ readonly showWhen: v.OptionalSchema<v.ObjectSchema<{
99
+ readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
100
+ readonly equals: v.OptionalSchema<v.UnionSchema<[v.StringSchema<undefined>, v.BooleanSchema<undefined>, v.NumberSchema<undefined>], undefined>, undefined>;
101
+ readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
102
+ }, undefined>, undefined>;
103
+ readonly maxLength: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 2000, undefined>]>, undefined>;
104
+ readonly min: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
105
+ readonly max: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
106
+ readonly type: v.OptionalSchema<v.PicklistSchema<["text", "password", "select", "number", "checkbox", "textarea", "checkbox-group", "path"], undefined>, undefined>;
107
+ }, undefined>, undefined>;
108
+ }, undefined>;
109
+ export type GateConfigForm = v.InferOutput<typeof gateConfigFormSchema>;
110
+ /**
111
+ * One recorded approval on a gate: who cleared it and when. Kept as a list rather than a count
112
+ * so a quorum can be counted against DISTINCT identities (re-clicking approve is idempotent) and
113
+ * so the run detail can name the people who signed off rather than showing an anonymous tally.
114
+ *
115
+ * `actorId` is a `usr_*` id for a signed-in person, the public-API key id for an integration, and
116
+ * {@link UNATTRIBUTED_GATE_ACTOR} on a deployment running with auth disabled — three cases the
117
+ * quorum treats identically (one slot each) and the UI labels differently.
118
+ */
119
+ export declare const gateApprovalRecordSchema: v.ObjectSchema<{
120
+ readonly actorId: v.StringSchema<undefined>;
121
+ /** Display label snapshotted at approval time (login/name, or the key's label). */
122
+ readonly actorLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
123
+ /** Epoch ms the approval was recorded. */
124
+ readonly at: v.NumberSchema<undefined>;
125
+ }, undefined>;
126
+ export type GateApprovalRecord = v.InferOutput<typeof gateApprovalRecordSchema>;
127
+ /**
128
+ * The actor id recorded when a deployment resolves a gate with no workspace identity behind the
129
+ * request (auth disabled). Named rather than an empty string so a reader can tell "nobody was
130
+ * signed in" from "the field was never written", and so every such approval collapses onto ONE
131
+ * quorum slot instead of silently satisfying a multi-approver gate.
132
+ */
133
+ export declare const UNATTRIBUTED_GATE_ACTOR = "unattributed";
134
+ //# sourceMappingURL=gate-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-config.d.ts","sourceRoot":"","sources":["../src/gate-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAiC5B;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,KAAK,CAAA;AAEpC;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB;IACnC,uFAAuF;;IAEvF,kGAAkG;;aAElG,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;IAC/B;;;;OAIG;;QAlBH,uFAAuF;;QAEvF,kGAAkG;;;IAkBlG;;;;;;;;OAQG;;IAIH;;;;;;;;;;OAUG;;aAEH,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;IAC/B,wDAAwD;;IAExD,8FAA8F;;;;;;;;;;;;;;;;;;;;;;;aAE9F,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEvE;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB;;IAEnC,mFAAmF;;IAEnF,0CAA0C;;aAE1C,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,iBAAiB,CAAA"}
@@ -0,0 +1,134 @@
1
+ import * as v from 'valibot';
2
+ import { descriptorFieldSchema, descriptorFieldValuesSchema } from './form-fields.js';
3
+ import { workspaceRoleSchema } from './workspace-members.js';
4
+ // ---------------------------------------------------------------------------
5
+ // PER-STEP GATE CONFIGURATION.
6
+ //
7
+ // A pipeline's human checkpoints were a bare `gates: boolean[]` — the step either paused for
8
+ // "a human" or it did not. There was nowhere to say WHICH humans, HOW MANY of them, or what a
9
+ // registered gate's own knobs should be for THIS step, so every gate's parameters had to be
10
+ // hard-coded in the engine (or lifted into the workspace-wide merge preset, which is the wrong
11
+ // grain: a preset is per task, a gate is per step).
12
+ //
13
+ // This module is the config that rides beside the flag, on the extensible `StepOptions` bag
14
+ // (`stepOptions[i].gateConfig`), so it needs no column and no migration. It carries two
15
+ // deliberately different halves:
16
+ //
17
+ // - The PLATFORM-ENFORCED half ({@link gateApproverPolicySchema} + `minApprovals`). Who may
18
+ // resolve the step's human approval gate, and how many distinct approvals advance the run.
19
+ // Typed here rather than left opaque because the BACKEND enforces it and the SPA renders
20
+ // it: both have to agree about what an approver set means.
21
+ // - The GATE-DECLARED half (`fields`). A bag validated against the descriptor form the gate
22
+ // itself registered (`GateRegistry.register(kind, factory, { configFields })`), so a
23
+ // deployment's own gate carries its own parameters without the platform learning them.
24
+ // This is the "ambient" part: the authoring form, the validation and the runtime all derive
25
+ // from that ONE declaration. It rides the repo's existing descriptor-form vocabulary
26
+ // (`form-fields.ts`) rather than a gate-only schema language, so a gate's config form is
27
+ // collected, validated, frozen and rendered by exactly the machinery an initiative preset's
28
+ // form and a custom task type's brief already use.
29
+ //
30
+ // Design record: `backend/docs/adr/0038-per-step-gate-config.md`.
31
+ // ---------------------------------------------------------------------------
32
+ /**
33
+ * The most approvals one gate may demand. A bound rather than an open number because the quorum
34
+ * is counted against DISTINCT workspace identities: a pipeline asking for more approvers than a
35
+ * board plausibly has is a run that parks forever, and the author gets told at save time instead
36
+ * of discovering it mid-delivery.
37
+ */
38
+ export const MAX_GATE_APPROVALS = 10;
39
+ /**
40
+ * WHO may resolve a step's human approval gate (approve / request changes / reject).
41
+ *
42
+ * Both axes are ADDITIVE — an actor qualifies by holding a listed role OR by being a listed
43
+ * user — because the two express different intents ("any admin" vs "these two people") and a
44
+ * policy routinely wants both. An absent/empty policy means today's behaviour: anyone the
45
+ * workspace RBAC gate already admitted to write (member and above) may resolve the gate.
46
+ *
47
+ * This NARROWS the member tier; it never widens anything. A viewer still cannot resolve a gate
48
+ * (the RBAC write floor refuses the request before this is consulted), and a workspace `admin`
49
+ * is always permitted regardless of what the policy lists — an admin can cancel the run or edit
50
+ * the pipeline outright, so denying them here would buy no safety and would deadlock a run whose
51
+ * named approvers have left the board.
52
+ */
53
+ export const gateApproverPolicySchema = v.object({
54
+ /** Workspace roles whose holders may resolve the gate. Absent/empty ⇒ no role rule. */
55
+ roles: v.optional(v.array(workspaceRoleSchema)),
56
+ /** Specific workspace members (`usr_*`) who may resolve the gate. Absent/empty ⇒ no user rule. */
57
+ userIds: v.optional(v.array(v.string())),
58
+ });
59
+ /**
60
+ * A step's gate configuration, stored at `stepOptions[i].gateConfig`.
61
+ *
62
+ * Every field is optional and absent means the shipped default, so a pipeline that configures
63
+ * nothing persists no `gateConfig` at all and behaves exactly as it did before this existed.
64
+ */
65
+ export const stepGateConfigSchema = v.object({
66
+ /**
67
+ * Who may resolve this step's human approval gate. Ignored (and refused at pipeline save) on a
68
+ * step that carries no approval gate — a policy on an ungated step reads as a checkpoint that
69
+ * silently does not exist.
70
+ */
71
+ approvers: v.optional(gateApproverPolicySchema),
72
+ /**
73
+ * How many DISTINCT permitted approvals the gate needs before the run advances. Absent ⇒ 1
74
+ * (today's behaviour). Each approval is recorded on the gate; a second approval from the same
75
+ * identity replaces the first rather than counting twice.
76
+ *
77
+ * A quorum above 1 needs identities to count, so it is only meaningful on a deployment with
78
+ * authentication enabled: with auth off every caller is the same unattributed actor and the
79
+ * gate would never reach two.
80
+ */
81
+ minApprovals: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(MAX_GATE_APPROVALS))),
82
+ /**
83
+ * The step's parameters for its own REGISTERED gate kind (a `ci` / `conflicts` /
84
+ * `post-release-health` step, or a deployment's own gate), validated at pipeline save and at
85
+ * run start against the descriptor fields that gate registered. Threaded onto the live gate
86
+ * state, so a gate reads its knobs off the STEP instead of the engine or the workspace merge
87
+ * preset.
88
+ *
89
+ * Refused at save on a step whose kind registers no gate, and on a field the gate does not
90
+ * declare: an unread key is indistinguishable from a typo'd one, and both look to whoever
91
+ * typed them like configuration that took effect.
92
+ */
93
+ fields: v.optional(descriptorFieldValuesSchema),
94
+ });
95
+ /**
96
+ * A registered gate's own config form, as projected to the SPA on the workspace snapshot: the
97
+ * gate's step `kind` plus the descriptor fields it declared. The pipeline builder renders these
98
+ * through the SAME `DescriptorFields` component every other descriptor form uses, so a
99
+ * deployment's gate gets an authoring form with no frontend change — the "ambient" half of the
100
+ * per-step gate config.
101
+ *
102
+ * Absent from the snapshot when no registered gate declares any fields, so the stock product
103
+ * carries nothing.
104
+ */
105
+ export const gateConfigFormSchema = v.object({
106
+ /** The step `agentKind` this gate is registered for. */
107
+ kind: v.string(),
108
+ /** The gate's declared parameters (deployment-authored English labels, rendered verbatim). */
109
+ fields: v.array(descriptorFieldSchema),
110
+ });
111
+ /**
112
+ * One recorded approval on a gate: who cleared it and when. Kept as a list rather than a count
113
+ * so a quorum can be counted against DISTINCT identities (re-clicking approve is idempotent) and
114
+ * so the run detail can name the people who signed off rather than showing an anonymous tally.
115
+ *
116
+ * `actorId` is a `usr_*` id for a signed-in person, the public-API key id for an integration, and
117
+ * {@link UNATTRIBUTED_GATE_ACTOR} on a deployment running with auth disabled — three cases the
118
+ * quorum treats identically (one slot each) and the UI labels differently.
119
+ */
120
+ export const gateApprovalRecordSchema = v.object({
121
+ actorId: v.string(),
122
+ /** Display label snapshotted at approval time (login/name, or the key's label). */
123
+ actorLabel: v.optional(v.string()),
124
+ /** Epoch ms the approval was recorded. */
125
+ at: v.number(),
126
+ });
127
+ /**
128
+ * The actor id recorded when a deployment resolves a gate with no workspace identity behind the
129
+ * request (auth disabled). Named rather than an empty string so a reader can tell "nobody was
130
+ * signed in" from "the field was never written", and so every such approval collapses onto ONE
131
+ * quorum slot instead of silently satisfying a multi-approver gate.
132
+ */
133
+ export const UNATTRIBUTED_GATE_ACTOR = 'unattributed';
134
+ //# sourceMappingURL=gate-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-config.js","sourceRoot":"","sources":["../src/gate-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAA;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAE5D,8EAA8E;AAC9E,+BAA+B;AAC/B,EAAE;AACF,6FAA6F;AAC7F,8FAA8F;AAC9F,4FAA4F;AAC5F,+FAA+F;AAC/F,oDAAoD;AACpD,EAAE;AACF,4FAA4F;AAC5F,wFAAwF;AACxF,iCAAiC;AACjC,EAAE;AACF,8FAA8F;AAC9F,+FAA+F;AAC/F,6FAA6F;AAC7F,+DAA+D;AAC/D,8FAA8F;AAC9F,yFAAyF;AACzF,2FAA2F;AAC3F,gGAAgG;AAChG,yFAAyF;AACzF,6FAA6F;AAC7F,gGAAgG;AAChG,uDAAuD;AACvD,EAAE;AACF,kEAAkE;AAClE,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAA;AAEpC;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,uFAAuF;IACvF,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC/C,kGAAkG;IAClG,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;CACzC,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C;;;;OAIG;IACH,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAC/C;;;;;;;;OAQG;IACH,YAAY,EAAE,CAAC,CAAC,QAAQ,CACtB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAC/E;IACD;;;;;;;;;;OAUG;IACH,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CAChD,CAAC,CAAA;AAGF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,wDAAwD;IACxD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,8FAA8F;IAC9F,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;CACvC,CAAC,CAAA;AAGF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,mFAAmF;IACnF,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,0CAA0C;IAC1C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;CACf,CAAC,CAAA;AAGF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAA"}
package/dist/gate.d.ts CHANGED
@@ -114,6 +114,16 @@ export declare const gateStepStateSchema: v.ObjectSchema<{
114
114
  * (failing → a helper is fixing) vs idle-passing. Set on every probe.
115
115
  */
116
116
  readonly lastVerdict: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["pass", "pending", "fail"], undefined>, undefined>, undefined>;
117
+ /**
118
+ * The step's own parameters for this gate (`stepOptions.gateConfig.fields`), copied onto the
119
+ * gate state ONCE on first entry alongside `maxAttempts` and validated, before it got here,
120
+ * against the descriptor fields the gate registered. This is how a gate reads a knob off the
121
+ * STEP rather than off the engine or the workspace-wide merge preset: `probe` receives the live
122
+ * gate state, so a registered gate reads `gateState.config` with no new plumbing per parameter.
123
+ *
124
+ * Absent ⇒ the gate's shipped defaults (which for the built-ins means the preset's values).
125
+ */
126
+ readonly config: v.OptionalSchema<v.NullableSchema<v.RecordSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>, v.UnionSchema<[v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>, v.MaxLengthAction<string[], 50, undefined>]>, v.BooleanSchema<undefined>, v.NumberSchema<undefined>], undefined>, undefined>, undefined>, undefined>;
117
127
  /**
118
128
  * Human-readable summary of the latest failing precheck (the failing CI checks /
119
129
  * the conflict reason) — the conclusion detail that used to be fed only to the
@@ -1 +1 @@
1
- {"version":3,"file":"gate.d.ts","sourceRoot":"","sources":["../src/gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAa5B;;;;;;;;;;;GAWG;AACH,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB;;IAEjC,kFAAkF;;IAElF;;;OAGG;;IAEH;;;OAGG;;aAEH,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;IAC5B,yFAAyF;;IAEzF,6CAA6C;;IAE7C;;;;;;OAMG;;IAEH,gEAAgE;;IAEhE;;;;;;;;OAQG;;IAEH;;;;;OAKG;;;QAlDH,kFAAkF;;QAElF;;;WAGG;;QAEH;;;WAGG;;;IA0CH,2FAA2F;;aAE3F,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;IAE9B,kEAAkE;;IAElE,gFAAgF;;IAEhF,gGAAgG;;IAEhG;;;;;OAKG;;IAEH;;;;;OAKG;;;;;;IAUH;;;OAGG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;QAvGH,kFAAkF;;QAElF;;;WAGG;;QAEH;;;WAGG;;;IA+FH;;;;;;OAMG;;IAEH;;;;;;OAMG;;IAEH;;;;;OAKG;;IAEH;;;;;;OAMG;;;;;;;;IAEH;;;;;OAKG;;QAxHH,yFAAyF;;QAEzF,6CAA6C;;QAE7C;;;;;;WAMG;;QAEH,gEAAgE;;QAEhE;;;;;;;;WAQG;;QAEH;;;;;WAKG;;;YAlDH,kFAAkF;;YAElF;;;eAGG;;YAEH;;;eAGG;;;QA0CH,2FAA2F;;;IA4F3F;;;;;OAKG;;IAEH;;;;;;OAMG;;IAEH;;;;OAIG;;IAEH;;;;;;OAMG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;aASH,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"gate.d.ts","sourceRoot":"","sources":["../src/gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAc5B;;;;;;;;;;;GAWG;AACH,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB;;IAEjC,kFAAkF;;IAElF;;;OAGG;;IAEH;;;OAGG;;aAEH,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;IAC5B,yFAAyF;;IAEzF,6CAA6C;;IAE7C;;;;;;OAMG;;IAEH,gEAAgE;;IAEhE;;;;;;;;OAQG;;IAEH;;;;;OAKG;;;QAlDH,kFAAkF;;QAElF;;;WAGG;;QAEH;;;WAGG;;;IA0CH,2FAA2F;;aAE3F,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;IAE9B,kEAAkE;;IAElE,gFAAgF;;IAEhF,gGAAgG;;IAEhG;;;;;OAKG;;IAEH;;;;;OAKG;;;;;;IAUH;;;OAGG;;IAEH;;;;;;;;OAQG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;QAjHH,kFAAkF;;QAElF;;;WAGG;;QAEH;;;WAGG;;;IAyGH;;;;;;OAMG;;IAEH;;;;;;OAMG;;IAEH;;;;;OAKG;;IAEH;;;;;;OAMG;;;;;;;;IAEH;;;;;OAKG;;QAlIH,yFAAyF;;QAEzF,6CAA6C;;QAE7C;;;;;;WAMG;;QAEH,gEAAgE;;QAEhE;;;;;;;;WAQG;;QAEH;;;;;WAKG;;;YAlDH,kFAAkF;;YAElF;;;eAGG;;YAEH;;;eAGG;;;QA0CH,2FAA2F;;;IAsG3F;;;;;OAKG;;IAEH;;;;;;OAMG;;IAEH;;;;OAIG;;IAEH;;;;;;OAMG;;IAEH;;;;;OAKG;;IAEH;;;;OAIG;;;;;aASH,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
package/dist/gate.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as v from 'valibot';
2
+ import { descriptorFieldValuesSchema } from './form-fields.js';
2
3
  import { releaseSignalSchema } from './release.js';
3
4
  // ---------------------------------------------------------------------------
4
5
  // Polling-GATE step state — the live loop state a `ci` / `conflicts` /
@@ -108,6 +109,16 @@ export const gateStepStateSchema = v.object({
108
109
  * (failing → a helper is fixing) vs idle-passing. Set on every probe.
109
110
  */
110
111
  lastVerdict: v.optional(v.nullable(v.picklist(['pass', 'pending', 'fail']))),
112
+ /**
113
+ * The step's own parameters for this gate (`stepOptions.gateConfig.fields`), copied onto the
114
+ * gate state ONCE on first entry alongside `maxAttempts` and validated, before it got here,
115
+ * against the descriptor fields the gate registered. This is how a gate reads a knob off the
116
+ * STEP rather than off the engine or the workspace-wide merge preset: `probe` receives the live
117
+ * gate state, so a registered gate reads `gateState.config` with no new plumbing per parameter.
118
+ *
119
+ * Absent ⇒ the gate's shipped defaults (which for the built-ins means the preset's values).
120
+ */
121
+ config: v.optional(v.nullable(descriptorFieldValuesSchema)),
111
122
  /**
112
123
  * Human-readable summary of the latest failing precheck (the failing CI checks /
113
124
  * the conflict reason) — the conclusion detail that used to be fed only to the
package/dist/gate.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"gate.js","sourceRoot":"","sources":["../src/gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gate.js","sourceRoot":"","sources":["../src/gate.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,6 +5,8 @@ export * from './entities.js';
5
5
  export * from './agent-failure-kinds.js';
6
6
  export * from './execution.js';
7
7
  export * from './step-decisions.js';
8
+ export * from './gate-config.js';
9
+ export * from './gate-approval.js';
8
10
  export * from './run-provenance.js';
9
11
  export * from './input-gate.js';
10
12
  export * from './human-verdict-gates.js';
@@ -103,6 +105,7 @@ export * from './vendor-credentials.js';
103
105
  export * from './api-keys.js';
104
106
  export * from './public-api-keys.js';
105
107
  export * from './public-api.js';
108
+ export * from './public-evidence.js';
106
109
  export * from './debug-api.js';
107
110
  export * from './public-decisions.js';
108
111
  export * from './notification-webhooks.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,6 +5,8 @@ export * from './entities.js';
5
5
  export * from './agent-failure-kinds.js';
6
6
  export * from './execution.js';
7
7
  export * from './step-decisions.js';
8
+ export * from './gate-config.js';
9
+ export * from './gate-approval.js';
8
10
  export * from './run-provenance.js';
9
11
  export * from './input-gate.js';
10
12
  export * from './human-verdict-gates.js';
@@ -103,6 +105,7 @@ export * from './vendor-credentials.js';
103
105
  export * from './api-keys.js';
104
106
  export * from './public-api-keys.js';
105
107
  export * from './public-api.js';
108
+ export * from './public-evidence.js';
106
109
  export * from './debug-api.js';
107
110
  export * from './public-decisions.js';
108
111
  export * from './notification-webhooks.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,8 @@ export declare const initiativePresetFieldSchema: v.ObjectSchema<{
34
34
  readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
35
35
  }, undefined>, undefined>;
36
36
  readonly maxLength: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 2000, undefined>]>, undefined>;
37
+ readonly min: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
38
+ readonly max: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
37
39
  /** Field type; absent is treated as `text`. */
38
40
  readonly type: v.OptionalSchema<v.PicklistSchema<["text", "password", "select", "number", "checkbox", "textarea", "checkbox-group", "path"], undefined>, undefined>;
39
41
  }, undefined>;
@@ -153,6 +155,8 @@ export declare const initiativePresetDescriptorSchema: v.ObjectSchema<{
153
155
  readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
154
156
  }, undefined>, undefined>;
155
157
  readonly maxLength: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 2000, undefined>]>, undefined>;
158
+ readonly min: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
159
+ readonly max: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
156
160
  /** Field type; absent is treated as `text`. */
157
161
  readonly type: v.OptionalSchema<v.PicklistSchema<["text", "password", "select", "number", "checkbox", "textarea", "checkbox-group", "path"], undefined>, undefined>;
158
162
  }, undefined>, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"initiative-preset.d.ts","sourceRoot":"","sources":["../src/initiative-preset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"initiative-preset.d.ts","sourceRoot":"","sources":["../src/initiative-preset.ts"],"names":[],"mappings":"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"}
@@ -603,12 +603,19 @@ export declare const agentToolCallSchema: v.ObjectSchema<{
603
603
  readonly agentKind: v.StringSchema<undefined>;
604
604
  /**
605
605
  * The dispatch (container job) the call was made in. One run's step can dispatch more
606
- * than once (a re-run, a gate's fixer rounds, a Ralph iteration), and {@link seq} is
607
- * only monotonic WITHIN a dispatch, so the trajectory orders by `(jobId, seq)` never
608
- * by `seq` alone, which would interleave two dispatches into one nonsensical sequence.
606
+ * than once (a re-run, a gate's fixer rounds, a Ralph iteration), so this is what
607
+ * narrows a read to ONE of them. It is NOT a sort key: a job id is a string
608
+ * (`<executionId>-<agentKind>`, plus `-<epoch>` past the first dispatch), so ordering by
609
+ * it sorts a run's dispatches by agent-kind spelling and its re-runs `-10` before `-2`.
610
+ * The trajectory orders by `(startedAt, seq, id)` server-side; see the
611
+ * `AgentToolCallRepository.listByExecution` contract in kernel.
609
612
  */
610
613
  readonly jobId: v.StringSchema<undefined>;
611
- /** The call's 0-based ordinal within its dispatch: the trajectory order itself. */
614
+ /**
615
+ * The call's 0-based ordinal within its dispatch. It restarts at zero on every dispatch,
616
+ * so it separates the calls sharing a {@link startedAt} millisecond rather than ordering
617
+ * the run on its own.
618
+ */
612
619
  readonly seq: v.NumberSchema<undefined>;
613
620
  /** The tool the agent invoked (`edit_file`, `bash`, `todo`, …). */
614
621
  readonly tool: v.StringSchema<undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observability.d.ts","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"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"}
@@ -405,12 +405,19 @@ export const agentToolCallSchema = v.object({
405
405
  agentKind: v.string(),
406
406
  /**
407
407
  * The dispatch (container job) the call was made in. One run's step can dispatch more
408
- * than once (a re-run, a gate's fixer rounds, a Ralph iteration), and {@link seq} is
409
- * only monotonic WITHIN a dispatch, so the trajectory orders by `(jobId, seq)` never
410
- * by `seq` alone, which would interleave two dispatches into one nonsensical sequence.
408
+ * than once (a re-run, a gate's fixer rounds, a Ralph iteration), so this is what
409
+ * narrows a read to ONE of them. It is NOT a sort key: a job id is a string
410
+ * (`<executionId>-<agentKind>`, plus `-<epoch>` past the first dispatch), so ordering by
411
+ * it sorts a run's dispatches by agent-kind spelling and its re-runs `-10` before `-2`.
412
+ * The trajectory orders by `(startedAt, seq, id)` server-side; see the
413
+ * `AgentToolCallRepository.listByExecution` contract in kernel.
411
414
  */
412
415
  jobId: v.string(),
413
- /** The call's 0-based ordinal within its dispatch: the trajectory order itself. */
416
+ /**
417
+ * The call's 0-based ordinal within its dispatch. It restarts at zero on every dispatch,
418
+ * so it separates the calls sharing a {@link startedAt} millisecond rather than ordering
419
+ * the run on its own.
420
+ */
414
421
  seq: v.number(),
415
422
  /** The tool the agent invoked (`edit_file`, `bash`, `todo`, …). */
416
423
  tool: v.string(),