@cat-factory/orchestration 0.172.1 → 0.174.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/container.d.ts.map +1 -1
- package/dist/container.js +10 -1
- package/dist/container.js.map +1 -1
- package/dist/modules/execution/AgentContextBuilder.d.ts.map +1 -1
- package/dist/modules/execution/AgentContextBuilder.js +48 -2
- package/dist/modules/execution/AgentContextBuilder.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +2 -0
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +17 -7
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/PrReviewController.d.ts +39 -0
- package/dist/modules/execution/PrReviewController.d.ts.map +1 -1
- package/dist/modules/execution/PrReviewController.js +98 -0
- package/dist/modules/execution/PrReviewController.js.map +1 -1
- package/dist/modules/execution/RunAdmission.d.ts.map +1 -1
- package/dist/modules/execution/RunAdmission.js +10 -4
- package/dist/modules/execution/RunAdmission.js.map +1 -1
- package/dist/modules/execution/RunDispatcher.d.ts +2 -0
- package/dist/modules/execution/RunDispatcher.d.ts.map +1 -1
- package/dist/modules/execution/RunDispatcher.js +11 -0
- package/dist/modules/execution/RunDispatcher.js.map +1 -1
- package/dist/modules/execution/RunRepoOpsController.d.ts.map +1 -1
- package/dist/modules/execution/RunRepoOpsController.js +10 -2
- package/dist/modules/execution/RunRepoOpsController.js.map +1 -1
- package/dist/modules/execution/prReview.logic.d.ts.map +1 -1
- package/dist/modules/execution/prReview.logic.js +8 -0
- package/dist/modules/execution/prReview.logic.js.map +1 -1
- package/dist/modules/execution/prReviewSlices.logic.d.ts +71 -0
- package/dist/modules/execution/prReviewSlices.logic.d.ts.map +1 -0
- package/dist/modules/execution/prReviewSlices.logic.js +181 -0
- package/dist/modules/execution/prReviewSlices.logic.js.map +1 -0
- package/dist/modules/execution/stepGating.logic.d.ts +25 -1
- package/dist/modules/execution/stepGating.logic.d.ts.map +1 -1
- package/dist/modules/execution/stepGating.logic.js +30 -0
- package/dist/modules/execution/stepGating.logic.js.map +1 -1
- package/dist/modules/pipelines/PipelineService.d.ts +14 -1
- package/dist/modules/pipelines/PipelineService.d.ts.map +1 -1
- package/dist/modules/pipelines/PipelineService.js +21 -2
- package/dist/modules/pipelines/PipelineService.js.map +1 -1
- package/dist/modules/pipelines/pipelineShape.d.ts +48 -16
- package/dist/modules/pipelines/pipelineShape.d.ts.map +1 -1
- package/dist/modules/pipelines/pipelineShape.js +34 -19
- package/dist/modules/pipelines/pipelineShape.js.map +1 -1
- package/package.json +11 -11
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PipelineAvailability, StepGating, StepOptions, TesterQualityConfig } from '@cat-factory/kernel';
|
|
2
|
+
import type { AgentKindRegistry } from '@cat-factory/agents';
|
|
2
3
|
/**
|
|
3
4
|
* How a run was LAUNCHED, threaded into {@link ExecutionService.start} so the launch-constraint
|
|
4
5
|
* gate can reject a `'manual'` start of a `'recurring'`-only pipeline (and vice versa). A retry
|
|
@@ -34,21 +35,40 @@ export declare function pipelineHasEnabledBugIntake(agentKinds: string[], enable
|
|
|
34
35
|
* validation enforces exactly that adjacency: a companion's nearest preceding enabled step
|
|
35
36
|
* must be one of its targets. (The engine still reviews the nearest preceding target, but
|
|
36
37
|
* that target is now guaranteed to be the immediate predecessor.)
|
|
37
|
-
* - {@link assertValidGating}: a step gated on the task estimate must
|
|
38
|
-
*
|
|
39
|
-
* must
|
|
40
|
-
* `task-estimator` to have run before it (or
|
|
38
|
+
* - {@link assertValidGating}: a step gated on the task estimate must declare itself GATABLE
|
|
39
|
+
* (`isGatableKind` — a kind whose output later steps read as context rather than depend on
|
|
40
|
+
* structurally), must not also carry a human approval gate, must set at least one axis
|
|
41
|
+
* threshold (or it would always skip), and needs a `task-estimator` to have run before it (or
|
|
42
|
+
* the gate has nothing to consult).
|
|
41
43
|
* - {@link assertValidTesterQualityGating}: the test quality-control companion's optional
|
|
42
44
|
* estimate gate lives on the Tester step itself (not a companion row), so it is validated
|
|
43
45
|
* separately — but under the same "threshold set + estimator earlier" rules, since a
|
|
44
46
|
* QC gate with no estimator would silently never gate.
|
|
47
|
+
*
|
|
48
|
+
* Each check takes the whole shape rather than the two or three arrays it happens to read today:
|
|
49
|
+
* the gating check needed `gates` + the kind registry after the estimate-gating rules were
|
|
50
|
+
* generalised past companions, and threading those as further positional parameters through one
|
|
51
|
+
* of four otherwise-similar signatures is how these drift apart.
|
|
45
52
|
*/
|
|
46
53
|
export interface PipelineShape {
|
|
47
54
|
agentKinds: string[];
|
|
48
55
|
enabled?: boolean[];
|
|
56
|
+
/**
|
|
57
|
+
* The per-step HUMAN approval gate flags. Read by {@link assertValidGating} to refuse a step
|
|
58
|
+
* that carries both a human gate and an estimate gate — the estimate may ADD a human
|
|
59
|
+
* checkpoint, never cancel one a pipeline author asked for.
|
|
60
|
+
*/
|
|
61
|
+
gates?: boolean[];
|
|
49
62
|
gating?: (StepGating | null)[];
|
|
50
63
|
testerQuality?: (TesterQualityConfig | null)[];
|
|
51
64
|
stepOptions?: (StepOptions | null)[];
|
|
65
|
+
/**
|
|
66
|
+
* The app-owned agent-kind registry, so a DEPLOYMENT-registered kind's own `gatable` flag is
|
|
67
|
+
* honoured. Absent ⇒ built-in kinds only, which is correct for a caller validating a built-in
|
|
68
|
+
* catalog (the kernel seed test) but would wrongly refuse a registered gatable kind at a
|
|
69
|
+
* boundary that has the registry — so both real boundaries (builder save, run start) pass it.
|
|
70
|
+
*/
|
|
71
|
+
agentKindRegistry?: AgentKindRegistry;
|
|
52
72
|
}
|
|
53
73
|
export declare function validatePipelineShape(pipeline: PipelineShape): void;
|
|
54
74
|
/**
|
|
@@ -58,7 +78,7 @@ export declare function validatePipelineShape(pipeline: PipelineShape): void;
|
|
|
58
78
|
* since both boundaries share this validation) rather than failing deep in dispatch. A DISABLED
|
|
59
79
|
* skill step never runs, so it imposes no requirement.
|
|
60
80
|
*/
|
|
61
|
-
export declare function assertValidSkillSteps(agentKinds
|
|
81
|
+
export declare function assertValidSkillSteps({ agentKinds, enabled, stepOptions }: PipelineShape): void;
|
|
62
82
|
/**
|
|
63
83
|
* A companion step is only valid when the step IMMEDIATELY before it (over the enabled
|
|
64
84
|
* subset) produces output it is allowed to review (a step whose kind is in the companion's
|
|
@@ -68,23 +88,35 @@ export declare function assertValidSkillSteps(agentKinds: string[], enabled?: bo
|
|
|
68
88
|
* producer and its companion". Companions are surfaced in the builder as toggles attached to
|
|
69
89
|
* their producer and run immediately after it, so adjacency is required.
|
|
70
90
|
*/
|
|
71
|
-
export declare function assertValidCompanionPlacement(agentKinds
|
|
91
|
+
export declare function assertValidCompanionPlacement({ agentKinds, enabled }: PipelineShape): void;
|
|
72
92
|
/**
|
|
73
93
|
* Validate every ENABLED step that carries enabled estimate gating. A disabled gated step
|
|
74
|
-
* never runs, so it imposes no requirement; an enabled one must satisfy all
|
|
94
|
+
* never runs, so it imposes no requirement; an enabled one must satisfy all four rules:
|
|
95
|
+
*
|
|
96
|
+
* 1. The gated step's kind must be GATABLE ({@link isGatableKind}). Gating means "skip this
|
|
97
|
+
* step when the task is light", which is safe for a kind whose output later steps read as
|
|
98
|
+
* CONTEXT (a design proposal, a research note, an extra verification pass) and unsafe for one
|
|
99
|
+
* some other mechanism reads STRUCTURALLY — `merger` (whose mere presence in `instance.steps`
|
|
100
|
+
* is what makes a committing kind deliver via a PR), `deployer` (which provisions the
|
|
101
|
+
* environment its consumer reads), `conflicts`/`ci` (the guards), `bug-intake` (the run's
|
|
102
|
+
* subject). Gatability is declared per kind rather than derived from a category, because the
|
|
103
|
+
* answer is a property of what the kind produces and who reads it.
|
|
75
104
|
*
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
105
|
+
* This rule used to be "must be a COMPANION", on the reasoning that skipping a producer would
|
|
106
|
+
* starve downstream steps. The old catalog disproved it: `pl_simple` shipped with no architect
|
|
107
|
+
* and no spec-writer, `pl_quick` with no reviewer.
|
|
108
|
+
* 2. It must NOT also carry a human approval gate (`gates[i]`). The estimate may ADD a human
|
|
109
|
+
* checkpoint — that is what gating a `human-review` step on risk does — but it may never
|
|
110
|
+
* CANCEL an approval pause the pipeline author asked for, which is what an estimate-gated
|
|
111
|
+
* human-gated step would do below its threshold. A model's own triage must not be able to
|
|
112
|
+
* decide that nobody needs to look.
|
|
113
|
+
* 3. It must set at least one axis threshold. With none, the axis loop in
|
|
82
114
|
* `shouldRunGatedStep` never matches, so a step with an estimate would ALWAYS skip — the
|
|
83
115
|
* opposite of the usual intent — making the toggle a silent footgun.
|
|
84
|
-
*
|
|
116
|
+
* 4. An enabled `task-estimator` must run earlier in the chain, or the gate has no estimate
|
|
85
117
|
* to consult.
|
|
86
118
|
*/
|
|
87
|
-
export declare function assertValidGating(agentKinds
|
|
119
|
+
export declare function assertValidGating({ agentKinds, enabled, gates, gating, agentKindRegistry, }: PipelineShape): void;
|
|
88
120
|
/**
|
|
89
121
|
* Validate every ENABLED Tester step whose test quality-control companion carries an enabled
|
|
90
122
|
* estimate gate. The QC gate lives on the Tester step itself (not a companion), so it is
|
|
@@ -94,7 +126,7 @@ export declare function assertValidGating(agentKinds: string[], enabled?: boolea
|
|
|
94
126
|
* estimate to consult). The QC companion being enabled/disabled itself imposes no requirement —
|
|
95
127
|
* only an enabled GATE does.
|
|
96
128
|
*/
|
|
97
|
-
export declare function assertValidTesterQualityGating(agentKinds
|
|
129
|
+
export declare function assertValidTesterQualityGating({ agentKinds, enabled, testerQuality, }: PipelineShape): void;
|
|
98
130
|
/**
|
|
99
131
|
* Enforce a pipeline's launch constraints (design §2 of the bug-triage pipeline):
|
|
100
132
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineShape.d.ts","sourceRoot":"","sources":["../../../src/modules/pipelines/pipelineShape.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"pipelineShape.d.ts","sourceRoot":"","sources":["../../../src/modules/pipelines/pipelineShape.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EACpB,UAAU,EACV,WAAW,EACX,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAQ5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAG5D;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAA;AAE9C;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,eAAe,CAAA;AAEjD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAE9F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;IACjB,MAAM,CAAC,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAA;IAC9B,aAAa,CAAC,EAAE,CAAC,mBAAmB,GAAG,IAAI,CAAC,EAAE,CAAA;IAC9C,WAAW,CAAC,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,CAAA;IACpC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;CACtC;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAKnE;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,aAAa,GAAG,IAAI,CAU/F;AAED;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE,aAAa,GAAG,IAAI,CAoB1F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,UAAU,EACV,OAAO,EACP,KAAK,EACL,MAAM,EACN,iBAAiB,GAClB,EAAE,aAAa,GAAG,IAAI,CA+BtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAAC,EAC7C,UAAU,EACV,OAAO,EACP,aAAa,GACd,EAAE,aAAa,GAAG,IAAI,CAuBtB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,EAAE,EACpB,YAAY,EAAE,oBAAoB,GAAG,SAAS,EAC9C,MAAM,CAAC,EAAE,SAAS,EAClB,OAAO,CAAC,EAAE,OAAO,EAAE,GAClB,IAAI,CAkBN"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ValidationError } from '@cat-factory/kernel';
|
|
2
|
-
import { companionTargets, isCompanionKind, SKILL_AGENT_KIND, TASK_ESTIMATOR_AGENT_KIND, } from '@cat-factory/agents';
|
|
2
|
+
import { companionTargets, isCompanionKind, isGatableKind, SKILL_AGENT_KIND, TASK_ESTIMATOR_AGENT_KIND, } from '@cat-factory/agents';
|
|
3
3
|
import { isTesterKind } from '../execution/ci.logic.js';
|
|
4
4
|
/**
|
|
5
5
|
* The `bug-intake` engine step pulls one issue from the schedule's configured tracker board, so
|
|
@@ -19,10 +19,10 @@ export function pipelineHasEnabledBugIntake(agentKinds, enabled) {
|
|
|
19
19
|
return agentKinds.some((kind, i) => kind === BUG_INTAKE_AGENT_KIND && enabled?.[i] !== false);
|
|
20
20
|
}
|
|
21
21
|
export function validatePipelineShape(pipeline) {
|
|
22
|
-
assertValidCompanionPlacement(pipeline
|
|
23
|
-
assertValidGating(pipeline
|
|
24
|
-
assertValidTesterQualityGating(pipeline
|
|
25
|
-
assertValidSkillSteps(pipeline
|
|
22
|
+
assertValidCompanionPlacement(pipeline);
|
|
23
|
+
assertValidGating(pipeline);
|
|
24
|
+
assertValidTesterQualityGating(pipeline);
|
|
25
|
+
assertValidSkillSteps(pipeline);
|
|
26
26
|
}
|
|
27
27
|
/**
|
|
28
28
|
* Every ENABLED `skill` step must name the skill it runs (`stepOptions[i].skillId`). The one
|
|
@@ -31,7 +31,7 @@ export function validatePipelineShape(pipeline) {
|
|
|
31
31
|
* since both boundaries share this validation) rather than failing deep in dispatch. A DISABLED
|
|
32
32
|
* skill step never runs, so it imposes no requirement.
|
|
33
33
|
*/
|
|
34
|
-
export function assertValidSkillSteps(agentKinds, enabled, stepOptions) {
|
|
34
|
+
export function assertValidSkillSteps({ agentKinds, enabled, stepOptions }) {
|
|
35
35
|
const isEnabled = (i) => enabled?.[i] !== false;
|
|
36
36
|
for (let i = 0; i < agentKinds.length; i++) {
|
|
37
37
|
if (agentKinds[i] !== SKILL_AGENT_KIND || !isEnabled(i))
|
|
@@ -50,7 +50,7 @@ export function assertValidSkillSteps(agentKinds, enabled, stepOptions) {
|
|
|
50
50
|
* producer and its companion". Companions are surfaced in the builder as toggles attached to
|
|
51
51
|
* their producer and run immediately after it, so adjacency is required.
|
|
52
52
|
*/
|
|
53
|
-
export function assertValidCompanionPlacement(agentKinds, enabled) {
|
|
53
|
+
export function assertValidCompanionPlacement({ agentKinds, enabled }) {
|
|
54
54
|
const isEnabled = (i) => enabled?.[i] !== false;
|
|
55
55
|
for (let i = 0; i < agentKinds.length; i++) {
|
|
56
56
|
const kind = agentKinds[i];
|
|
@@ -72,20 +72,32 @@ export function assertValidCompanionPlacement(agentKinds, enabled) {
|
|
|
72
72
|
}
|
|
73
73
|
/**
|
|
74
74
|
* Validate every ENABLED step that carries enabled estimate gating. A disabled gated step
|
|
75
|
-
* never runs, so it imposes no requirement; an enabled one must satisfy all
|
|
75
|
+
* never runs, so it imposes no requirement; an enabled one must satisfy all four rules:
|
|
76
76
|
*
|
|
77
|
-
* 1. The gated step must be
|
|
78
|
-
* light",
|
|
79
|
-
* (
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
77
|
+
* 1. The gated step's kind must be GATABLE ({@link isGatableKind}). Gating means "skip this
|
|
78
|
+
* step when the task is light", which is safe for a kind whose output later steps read as
|
|
79
|
+
* CONTEXT (a design proposal, a research note, an extra verification pass) and unsafe for one
|
|
80
|
+
* some other mechanism reads STRUCTURALLY — `merger` (whose mere presence in `instance.steps`
|
|
81
|
+
* is what makes a committing kind deliver via a PR), `deployer` (which provisions the
|
|
82
|
+
* environment its consumer reads), `conflicts`/`ci` (the guards), `bug-intake` (the run's
|
|
83
|
+
* subject). Gatability is declared per kind rather than derived from a category, because the
|
|
84
|
+
* answer is a property of what the kind produces and who reads it.
|
|
85
|
+
*
|
|
86
|
+
* This rule used to be "must be a COMPANION", on the reasoning that skipping a producer would
|
|
87
|
+
* starve downstream steps. The old catalog disproved it: `pl_simple` shipped with no architect
|
|
88
|
+
* and no spec-writer, `pl_quick` with no reviewer.
|
|
89
|
+
* 2. It must NOT also carry a human approval gate (`gates[i]`). The estimate may ADD a human
|
|
90
|
+
* checkpoint — that is what gating a `human-review` step on risk does — but it may never
|
|
91
|
+
* CANCEL an approval pause the pipeline author asked for, which is what an estimate-gated
|
|
92
|
+
* human-gated step would do below its threshold. A model's own triage must not be able to
|
|
93
|
+
* decide that nobody needs to look.
|
|
94
|
+
* 3. It must set at least one axis threshold. With none, the axis loop in
|
|
83
95
|
* `shouldRunGatedStep` never matches, so a step with an estimate would ALWAYS skip — the
|
|
84
96
|
* opposite of the usual intent — making the toggle a silent footgun.
|
|
85
|
-
*
|
|
97
|
+
* 4. An enabled `task-estimator` must run earlier in the chain, or the gate has no estimate
|
|
86
98
|
* to consult.
|
|
87
99
|
*/
|
|
88
|
-
export function assertValidGating(agentKinds, enabled, gating) {
|
|
100
|
+
export function assertValidGating({ agentKinds, enabled, gates, gating, agentKindRegistry, }) {
|
|
89
101
|
if (!gating)
|
|
90
102
|
return;
|
|
91
103
|
const isEnabled = (i) => enabled?.[i] !== false;
|
|
@@ -94,8 +106,11 @@ export function assertValidGating(agentKinds, enabled, gating) {
|
|
|
94
106
|
if (!g?.enabled || !isEnabled(i))
|
|
95
107
|
continue;
|
|
96
108
|
const kind = agentKinds[i];
|
|
97
|
-
if (kind === undefined || !
|
|
98
|
-
throw new ValidationError(`Step '${kind}' cannot be estimate-gated —
|
|
109
|
+
if (kind === undefined || !isGatableKind(kind, agentKindRegistry)) {
|
|
110
|
+
throw new ValidationError(`Step '${kind}' cannot be estimate-gated — its output is required by the rest of the run. Only a step whose result later steps read as context (a design, a review, an extra verification pass) may be skipped on the estimate.`);
|
|
111
|
+
}
|
|
112
|
+
if (gates?.[i] === true) {
|
|
113
|
+
throw new ValidationError(`Step '${kind}' carries a human approval gate, so it cannot also be estimate-gated — the estimate may add a human checkpoint but never remove one. Drop the approval gate to make the step conditional, or drop the estimate gate to keep it unconditional.`);
|
|
99
114
|
}
|
|
100
115
|
if (g.minComplexity === undefined && g.minRisk === undefined && g.minImpact === undefined) {
|
|
101
116
|
throw new ValidationError(`Step '${kind}' is estimate-gated but sets no threshold — set at least one of complexity / risk / impact, or it would always be skipped.`);
|
|
@@ -117,7 +132,7 @@ export function assertValidGating(agentKinds, enabled, gating) {
|
|
|
117
132
|
* estimate to consult). The QC companion being enabled/disabled itself imposes no requirement —
|
|
118
133
|
* only an enabled GATE does.
|
|
119
134
|
*/
|
|
120
|
-
export function assertValidTesterQualityGating(agentKinds, enabled, testerQuality) {
|
|
135
|
+
export function assertValidTesterQualityGating({ agentKinds, enabled, testerQuality, }) {
|
|
121
136
|
if (!testerQuality)
|
|
122
137
|
return;
|
|
123
138
|
const isEnabled = (i) => enabled?.[i] !== false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipelineShape.js","sourceRoot":"","sources":["../../../src/modules/pipelines/pipelineShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAOrD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"pipelineShape.js","sourceRoot":"","sources":["../../../src/modules/pipelines/pipelineShape.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAOrD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AASvD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAA;AAEjD;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,UAAoB,EAAE,OAAmB;IACnF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,qBAAqB,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAA;AAC/F,CAAC;AAoDD,MAAM,UAAU,qBAAqB,CAAC,QAAuB;IAC3D,6BAA6B,CAAC,QAAQ,CAAC,CAAA;IACvC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC3B,8BAA8B,CAAC,QAAQ,CAAC,CAAA;IACxC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;AACjC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAiB;IACvF,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAA;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,gBAAgB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAAE,SAAQ;QACjE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,eAAe,CACvB,MAAM,gBAAgB,iEAAiE,CACxF,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAAE,UAAU,EAAE,OAAO,EAAiB;IAClF,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAA;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAAE,SAAQ;QAC3E,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACtC,mFAAmF;QACnF,IAAI,WAA+B,CAAA;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjB,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBAC3B,MAAK;YACP,CAAC;QACH,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,eAAe,CACvB,cAAc,IAAI,+DAA+D,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACxG,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,UAAU,EACV,OAAO,EACP,KAAK,EACL,MAAM,EACN,iBAAiB,GACH;IACd,IAAI,CAAC,MAAM;QAAE,OAAM;IACnB,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAA;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAAE,SAAQ;QAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,mNAAmN,CACjO,CAAA;QACH,CAAC;QACD,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACxB,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,+OAA+O,CAC7P,CAAA;QACH,CAAC;QACD,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1F,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,4HAA4H,CAC1I,CAAA;QACH,CAAC;QACD,MAAM,YAAY,GAAG,UAAU;aAC5B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,yBAAyB,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAClE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,mDAAmD,yBAAyB,sEAAsE,CAChK,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,8BAA8B,CAAC,EAC7C,UAAU,EACV,OAAO,EACP,aAAa,GACC;IACd,IAAI,CAAC,aAAa;QAAE,OAAM;IAC1B,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,CAAA;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;QAC3B,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,CAAA;QACpB,IAAI,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YAAE,SAAQ;QAC1C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YAAE,SAAQ;QACvD,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1F,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,kKAAkK,CAChL,CAAA;QACH,CAAC;QACD,MAAM,YAAY,GAAG,UAAU;aAC5B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,yBAAyB,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QAClE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,eAAe,CACvB,SAAS,IAAI,6EAA6E,yBAAyB,sEAAsE,CAC1L,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAAoB,EACpB,YAA8C,EAC9C,MAAkB,EAClB,OAAmB;IAEnB,MAAM,SAAS,GAAyB,YAAY,IAAI,MAAM,CAAA;IAC9D,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC5E,IAAI,mBAAmB,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QACrD,MAAM,IAAI,eAAe,CACvB,sBAAsB,qBAAqB,8GAA8G,CAC1J,CAAA;IACH,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;QACrD,MAAM,IAAI,eAAe,CACvB,6FAA6F,CAC9F,CAAA;IACH,CAAC;IACD,IAAI,MAAM,KAAK,WAAW,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,eAAe,CACvB,8FAA8F,CAC/F,CAAA;IACH,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/orchestration",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.174.0",
|
|
4
4
|
"description": "Delivery-workflow engine for the Agent Architecture Board (execution, bootstrap, pipelines, board, boardScan, requirements, and composition root).",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,20 +25,20 @@
|
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"ai": "^7.0.37",
|
|
28
|
-
"@cat-factory/agents": "0.
|
|
29
|
-
"@cat-factory/caching": "0.11.
|
|
30
|
-
"@cat-factory/contracts": "0.
|
|
31
|
-
"@cat-factory/integrations": "0.
|
|
32
|
-
"@cat-factory/kernel": "0.
|
|
33
|
-
"@cat-factory/prompt-fragments": "0.15.
|
|
34
|
-
"@cat-factory/sandbox": "0.11.
|
|
35
|
-
"@cat-factory/spend": "0.12.
|
|
36
|
-
"@cat-factory/workspaces": "0.21.
|
|
28
|
+
"@cat-factory/agents": "0.91.0",
|
|
29
|
+
"@cat-factory/caching": "0.11.27",
|
|
30
|
+
"@cat-factory/contracts": "0.200.0",
|
|
31
|
+
"@cat-factory/integrations": "0.113.1",
|
|
32
|
+
"@cat-factory/kernel": "0.198.0",
|
|
33
|
+
"@cat-factory/prompt-fragments": "0.15.23",
|
|
34
|
+
"@cat-factory/sandbox": "0.11.12",
|
|
35
|
+
"@cat-factory/spend": "0.12.128",
|
|
36
|
+
"@cat-factory/workspaces": "0.21.5"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"typescript": "7.0.2",
|
|
40
40
|
"vitest": "^4.1.10",
|
|
41
|
-
"@cat-factory/sandbox-fixtures": "0.7.
|
|
41
|
+
"@cat-factory/sandbox-fixtures": "0.7.231"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
44
|
"build": "tsc -b tsconfig.build.json",
|