@cat-factory/contracts 0.239.0 → 0.241.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.
- package/dist/agent-presentation.d.ts +16 -0
- package/dist/agent-presentation.d.ts.map +1 -1
- package/dist/agent-presentation.js +16 -0
- package/dist/agent-presentation.js.map +1 -1
- package/dist/debug-api.d.ts +1 -1
- package/dist/entities.d.ts +32 -0
- package/dist/entities.d.ts.map +1 -1
- package/dist/entities.js +10 -0
- package/dist/entities.js.map +1 -1
- package/dist/environments.d.ts +26 -0
- package/dist/environments.d.ts.map +1 -1
- package/dist/environments.js +30 -0
- package/dist/environments.js.map +1 -1
- package/dist/execution.d.ts +172 -1
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +49 -1
- package/dist/execution.js.map +1 -1
- package/dist/form-fields.d.ts +44 -0
- package/dist/form-fields.d.ts.map +1 -1
- package/dist/form-fields.js +46 -0
- package/dist/form-fields.js.map +1 -1
- package/dist/gate-approval.d.ts +66 -0
- package/dist/gate-approval.d.ts.map +1 -0
- package/dist/gate-approval.js +67 -0
- package/dist/gate-approval.js.map +1 -0
- package/dist/gate-config.d.ts +134 -0
- package/dist/gate-config.d.ts.map +1 -0
- package/dist/gate-config.js +134 -0
- package/dist/gate-config.js.map +1 -0
- package/dist/gate.d.ts +10 -0
- package/dist/gate.d.ts.map +1 -1
- package/dist/gate.js +11 -0
- package/dist/gate.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/initiative-preset.d.ts +4 -0
- package/dist/initiative-preset.d.ts.map +1 -1
- package/dist/input-gate.d.ts +38 -5
- package/dist/input-gate.d.ts.map +1 -1
- package/dist/input-gate.js +27 -1
- package/dist/input-gate.js.map +1 -1
- package/dist/pr-report.d.ts +39 -3
- package/dist/pr-report.d.ts.map +1 -1
- package/dist/pr-report.js +20 -2
- package/dist/pr-report.js.map +1 -1
- package/dist/provisioning-logs.d.ts +13 -5
- package/dist/provisioning-logs.d.ts.map +1 -1
- package/dist/provisioning-logs.js +11 -2
- package/dist/provisioning-logs.js.map +1 -1
- package/dist/public-decisions.d.ts +72 -3
- package/dist/public-decisions.d.ts.map +1 -1
- package/dist/public-decisions.js +19 -0
- package/dist/public-decisions.js.map +1 -1
- package/dist/requests.d.ts +37 -4
- package/dist/requests.d.ts.map +1 -1
- package/dist/requests.js +12 -0
- package/dist/requests.js.map +1 -1
- package/dist/routes/agent-runs.d.ts +62 -2
- package/dist/routes/agent-runs.d.ts.map +1 -1
- package/dist/routes/board.d.ts +21 -4
- package/dist/routes/board.d.ts.map +1 -1
- package/dist/routes/bug-hunt.d.ts +62 -2
- package/dist/routes/bug-hunt.d.ts.map +1 -1
- package/dist/routes/debug-api.d.ts +1 -1
- package/dist/routes/execution.d.ts +248 -8
- package/dist/routes/execution.d.ts.map +1 -1
- package/dist/routes/human-review.d.ts +31 -1
- package/dist/routes/human-review.d.ts.map +1 -1
- package/dist/routes/human-test.d.ts +155 -5
- package/dist/routes/human-test.d.ts.map +1 -1
- package/dist/routes/input-gate.d.ts +5 -1
- package/dist/routes/input-gate.d.ts.map +1 -1
- package/dist/routes/pipelines.d.ts +64 -0
- package/dist/routes/pipelines.d.ts.map +1 -1
- package/dist/routes/provisioning-logs.d.ts +1 -1
- package/dist/routes/public-decisions.d.ts +238 -34
- package/dist/routes/public-decisions.d.ts.map +1 -1
- package/dist/routes/visual-confirm.d.ts +93 -3
- package/dist/routes/visual-confirm.d.ts.map +1 -1
- package/dist/routes/workspaces.d.ts +138 -2
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/snapshot.d.ts +78 -1
- package/dist/snapshot.d.ts.map +1 -1
- package/dist/snapshot.js +11 -0
- package/dist/snapshot.js.map +1 -1
- package/dist/step-decisions.d.ts +27 -0
- package/dist/step-decisions.d.ts.map +1 -1
- package/dist/step-decisions.js +24 -2
- package/dist/step-decisions.js.map +1 -1
- package/dist/task-types.d.ts +4 -0
- package/dist/task-types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/step-decisions.d.ts
CHANGED
|
@@ -125,6 +125,33 @@ export declare const stepApprovalSchema: v.ObjectSchema<{
|
|
|
125
125
|
/** The reviewer's note on this block / item. */
|
|
126
126
|
readonly body: v.StringSchema<undefined>;
|
|
127
127
|
}, undefined>, undefined>, undefined>;
|
|
128
|
+
/**
|
|
129
|
+
* How many distinct approvals this gate needs before the run advances, SNAPSHOTTED from the
|
|
130
|
+
* step's `stepOptions.gateConfig.minApprovals` when the gate was raised. Absent ⇒ 1.
|
|
131
|
+
*
|
|
132
|
+
* Snapshotted rather than re-read on each approval for the reason a run's merge role is pinned
|
|
133
|
+
* at admission: the pipeline definition is editable while a run is parked on it, and a bar that
|
|
134
|
+
* moved under the people already counted toward it is a bar nobody agreed to.
|
|
135
|
+
*/
|
|
136
|
+
readonly requiredApprovals: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
137
|
+
/**
|
|
138
|
+
* Who may resolve this gate, snapshotted alongside {@link requiredApprovals}. Absent ⇒ anyone
|
|
139
|
+
* the workspace RBAC gate admits to write. See {@link gateApproverPolicySchema}.
|
|
140
|
+
*/
|
|
141
|
+
readonly approverPolicy: v.OptionalSchema<v.ObjectSchema<{
|
|
142
|
+
readonly roles: v.OptionalSchema<v.ArraySchema<v.PicklistSchema<readonly ["admin", "member", "viewer"], undefined>, undefined>, undefined>;
|
|
143
|
+
readonly userIds: v.OptionalSchema<v.ArraySchema<v.StringSchema<undefined>, undefined>, undefined>;
|
|
144
|
+
}, undefined>, undefined>;
|
|
145
|
+
/**
|
|
146
|
+
* The approvals recorded so far, one per distinct identity, oldest first. Reaching
|
|
147
|
+
* {@link requiredApprovals} entries is what flips `status` to `approved`; below it the gate
|
|
148
|
+
* stays `pending` and the run stays parked. Absent/empty on a gate nobody has cleared yet.
|
|
149
|
+
*/
|
|
150
|
+
readonly approvals: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
151
|
+
readonly actorId: v.StringSchema<undefined>;
|
|
152
|
+
readonly actorLabel: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
153
|
+
readonly at: v.NumberSchema<undefined>;
|
|
154
|
+
}, undefined>, undefined>, undefined>;
|
|
128
155
|
}, undefined>;
|
|
129
156
|
export type StepApproval = v.InferOutput<typeof stepApprovalSchema>;
|
|
130
157
|
//# sourceMappingURL=step-decisions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-decisions.d.ts","sourceRoot":"","sources":["../src/step-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"step-decisions.d.ts","sourceRoot":"","sources":["../src/step-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAgB5B;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;aAKzB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAA;AAE3D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB;IAClC;;;;OAIG;;IAEH;;;;;OAKG;;;IAGH;;;;OAIG;;IAEH,gDAAgD;;aAEhD,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB;IACjC,oEAAoE;;IAEpE,uDAAuD;;IAEvD,4CAA4C;;IAE5C,0EAA0E;;aAE1E,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAE3E;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,uFAKnC,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE/E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB;IAC7B,2EAA2E;;IAE3E,gHAAgH;;IAEhH,4EAA4E;;IAE5E,sFAAsF;;IAEtF,kFAAkF;;QApFlF;;;;WAIG;;QAEH;;;;;WAKG;;;QAGH;;;;WAIG;;QAEH,gDAAgD;;;IAkEhD;;;;;;;OAOG;;IAEH;;;OAGG;;;;;IAEH;;;;OAIG;;;;;;aAEH,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
|
package/dist/step-decisions.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
|
+
import { gateApprovalRecordSchema, gateApproverPolicySchema } from './gate-config.js';
|
|
2
3
|
// ---------------------------------------------------------------------------
|
|
3
4
|
// The HUMAN decisions a run's step can be holding: a question an agent raised, the review comments
|
|
4
5
|
// a person or a quality companion left on an output, a companion's stored verdict, and the approval
|
|
@@ -7,8 +8,9 @@ import * as v from 'valibot';
|
|
|
7
8
|
// Split out of `execution.ts` (which keeps the run/step runtime state that COMPOSES these), for the
|
|
8
9
|
// same reason `gate.ts` and `human-verdict-gates.ts` are separate: they are one cohesive cluster,
|
|
9
10
|
// they are what a decision-answering surface reads, and `execution.ts` is at its size budget. Both
|
|
10
|
-
// files are re-exported from the package barrel, so consumers are unaffected. This file depends
|
|
11
|
-
//
|
|
11
|
+
// files are re-exported from the package barrel, so consumers are unaffected. This file depends
|
|
12
|
+
// only on `gate-config.ts` (the per-step gate configuration an approval gate snapshots when it is
|
|
13
|
+
// raised), never on `execution.ts`: that one composes this, not the other way round.
|
|
12
14
|
// ---------------------------------------------------------------------------
|
|
13
15
|
/**
|
|
14
16
|
* A question an agent raised mid-work and would not answer unilaterally. Unlike an approval gate
|
|
@@ -114,5 +116,25 @@ export const stepApprovalSchema = v.object({
|
|
|
114
116
|
feedback: v.optional(v.string()),
|
|
115
117
|
/** When changes were requested, per-block review comments fed into the re-run. */
|
|
116
118
|
comments: v.optional(v.array(stepReviewCommentSchema)),
|
|
119
|
+
/**
|
|
120
|
+
* How many distinct approvals this gate needs before the run advances, SNAPSHOTTED from the
|
|
121
|
+
* step's `stepOptions.gateConfig.minApprovals` when the gate was raised. Absent ⇒ 1.
|
|
122
|
+
*
|
|
123
|
+
* Snapshotted rather than re-read on each approval for the reason a run's merge role is pinned
|
|
124
|
+
* at admission: the pipeline definition is editable while a run is parked on it, and a bar that
|
|
125
|
+
* moved under the people already counted toward it is a bar nobody agreed to.
|
|
126
|
+
*/
|
|
127
|
+
requiredApprovals: v.optional(v.number()),
|
|
128
|
+
/**
|
|
129
|
+
* Who may resolve this gate, snapshotted alongside {@link requiredApprovals}. Absent ⇒ anyone
|
|
130
|
+
* the workspace RBAC gate admits to write. See {@link gateApproverPolicySchema}.
|
|
131
|
+
*/
|
|
132
|
+
approverPolicy: v.optional(gateApproverPolicySchema),
|
|
133
|
+
/**
|
|
134
|
+
* The approvals recorded so far, one per distinct identity, oldest first. Reaching
|
|
135
|
+
* {@link requiredApprovals} entries is what flips `status` to `approved`; below it the gate
|
|
136
|
+
* stays `pending` and the run stays parked. Absent/empty on a gate nobody has cleared yet.
|
|
137
|
+
*/
|
|
138
|
+
approvals: v.optional(v.array(gateApprovalRecordSchema)),
|
|
117
139
|
});
|
|
118
140
|
//# sourceMappingURL=step-decisions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step-decisions.js","sourceRoot":"","sources":["../src/step-decisions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"step-decisions.js","sourceRoot":"","sources":["../src/step-decisions.ts"],"names":[],"mappings":"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"}
|
package/dist/task-types.d.ts
CHANGED
|
@@ -62,6 +62,8 @@ export declare const taskTypeFieldDescriptorSchema: v.ObjectSchema<{
|
|
|
62
62
|
readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
63
63
|
}, undefined>, undefined>;
|
|
64
64
|
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>;
|
|
65
|
+
readonly min: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
66
|
+
readonly max: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
65
67
|
/** The control type; absent is treated as `text`. */
|
|
66
68
|
readonly type: v.OptionalSchema<v.PicklistSchema<["text", "textarea", "number", "select", "checkbox", "checkbox-group", "path"], undefined>, undefined>;
|
|
67
69
|
}, undefined>;
|
|
@@ -111,6 +113,8 @@ export declare const customTaskTypeSchema: v.ObjectSchema<{
|
|
|
111
113
|
readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
112
114
|
}, undefined>, undefined>;
|
|
113
115
|
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>;
|
|
116
|
+
readonly min: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
117
|
+
readonly max: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
|
|
114
118
|
/** The control type; absent is treated as `text`. */
|
|
115
119
|
readonly type: v.OptionalSchema<v.PicklistSchema<["text", "textarea", "number", "select", "checkbox", "checkbox-group", "path"], undefined>, undefined>;
|
|
116
120
|
}, undefined>, undefined>, undefined>;
|
package/dist/task-types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-types.d.ts","sourceRoot":"","sources":["../src/task-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AAkBzB,wGAAwG;AACxG,eAAO,MAAM,0BAA0B;IACrC,oCAAoC;;IAEpC,2CAA2C;;IAE3C,uCAAuC;;IAEvC,iEAAiE;;IAEjE;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF,0GAA0G;AAC1G,eAAO,MAAM,yBAAyB;;;aAA8B,CAAA;AACpE,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAA;AAEvD;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,6GAQlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B
|
|
1
|
+
{"version":3,"file":"task-types.d.ts","sourceRoot":"","sources":["../src/task-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AAkBzB,wGAAwG;AACxG,eAAO,MAAM,0BAA0B;IACrC,oCAAoC;;IAEpC,2CAA2C;;IAE3C,uCAAuC;;IAEvC,iEAAiE;;IAEjE;;;;;OAKG;;aAEH,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAEnF,0GAA0G;AAC1G,eAAO,MAAM,yBAAyB;;;aAA8B,CAAA;AACpE,MAAM,MAAM,mBAAmB,GAAG,qBAAqB,CAAA;AAEvD;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,6GAQlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E;;;;;;;GAOG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;IAExC,qDAAqD;;aAErD,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEzF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;IAC/B,yEAAyE;;IAEzE,6CAA6C;;QAjE7C,oCAAoC;;QAEpC,2CAA2C;;QAE3C,uCAAuC;;QAEvC,iEAAiE;;QAEjE;;;;;WAKG;;;IAsDH,kFAAkF;;;;;;;;;;;;;;;;;;;;;QAflF,qDAAqD;;;IAiBrD;;;;OAIG;;IAEH;;;;;;;;;;;OAWG;;IAEH;;;;OAIG;;aAEH,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
|