@cat-factory/contracts 0.227.0 → 0.230.1
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/entities.d.ts +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +15 -0
- package/dist/errors.js.map +1 -1
- package/dist/execution.d.ts +25 -1
- package/dist/execution.d.ts.map +1 -1
- package/dist/execution.js +16 -1
- package/dist/execution.js.map +1 -1
- package/dist/form-fields.d.ts +203 -0
- package/dist/form-fields.d.ts.map +1 -0
- package/dist/form-fields.js +315 -0
- package/dist/form-fields.js.map +1 -0
- 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 +34 -93
- package/dist/initiative-preset.d.ts.map +1 -1
- package/dist/initiative-preset.js +30 -182
- package/dist/initiative-preset.js.map +1 -1
- package/dist/initiative.d.ts +14 -9
- package/dist/initiative.d.ts.map +1 -1
- package/dist/initiative.js +15 -15
- package/dist/initiative.js.map +1 -1
- package/dist/input-gate.d.ts +115 -0
- package/dist/input-gate.d.ts.map +1 -0
- package/dist/input-gate.js +131 -0
- package/dist/input-gate.js.map +1 -0
- package/dist/merge.d.ts +2 -2
- package/dist/merge.js +2 -2
- package/dist/primitives.d.ts +10 -5
- package/dist/primitives.d.ts.map +1 -1
- package/dist/primitives.js +11 -5
- package/dist/primitives.js.map +1 -1
- package/dist/public-decisions.d.ts +65 -1
- package/dist/public-decisions.d.ts.map +1 -1
- package/dist/public-decisions.js +45 -6
- package/dist/public-decisions.js.map +1 -1
- package/dist/requests.d.ts +1 -1
- package/dist/routes/agent-runs.d.ts +22 -0
- package/dist/routes/agent-runs.d.ts.map +1 -1
- package/dist/routes/board.d.ts +14 -14
- package/dist/routes/bug-hunt.d.ts +24 -2
- package/dist/routes/bug-hunt.d.ts.map +1 -1
- package/dist/routes/execution.d.ts +90 -2
- package/dist/routes/execution.d.ts.map +1 -1
- package/dist/routes/human-review.d.ts +11 -0
- package/dist/routes/human-review.d.ts.map +1 -1
- package/dist/routes/human-test.d.ts +55 -0
- package/dist/routes/human-test.d.ts.map +1 -1
- package/dist/routes/index.d.ts +1 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +1 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/initiative.d.ts +17 -17
- package/dist/routes/input-gate.d.ts +48 -0
- package/dist/routes/input-gate.d.ts.map +1 -0
- package/dist/routes/input-gate.js +24 -0
- package/dist/routes/input-gate.js.map +1 -0
- package/dist/routes/public-decisions.d.ts +193 -0
- package/dist/routes/public-decisions.d.ts.map +1 -1
- package/dist/routes/public-decisions.js +20 -1
- package/dist/routes/public-decisions.js.map +1 -1
- package/dist/routes/tasks.d.ts +3 -3
- package/dist/routes/visual-confirm.d.ts +33 -0
- package/dist/routes/visual-confirm.d.ts.map +1 -1
- package/dist/routes/workspace-settings.d.ts +3 -0
- package/dist/routes/workspace-settings.d.ts.map +1 -1
- package/dist/routes/workspaces.d.ts +70 -26
- package/dist/routes/workspaces.d.ts.map +1 -1
- package/dist/snapshot.d.ts +35 -13
- package/dist/snapshot.d.ts.map +1 -1
- package/dist/task-types.d.ts +69 -28
- package/dist/task-types.d.ts.map +1 -1
- package/dist/task-types.js +50 -25
- package/dist/task-types.js.map +1 -1
- package/dist/workspace-settings.d.ts +13 -0
- package/dist/workspace-settings.d.ts.map +1 -1
- package/dist/workspace-settings.js +14 -0
- package/dist/workspace-settings.js.map +1 -1
- package/package.json +1 -1
package/dist/task-types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
|
+
import { type DescriptorFieldOption } from './form-fields.js';
|
|
2
3
|
/** Card-badge + create-form presentation for a custom task type (mirrors `agentPresentationSchema`). */
|
|
3
4
|
export declare const taskTypePresentationSchema: v.ObjectSchema<{
|
|
4
5
|
/** Human label, e.g. `Incident`. */
|
|
@@ -9,40 +10,60 @@ export declare const taskTypePresentationSchema: v.ObjectSchema<{
|
|
|
9
10
|
readonly color: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 40, undefined>]>;
|
|
10
11
|
/** One-line description shown in the create-task type picker. */
|
|
11
12
|
readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 500, undefined>]>;
|
|
13
|
+
/**
|
|
14
|
+
* Optional grouping caption for the create-task type picker (e.g. `API delivery`), mirroring
|
|
15
|
+
* `agentPresentationSchema.category`, which already drives the pipeline builder's palette. An
|
|
16
|
+
* org registering twenty reusable operations needs the picker to group them; types sharing a
|
|
17
|
+
* category render under one caption, and an uncategorized type renders flat after them.
|
|
18
|
+
*/
|
|
19
|
+
readonly category: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 60, undefined>]>, undefined>;
|
|
12
20
|
}, undefined>;
|
|
13
21
|
export type TaskTypePresentation = v.InferOutput<typeof taskTypePresentationSchema>;
|
|
14
|
-
/** One choice of a `select` {@link
|
|
22
|
+
/** One choice of a `select` / `checkbox-group` field (the shared {@link descriptorFieldOptionSchema}). */
|
|
15
23
|
export declare const taskTypeFieldOptionSchema: v.ObjectSchema<{
|
|
16
24
|
readonly value: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
17
25
|
readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
18
26
|
}, undefined>;
|
|
19
|
-
export type TaskTypeFieldOption =
|
|
27
|
+
export type TaskTypeFieldOption = DescriptorFieldOption;
|
|
20
28
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
29
|
+
* Which of the shared descriptor-form input types a task-type field may declare.
|
|
30
|
+
*
|
|
31
|
+
* Everything the initiative-preset form admits EXCEPT `password`, excluded by construction rather
|
|
32
|
+
* than by convention: a collected task field value is folded into agent prompts, projected onto the
|
|
33
|
+
* board snapshot, and captured in agent-context telemetry, so it is the wrong home for a secret. A
|
|
34
|
+
* capability an operation's agents need credentials for declares them by NAME against the
|
|
35
|
+
* per-workspace capability-credential store, where the value never reaches a prompt.
|
|
36
|
+
*/
|
|
37
|
+
export declare const taskTypeFieldTypeSchema: v.PicklistSchema<["text", "textarea", "number", "select", "checkbox", "checkbox-group", "path"], undefined>;
|
|
38
|
+
export type TaskTypeFieldType = v.InferOutput<typeof taskTypeFieldTypeSchema>;
|
|
39
|
+
/**
|
|
40
|
+
* One data-driven field on a custom task type's create-form: the SHARED descriptor-form vocabulary
|
|
41
|
+
* (`form-fields.ts`, which the initiative-preset form fills too), narrowed to the types above. Its
|
|
42
|
+
* value lands in the sparse `taskTypeFields.custom` bag keyed by `key`, so adding a field never
|
|
43
|
+
* needs a schema migration, and the shared `validateDescriptorFields` /
|
|
44
|
+
* `sanitizeDescriptorFields` / `renderDescriptorFieldValue` rules apply verbatim: one renderer, one
|
|
45
|
+
* validator, one prose projection across both surfaces.
|
|
25
46
|
*/
|
|
26
47
|
export declare const taskTypeFieldDescriptorSchema: v.ObjectSchema<{
|
|
27
|
-
/** Stable key the collected value is stored under in `taskTypeFields.custom`. */
|
|
28
48
|
readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
|
|
29
|
-
/** Human label shown next to the field. */
|
|
30
49
|
readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
31
|
-
/** The control type: free text, multi-line text, a number, or one of {@link options}. */
|
|
32
|
-
readonly type: v.PicklistSchema<["text", "textarea", "number", "select"], undefined>;
|
|
33
|
-
/** One-line helper text shown under the field. */
|
|
34
50
|
readonly help: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 300, undefined>]>, undefined>;
|
|
35
|
-
/** Placeholder shown in an empty `text`/`textarea`/`number` input. */
|
|
36
51
|
readonly placeholder: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 200, undefined>]>, undefined>;
|
|
37
|
-
|
|
52
|
+
readonly required: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
38
53
|
readonly options: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
39
54
|
readonly value: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
40
55
|
readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
41
56
|
}, undefined>, undefined>, undefined>;
|
|
42
|
-
|
|
43
|
-
readonly
|
|
44
|
-
|
|
45
|
-
|
|
57
|
+
readonly default: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
|
|
58
|
+
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>;
|
|
59
|
+
readonly showWhen: v.OptionalSchema<v.ObjectSchema<{
|
|
60
|
+
readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
61
|
+
readonly equals: v.OptionalSchema<v.UnionSchema<[v.StringSchema<undefined>, v.BooleanSchema<undefined>, v.NumberSchema<undefined>], undefined>, undefined>;
|
|
62
|
+
readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
63
|
+
}, undefined>, undefined>;
|
|
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
|
+
/** The control type; absent is treated as `text`. */
|
|
66
|
+
readonly type: v.OptionalSchema<v.PicklistSchema<["text", "textarea", "number", "select", "checkbox", "checkbox-group", "path"], undefined>, undefined>;
|
|
46
67
|
}, undefined>;
|
|
47
68
|
export type TaskTypeFieldDescriptor = v.InferOutput<typeof taskTypeFieldDescriptorSchema>;
|
|
48
69
|
/**
|
|
@@ -63,28 +84,35 @@ export declare const customTaskTypeSchema: v.ObjectSchema<{
|
|
|
63
84
|
readonly color: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 40, undefined>]>;
|
|
64
85
|
/** One-line description shown in the create-task type picker. */
|
|
65
86
|
readonly description: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 500, undefined>]>;
|
|
87
|
+
/**
|
|
88
|
+
* Optional grouping caption for the create-task type picker (e.g. `API delivery`), mirroring
|
|
89
|
+
* `agentPresentationSchema.category`, which already drives the pipeline builder's palette. An
|
|
90
|
+
* org registering twenty reusable operations needs the picker to group them; types sharing a
|
|
91
|
+
* category render under one caption, and an uncategorized type renders flat after them.
|
|
92
|
+
*/
|
|
93
|
+
readonly category: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 60, undefined>]>, undefined>;
|
|
66
94
|
}, undefined>;
|
|
67
95
|
/** Data-driven create-form fields (optional; none ⇒ title + description only). */
|
|
68
96
|
readonly fields: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
69
|
-
/** Stable key the collected value is stored under in `taskTypeFields.custom`. */
|
|
70
97
|
readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 80, undefined>]>;
|
|
71
|
-
/** Human label shown next to the field. */
|
|
72
98
|
readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
73
|
-
/** The control type: free text, multi-line text, a number, or one of {@link options}. */
|
|
74
|
-
readonly type: v.PicklistSchema<["text", "textarea", "number", "select"], undefined>;
|
|
75
|
-
/** One-line helper text shown under the field. */
|
|
76
99
|
readonly help: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 300, undefined>]>, undefined>;
|
|
77
|
-
/** Placeholder shown in an empty `text`/`textarea`/`number` input. */
|
|
78
100
|
readonly placeholder: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 200, undefined>]>, undefined>;
|
|
79
|
-
|
|
101
|
+
readonly required: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
80
102
|
readonly options: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
81
103
|
readonly value: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
82
104
|
readonly label: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 120, undefined>]>;
|
|
83
105
|
}, undefined>, undefined>, undefined>;
|
|
84
|
-
|
|
85
|
-
readonly
|
|
86
|
-
|
|
87
|
-
|
|
106
|
+
readonly default: v.OptionalSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MaxLengthAction<string, 2000, undefined>]>, undefined>;
|
|
107
|
+
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>;
|
|
108
|
+
readonly showWhen: v.OptionalSchema<v.ObjectSchema<{
|
|
109
|
+
readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
|
|
110
|
+
readonly equals: v.OptionalSchema<v.UnionSchema<[v.StringSchema<undefined>, v.BooleanSchema<undefined>, v.NumberSchema<undefined>], undefined>, undefined>;
|
|
111
|
+
readonly includes: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
112
|
+
}, undefined>, undefined>;
|
|
113
|
+
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>;
|
|
114
|
+
/** The control type; absent is treated as `text`. */
|
|
115
|
+
readonly type: v.OptionalSchema<v.PicklistSchema<["text", "textarea", "number", "select", "checkbox", "checkbox-group", "path"], undefined>, undefined>;
|
|
88
116
|
}, undefined>, undefined>, undefined>;
|
|
89
117
|
/**
|
|
90
118
|
* The pipeline a task of this type defaults to when the creator pins none — pairs with a
|
|
@@ -92,6 +120,19 @@ export declare const customTaskTypeSchema: v.ObjectSchema<{
|
|
|
92
120
|
* positional default, exactly like an unmapped built-in type.
|
|
93
121
|
*/
|
|
94
122
|
readonly defaultPipelineId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
123
|
+
/**
|
|
124
|
+
* The STANDING CONTEXT a task of this type carries: best-practice fragment ids unioned onto
|
|
125
|
+
* every new task's own `fragmentIds` at creation, beside whatever it inherits from its service.
|
|
126
|
+
* This is what makes a reusable operation consistent: an org's API guidelines and auth
|
|
127
|
+
* requirements reach every "introduce an API" run without per-task picking.
|
|
128
|
+
*
|
|
129
|
+
* Only the id SET freezes at creation (matching `serviceFragmentIds` semantics); the BODIES
|
|
130
|
+
* live-resolve per run against the merged builtin ⊕ account ⊕ workspace catalog, so editing a
|
|
131
|
+
* guideline reaches every future run of an already-created task. Ids resolve against the
|
|
132
|
+
* universal code pool AND the tenant tiers, which is why boot validation WARNS rather than
|
|
133
|
+
* refuses on an id it cannot see (a workspace-tier id is structurally invisible at boot).
|
|
134
|
+
*/
|
|
135
|
+
readonly defaultFragmentIds: v.OptionalSchema<v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 200, undefined>]>, undefined>, undefined>;
|
|
95
136
|
/**
|
|
96
137
|
* Optional id of a bespoke create-form section component (`<ns>:<name>`) the deployment
|
|
97
138
|
* contributes to the frontend `taskTypeFormPanels` slot, shown INSTEAD of the descriptor
|
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;
|
|
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"}
|
package/dist/task-types.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
|
+
import { descriptorFieldEntries, descriptorFieldOptionSchema, } from './form-fields.js';
|
|
2
3
|
import { namespacedIdSchema } from './primitives.js';
|
|
3
4
|
// ---------------------------------------------------------------------------
|
|
4
5
|
// The wire projection of a CUSTOM (deployment-registered) task type — the frontend analogue
|
|
@@ -24,35 +25,46 @@ export const taskTypePresentationSchema = v.object({
|
|
|
24
25
|
color: v.pipe(v.string(), v.minLength(1), v.maxLength(40)),
|
|
25
26
|
/** One-line description shown in the create-task type picker. */
|
|
26
27
|
description: v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(500)),
|
|
28
|
+
/**
|
|
29
|
+
* Optional grouping caption for the create-task type picker (e.g. `API delivery`), mirroring
|
|
30
|
+
* `agentPresentationSchema.category`, which already drives the pipeline builder's palette. An
|
|
31
|
+
* org registering twenty reusable operations needs the picker to group them; types sharing a
|
|
32
|
+
* category render under one caption, and an uncategorized type renders flat after them.
|
|
33
|
+
*/
|
|
34
|
+
category: v.optional(v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(60))),
|
|
27
35
|
});
|
|
28
|
-
/** One choice of a `select` {@link
|
|
29
|
-
export const taskTypeFieldOptionSchema =
|
|
30
|
-
value: v.pipe(v.string(), v.minLength(1), v.maxLength(120)),
|
|
31
|
-
label: v.pipe(v.string(), v.minLength(1), v.maxLength(120)),
|
|
32
|
-
});
|
|
36
|
+
/** One choice of a `select` / `checkbox-group` field (the shared {@link descriptorFieldOptionSchema}). */
|
|
37
|
+
export const taskTypeFieldOptionSchema = descriptorFieldOptionSchema;
|
|
33
38
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
39
|
+
* Which of the shared descriptor-form input types a task-type field may declare.
|
|
40
|
+
*
|
|
41
|
+
* Everything the initiative-preset form admits EXCEPT `password`, excluded by construction rather
|
|
42
|
+
* than by convention: a collected task field value is folded into agent prompts, projected onto the
|
|
43
|
+
* board snapshot, and captured in agent-context telemetry, so it is the wrong home for a secret. A
|
|
44
|
+
* capability an operation's agents need credentials for declares them by NAME against the
|
|
45
|
+
* per-workspace capability-credential store, where the value never reaches a prompt.
|
|
46
|
+
*/
|
|
47
|
+
export const taskTypeFieldTypeSchema = v.picklist([
|
|
48
|
+
'text',
|
|
49
|
+
'textarea',
|
|
50
|
+
'number',
|
|
51
|
+
'select',
|
|
52
|
+
'checkbox',
|
|
53
|
+
'checkbox-group',
|
|
54
|
+
'path',
|
|
55
|
+
]);
|
|
56
|
+
/**
|
|
57
|
+
* One data-driven field on a custom task type's create-form: the SHARED descriptor-form vocabulary
|
|
58
|
+
* (`form-fields.ts`, which the initiative-preset form fills too), narrowed to the types above. Its
|
|
59
|
+
* value lands in the sparse `taskTypeFields.custom` bag keyed by `key`, so adding a field never
|
|
60
|
+
* needs a schema migration, and the shared `validateDescriptorFields` /
|
|
61
|
+
* `sanitizeDescriptorFields` / `renderDescriptorFieldValue` rules apply verbatim: one renderer, one
|
|
62
|
+
* validator, one prose projection across both surfaces.
|
|
38
63
|
*/
|
|
39
64
|
export const taskTypeFieldDescriptorSchema = v.object({
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
label: v.pipe(v.string(), v.minLength(1), v.maxLength(120)),
|
|
44
|
-
/** The control type: free text, multi-line text, a number, or one of {@link options}. */
|
|
45
|
-
type: v.picklist(['text', 'textarea', 'number', 'select']),
|
|
46
|
-
/** One-line helper text shown under the field. */
|
|
47
|
-
help: v.optional(v.pipe(v.string(), v.maxLength(300))),
|
|
48
|
-
/** Placeholder shown in an empty `text`/`textarea`/`number` input. */
|
|
49
|
-
placeholder: v.optional(v.pipe(v.string(), v.maxLength(200))),
|
|
50
|
-
/** The choices for a `select` descriptor; absent (and ignored) for the other types. */
|
|
51
|
-
options: v.optional(v.array(taskTypeFieldOptionSchema)),
|
|
52
|
-
/** Whether the field must be filled before the task can be created. */
|
|
53
|
-
required: v.optional(v.boolean()),
|
|
54
|
-
/** Max length for a `text`/`textarea` value (characters). */
|
|
55
|
-
maxLength: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(10000))),
|
|
65
|
+
...descriptorFieldEntries,
|
|
66
|
+
/** The control type; absent is treated as `text`. */
|
|
67
|
+
type: v.optional(taskTypeFieldTypeSchema),
|
|
56
68
|
});
|
|
57
69
|
/**
|
|
58
70
|
* A registered custom task type's wire projection — the snapshot entry the SPA merges into its
|
|
@@ -72,6 +84,19 @@ export const customTaskTypeSchema = v.object({
|
|
|
72
84
|
* positional default, exactly like an unmapped built-in type.
|
|
73
85
|
*/
|
|
74
86
|
defaultPipelineId: v.optional(v.string()),
|
|
87
|
+
/**
|
|
88
|
+
* The STANDING CONTEXT a task of this type carries: best-practice fragment ids unioned onto
|
|
89
|
+
* every new task's own `fragmentIds` at creation, beside whatever it inherits from its service.
|
|
90
|
+
* This is what makes a reusable operation consistent: an org's API guidelines and auth
|
|
91
|
+
* requirements reach every "introduce an API" run without per-task picking.
|
|
92
|
+
*
|
|
93
|
+
* Only the id SET freezes at creation (matching `serviceFragmentIds` semantics); the BODIES
|
|
94
|
+
* live-resolve per run against the merged builtin ⊕ account ⊕ workspace catalog, so editing a
|
|
95
|
+
* guideline reaches every future run of an already-created task. Ids resolve against the
|
|
96
|
+
* universal code pool AND the tenant tiers, which is why boot validation WARNS rather than
|
|
97
|
+
* refuses on an id it cannot see (a workspace-tier id is structurally invisible at boot).
|
|
98
|
+
*/
|
|
99
|
+
defaultFragmentIds: v.optional(v.array(v.pipe(v.string(), v.minLength(1), v.maxLength(200)))),
|
|
75
100
|
/**
|
|
76
101
|
* Optional id of a bespoke create-form section component (`<ns>:<name>`) the deployment
|
|
77
102
|
* contributes to the frontend `taskTypeFormPanels` slot, shown INSTEAD of the descriptor
|
package/dist/task-types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-types.js","sourceRoot":"","sources":["../src/task-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEpD,8EAA8E;AAC9E,4FAA4F;AAC5F,8FAA8F;AAC9F,6FAA6F;AAC7F,8FAA8F;AAC9F,mFAAmF;AACnF,2FAA2F;AAC3F,iDAAiD;AACjD,EAAE;AACF,8FAA8F;AAC9F,6FAA6F;AAC7F,wFAAwF;AACxF,0EAA0E;AAC1E,8EAA8E;AAE9E,wGAAwG;AACxG,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,oCAAoC;IACpC,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,EAAE,CAAC,CAAC;IACpE,2CAA2C;IAC3C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC1D,uCAAuC;IACvC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC1D,iEAAiE;IACjE,WAAW,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,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"task-types.js","sourceRoot":"","sources":["../src/task-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,6 +104,18 @@ export declare const workspaceSettingsSchema: v.ObjectSchema<{
|
|
|
104
104
|
* inert there. Enabling it with no runner pool registered fails the run loudly.
|
|
105
105
|
*/
|
|
106
106
|
readonly delegateAgentsToRunnerPool: v.BooleanSchema<undefined>;
|
|
107
|
+
/**
|
|
108
|
+
* Whether/how the PRE-DISPATCH INPUT GATE applies to this workspace's runs: the deterministic
|
|
109
|
+
* structural check of a task's authored input, run before the first agent step is dispatched
|
|
110
|
+
* so a task nobody could act on parks having spent nothing.
|
|
111
|
+
*
|
|
112
|
+
* `standard` (the default) parks a run on a blocking finding: an empty or placeholder-only
|
|
113
|
+
* description, a `bug` with no reproduction context, a `review` task naming no pull request.
|
|
114
|
+
* Each of those is unambiguous: no model reading them could produce work, so buying that
|
|
115
|
+
* verdict from the requirements reviewer costs a call to be told what a string comparison
|
|
116
|
+
* already knew. `advisory` records the same findings and never parks; `off` skips the check.
|
|
117
|
+
*/
|
|
118
|
+
readonly inputGateMode: v.PicklistSchema<["standard", "advisory", "off"], undefined>;
|
|
107
119
|
/** Whether/how review-debt friction is applied when authoring a new task. */
|
|
108
120
|
readonly reviewFrictionMode: v.PicklistSchema<["off", "warn", "enforce"], undefined>;
|
|
109
121
|
/**
|
|
@@ -188,6 +200,7 @@ export declare const updateWorkspaceSettingsSchema: v.ObjectSchema<{
|
|
|
188
200
|
readonly artifactRetentionDays: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 3650, undefined>]>, undefined>;
|
|
189
201
|
readonly kaizenEnabled: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
190
202
|
readonly delegateAgentsToRunnerPool: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
|
|
203
|
+
readonly inputGateMode: v.OptionalSchema<v.PicklistSchema<["standard", "advisory", "off"], undefined>, undefined>;
|
|
191
204
|
readonly reviewFrictionMode: v.OptionalSchema<v.PicklistSchema<["off", "warn", "enforce"], undefined>, undefined>;
|
|
192
205
|
readonly reviewFrictionWarnCount: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 1000, undefined>]>, undefined>;
|
|
193
206
|
readonly reviewFrictionBlockCount: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 1, undefined>, v.MaxValueAction<number, 1000, undefined>]>, undefined>, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-settings.d.ts","sourceRoot":"","sources":["../src/workspace-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"workspace-settings.d.ts","sourceRoot":"","sources":["../src/workspace-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAa5B;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,4DAA4C,CAAA;AAC5E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAIrE,6FAA6F;AAC7F,eAAO,MAAM,sBAAsB,oeAA8C,CAAA;AACjF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAW3E;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,yDAAyC,CAAA;AAC9E,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA;AA0D/E,iDAAiD;AACjD,eAAO,MAAM,8BAA8B,KAAK,CAAA;AAChD,oDAAoD;AACpD,eAAO,MAAM,mCAAmC,OAAO,CAAA;AAEvD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,2LAMtC,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;uDASnC,CAAA;AACD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,sCAAsC;AACtC,eAAO,MAAM,uBAAuB;IAClC;;;OAGG;;IAEH,kEAAkE;;IAElE,8EAA8E;;IAE9E,mFAAmF;;IAEnF;;;;;;;OAOG;;IAEH;;;;;;;;;;;OAWG;;IAEH;;;;OAIG;;IAEH;;;;OAIG;;IAEH;;;;;;OAMG;;IAEH;;;;;;;;;;OAUG;;IAEH,6EAA6E;;IAE7E;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;OAGG;;IAIH,6EAA6E;;IAE7E;;;;;;;;;;OAUG;;IAEH;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;;;;;;;;;;;;;;OAiBG;;IAEH;;;OAGG;;;;aAEH,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE7E,mFAAmF;AACnF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;IA4BxC;;;;;;OAMG;;;;aAEH,CAAA;AACF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
2
|
import { manifestIdSchema, provisionTypeSchema } from './environments.js';
|
|
3
3
|
import { createTaskTypeSchema } from './primitives.js';
|
|
4
|
+
import { inputGateModeSchema } from './input-gate.js';
|
|
4
5
|
// ---------------------------------------------------------------------------
|
|
5
6
|
// Per-workspace runtime settings. A single settings object per workspace (lazily
|
|
6
7
|
// seeded from the defaults) holding the operator-tunable policies that aren't
|
|
@@ -162,6 +163,18 @@ export const workspaceSettingsSchema = v.object({
|
|
|
162
163
|
* inert there. Enabling it with no runner pool registered fails the run loudly.
|
|
163
164
|
*/
|
|
164
165
|
delegateAgentsToRunnerPool: v.boolean(),
|
|
166
|
+
/**
|
|
167
|
+
* Whether/how the PRE-DISPATCH INPUT GATE applies to this workspace's runs: the deterministic
|
|
168
|
+
* structural check of a task's authored input, run before the first agent step is dispatched
|
|
169
|
+
* so a task nobody could act on parks having spent nothing.
|
|
170
|
+
*
|
|
171
|
+
* `standard` (the default) parks a run on a blocking finding: an empty or placeholder-only
|
|
172
|
+
* description, a `bug` with no reproduction context, a `review` task naming no pull request.
|
|
173
|
+
* Each of those is unambiguous: no model reading them could produce work, so buying that
|
|
174
|
+
* verdict from the requirements reviewer costs a call to be told what a string comparison
|
|
175
|
+
* already knew. `advisory` records the same findings and never parks; `off` skips the check.
|
|
176
|
+
*/
|
|
177
|
+
inputGateMode: inputGateModeSchema,
|
|
165
178
|
/** Whether/how review-debt friction is applied when authoring a new task. */
|
|
166
179
|
reviewFrictionMode: reviewFrictionModeSchema,
|
|
167
180
|
/**
|
|
@@ -243,6 +256,7 @@ export const updateWorkspaceSettingsSchema = v.object({
|
|
|
243
256
|
artifactRetentionDays: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(3650))),
|
|
244
257
|
kaizenEnabled: v.optional(v.boolean()),
|
|
245
258
|
delegateAgentsToRunnerPool: v.optional(v.boolean()),
|
|
259
|
+
inputGateMode: v.optional(inputGateModeSchema),
|
|
246
260
|
reviewFrictionMode: v.optional(reviewFrictionModeSchema),
|
|
247
261
|
reviewFrictionWarnCount: v.optional(v.pipe(v.number(), v.integer(), v.minValue(1), v.maxValue(1000))),
|
|
248
262
|
reviewFrictionBlockCount: v.optional(v.nullable(limitSchema)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-settings.js","sourceRoot":"","sources":["../src/workspace-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"workspace-settings.js","sourceRoot":"","sources":["../src/workspace-settings.ts"],"names":[],"mappings":"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"}
|