@cat-factory/orchestration 0.101.0 → 0.102.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/container.d.ts +6 -6
- package/dist/container.d.ts.map +1 -1
- package/dist/container.js +8 -8
- package/dist/container.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/board/BoardService.d.ts.map +1 -1
- package/dist/modules/board/BoardService.js +13 -3
- package/dist/modules/board/BoardService.js.map +1 -1
- package/dist/modules/execution/ExecutionService.d.ts +7 -7
- package/dist/modules/execution/ExecutionService.d.ts.map +1 -1
- package/dist/modules/execution/ExecutionService.js +66 -41
- package/dist/modules/execution/ExecutionService.js.map +1 -1
- package/dist/modules/execution/HumanTestController.d.ts +1 -1
- package/dist/modules/execution/HumanTestController.d.ts.map +1 -1
- package/dist/modules/execution/HumanTestController.js +1 -1
- package/dist/modules/execution/HumanTestController.js.map +1 -1
- package/dist/modules/execution/MergeResolver.d.ts +1 -1
- package/dist/modules/execution/MergeResolver.d.ts.map +1 -1
- package/dist/modules/execution/MergeResolver.js +1 -1
- package/dist/modules/execution/MergeResolver.js.map +1 -1
- package/dist/modules/execution/ReviewGateController.d.ts +27 -8
- package/dist/modules/execution/ReviewGateController.d.ts.map +1 -1
- package/dist/modules/execution/ReviewGateController.js +59 -9
- package/dist/modules/execution/ReviewGateController.js.map +1 -1
- package/dist/modules/execution/RunDispatcher.d.ts +33 -11
- package/dist/modules/execution/RunDispatcher.d.ts.map +1 -1
- package/dist/modules/execution/RunDispatcher.js +229 -134
- package/dist/modules/execution/RunDispatcher.js.map +1 -1
- package/dist/modules/execution/RunStateMachine.d.ts +21 -0
- package/dist/modules/execution/RunStateMachine.d.ts.map +1 -1
- package/dist/modules/execution/RunStateMachine.js +32 -2
- package/dist/modules/execution/RunStateMachine.js.map +1 -1
- package/dist/modules/execution/TesterController.d.ts +1 -1
- package/dist/modules/execution/TesterController.d.ts.map +1 -1
- package/dist/modules/execution/TesterController.js +4 -4
- package/dist/modules/execution/TesterController.js.map +1 -1
- package/dist/modules/execution/VisualConfirmationController.d.ts +1 -1
- package/dist/modules/execution/VisualConfirmationController.d.ts.map +1 -1
- package/dist/modules/execution/VisualConfirmationController.js +1 -1
- package/dist/modules/execution/VisualConfirmationController.js.map +1 -1
- package/dist/modules/execution/gate-window-facades.d.ts +2 -2
- package/dist/modules/execution/gate-window-facades.d.ts.map +1 -1
- package/dist/modules/execution/gate-window-facades.js +2 -2
- package/dist/modules/execution/gate-window-facades.js.map +1 -1
- package/dist/modules/merge/{MergePresetService.d.ts → RiskPolicyService.d.ts} +12 -12
- package/dist/modules/merge/RiskPolicyService.d.ts.map +1 -0
- package/dist/modules/merge/{MergePresetService.js → RiskPolicyService.js} +10 -10
- package/dist/modules/merge/RiskPolicyService.js.map +1 -0
- package/dist/modules/pipelines/PipelineService.d.ts.map +1 -1
- package/dist/modules/pipelines/PipelineService.js +13 -0
- package/dist/modules/pipelines/PipelineService.js.map +1 -1
- package/dist/modules/requirements/RequirementReviewService.d.ts +29 -7
- package/dist/modules/requirements/RequirementReviewService.d.ts.map +1 -1
- package/dist/modules/requirements/RequirementReviewService.js +61 -13
- package/dist/modules/requirements/RequirementReviewService.js.map +1 -1
- package/dist/modules/requirements/requirements.logic.d.ts.map +1 -1
- package/dist/modules/requirements/requirements.logic.js +10 -1
- package/dist/modules/requirements/requirements.logic.js.map +1 -1
- package/package.json +11 -11
- package/dist/modules/merge/MergePresetService.d.ts.map +0 -1
- package/dist/modules/merge/MergePresetService.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Block, BlockRepository, ExecutionInstance, ExecutionRepository, PipelineStep, RequirementConcernLevel, ResolveRequirementsExceededChoice, WorkRunner } from '@cat-factory/kernel';
|
|
1
|
+
import type { Block, BlockRepository, ExecutionInstance, ExecutionRepository, PipelineStep, RequirementConcernLevel, RequestRecommendationItem, ResolveRequirementsExceededChoice, WorkRunner } from '@cat-factory/kernel';
|
|
2
2
|
import type { ReviewCommon } from '../review/IterativeReviewService.js';
|
|
3
3
|
import type { AdvanceResult } from './advance.js';
|
|
4
4
|
import type { RunStateMachine } from './RunStateMachine.js';
|
|
@@ -6,7 +6,7 @@ import type { StepGraph } from './StepGraph.js';
|
|
|
6
6
|
/**
|
|
7
7
|
* The merge-preset knobs an iterative review consults: how many reviewer passes it
|
|
8
8
|
* may run and the severity it tolerates before it must raise a finding for a human.
|
|
9
|
-
* A structural subset of the full merge preset, so {@link ReviewGateControllerDeps.
|
|
9
|
+
* A structural subset of the full merge preset, so {@link ReviewGateControllerDeps.resolveRiskPolicy}
|
|
10
10
|
* can return the whole preset unchanged.
|
|
11
11
|
*/
|
|
12
12
|
export interface ReviewPreset {
|
|
@@ -43,10 +43,12 @@ export interface ReviewKind<TReview extends ReviewCommon> {
|
|
|
43
43
|
grantExtraRound(workspaceId: string, reviewId: string): Promise<TReview>;
|
|
44
44
|
/**
|
|
45
45
|
* Requirements-only (the Requirement Writer): append `pending` placeholder recommendations
|
|
46
|
-
* for a batch of findings so the SPA shows "generating…" at once.
|
|
47
|
-
*
|
|
46
|
+
* for a batch of findings so the SPA shows "generating…" at once. Each item carries its finding
|
|
47
|
+
* id plus optional per-finding guidance (the note the human typed before choosing "recommend").
|
|
48
|
+
* The slow Writer runs later via {@link fillRecommendations}. Optional — absent on the clarity
|
|
49
|
+
* kind (no Writer).
|
|
48
50
|
*/
|
|
49
|
-
prepareRecommendations?(workspaceId: string, reviewId: string,
|
|
51
|
+
prepareRecommendations?(workspaceId: string, reviewId: string, items: RequestRecommendationItem[]): Promise<TReview>;
|
|
50
52
|
/** Requirements-only: reset a settled recommendation back to `pending` for a re-request. Optional. */
|
|
51
53
|
markRecommendationPending?(workspaceId: string, reviewId: string, recId: string, note: string): Promise<TReview>;
|
|
52
54
|
/**
|
|
@@ -56,6 +58,14 @@ export interface ReviewKind<TReview extends ReviewCommon> {
|
|
|
56
58
|
* or inline off-path. Optional.
|
|
57
59
|
*/
|
|
58
60
|
fillRecommendations?(workspaceId: string, blockId: string): Promise<TReview>;
|
|
61
|
+
/**
|
|
62
|
+
* Requirements-only (the auto-recommendation automation): for the block's current review,
|
|
63
|
+
* auto-generate + auto-accept recommendations for every OPEN finding the reviewer flagged
|
|
64
|
+
* answerable without a product owner. A no-op when nothing qualifies. Runs inline in the
|
|
65
|
+
* durable driver right after a reviewer pass raises findings. Optional — absent on the
|
|
66
|
+
* clarity kind (no Writer). See {@link RequirementReviewService.autoRecommend}.
|
|
67
|
+
*/
|
|
68
|
+
autoRecommend?(workspaceId: string, blockId: string): Promise<void>;
|
|
59
69
|
/** Push a live review-changed event so an open window/inspector reflects the new status. */
|
|
60
70
|
emit(workspaceId: string, review: TReview): Promise<void>;
|
|
61
71
|
}
|
|
@@ -64,7 +74,7 @@ export interface ReviewKind<TReview extends ReviewCommon> {
|
|
|
64
74
|
* the gate flow drives (park / advance-past-resolved / finalize / persist / emit / progress /
|
|
65
75
|
* start-finish a step) now come from the cohesive {@link RunStateMachine} + {@link StepGraph}
|
|
66
76
|
* collaborators instead of a per-callback bag, so this is just the gate's own data access plus
|
|
67
|
-
* the two genuinely gate-flow operations (`
|
|
77
|
+
* the two genuinely gate-flow operations (`resolveRiskPolicy`, `dispatchIterationCap`).
|
|
68
78
|
*/
|
|
69
79
|
export interface ReviewGateControllerDeps {
|
|
70
80
|
blockRepository: BlockRepository;
|
|
@@ -74,7 +84,7 @@ export interface ReviewGateControllerDeps {
|
|
|
74
84
|
stateMachine: RunStateMachine;
|
|
75
85
|
/** The pure step mutators (start/finish a step). */
|
|
76
86
|
stepGraph: StepGraph;
|
|
77
|
-
|
|
87
|
+
resolveRiskPolicy: (workspaceId: string, block: Block) => Promise<ReviewPreset>;
|
|
78
88
|
dispatchIterationCap: (workspaceId: string, blockId: string, choice: ResolveRequirementsExceededChoice, handlers: {
|
|
79
89
|
extraRound: () => Promise<unknown>;
|
|
80
90
|
proceed: () => Promise<unknown>;
|
|
@@ -113,6 +123,15 @@ export declare class ReviewGateController {
|
|
|
113
123
|
* Returns the re-reviewed review.
|
|
114
124
|
*/
|
|
115
125
|
private runIncorporationCycle;
|
|
126
|
+
/**
|
|
127
|
+
* Run the auto-recommendation automation for a block's review when the kind supports it
|
|
128
|
+
* (requirements only). Best-effort: the recommendations are a convenience, so a Writer
|
|
129
|
+
* failure must never wedge the parked run — it just leaves those findings blank for the
|
|
130
|
+
* human. The service already emits live progress per chunk. Returns `true` when the kind
|
|
131
|
+
* supports the automation (so the caller knows the persisted review may have changed after
|
|
132
|
+
* the passed-in snapshot was taken), `false` when it is a no-op (unsupported kind).
|
|
133
|
+
*/
|
|
134
|
+
private maybeAutoRecommend;
|
|
116
135
|
/** Finish a review gate step and advance to the next step (or finish the run). */
|
|
117
136
|
private completeStep;
|
|
118
137
|
/** Resolve a block's current review or throw. */
|
|
@@ -145,7 +164,7 @@ export declare class ReviewGateController {
|
|
|
145
164
|
* background (see {@link evaluate} re-entry) — filling the placeholders and notifying when done.
|
|
146
165
|
* Off-path (no parked run) the Writer runs inline. Returns the review with the placeholders.
|
|
147
166
|
*/
|
|
148
|
-
requestRecommendations<TReview extends ReviewCommon>(kind: ReviewKind<TReview>, workspaceId: string, blockId: string,
|
|
167
|
+
requestRecommendations<TReview extends ReviewCommon>(kind: ReviewKind<TReview>, workspaceId: string, blockId: string, items: RequestRecommendationItem[]): Promise<TReview>;
|
|
149
168
|
/**
|
|
150
169
|
* Re-request a single recommendation with a "do it differently" note: resets it to `pending`
|
|
151
170
|
* and drives the Writer through the SAME async path as a fresh batch. Review-scoped (the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewGateController.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ReviewGateController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,uBAAuB,EACvB,iCAAiC,EACjC,UAAU,EACX,MAAM,qBAAqB,CAAA;AAG5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE/C;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,wBAAwB,EAAE,MAAM,CAAA;IAChC,4BAA4B,EAAE,uBAAuB,CAAA;CACtD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,UAAU,CAAC,OAAO,SAAS,YAAY;IACtD,oFAAoF;IACpF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,8FAA8F;IAC9F,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,0EAA0E;IAC1E,OAAO,IAAI,OAAO,CAAA;IAClB,qFAAqF;IACrF,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAA;IAC1E,yFAAyF;IACzF,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACjF,2DAA2D;IAC3D,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACvF,6FAA6F;IAC7F,WAAW,CACT,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAAC,IAAI,CAAC,CAAA;IAChB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACzE,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACxE,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC1E,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACxE
|
|
1
|
+
{"version":3,"file":"ReviewGateController.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/ReviewGateController.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,9 @@ export class ReviewGateController {
|
|
|
30
30
|
if (!kind.enabled()) {
|
|
31
31
|
return this.completeStep(workspaceId, instance, step, isFinalStep);
|
|
32
32
|
}
|
|
33
|
+
// The auto-recommendation automation is on by default; a pipeline step opts out via
|
|
34
|
+
// `stepOptions.autoRecommend === false` (authored in the pipeline builder).
|
|
35
|
+
const autoRecommendEnabled = step.stepOptions?.autoRecommend !== false;
|
|
33
36
|
// Re-entry: the human asked the Requirement Writer to recommend answers for a batch of
|
|
34
37
|
// findings (or re-requested one). Run the Writer here in the durable driver — filling the
|
|
35
38
|
// `pending` placeholders one by one (progress streams to the window) and notifying when the
|
|
@@ -48,7 +51,7 @@ export class ReviewGateController {
|
|
|
48
51
|
const pending = step.pendingIncorporation;
|
|
49
52
|
if (pending) {
|
|
50
53
|
step.pendingIncorporation = null;
|
|
51
|
-
const review = await this.runIncorporationCycle(kind, workspaceId, block.id, pending.feedback);
|
|
54
|
+
const review = await this.runIncorporationCycle(kind, workspaceId, block.id, pending.feedback, autoRecommendEnabled);
|
|
52
55
|
if (review.status === 'incorporated') {
|
|
53
56
|
return this.completeStep(workspaceId, instance, step, isFinalStep);
|
|
54
57
|
}
|
|
@@ -66,6 +69,13 @@ export class ReviewGateController {
|
|
|
66
69
|
if (review.status === 'incorporated') {
|
|
67
70
|
return this.completeStep(workspaceId, instance, step, isFinalStep);
|
|
68
71
|
}
|
|
72
|
+
// Pre-answer the findings the reviewer judged answerable without a product owner, so the
|
|
73
|
+
// human is handed a mostly-filled review (only the genuine business decisions remain
|
|
74
|
+
// blank). Best-effort — a failure here must not wedge the parked run. Skipped on `exceeded`
|
|
75
|
+
// (the human is picking how to proceed, not answering findings).
|
|
76
|
+
if (review.status === 'ready' && autoRecommendEnabled) {
|
|
77
|
+
await this.maybeAutoRecommend(kind, workspaceId, block.id);
|
|
78
|
+
}
|
|
69
79
|
if (review.status === 'exceeded')
|
|
70
80
|
await this.deps.stateMachine.raiseDecisionRequired(workspaceId, instance);
|
|
71
81
|
return this.deps.stateMachine.parkStepOnDecision(workspaceId, instance, step);
|
|
@@ -77,7 +87,7 @@ export class ReviewGateController {
|
|
|
77
87
|
* {@link evaluate} re-entry); shared by the no-run inline fallback in {@link incorporate}.
|
|
78
88
|
* Returns the re-reviewed review.
|
|
79
89
|
*/
|
|
80
|
-
async runIncorporationCycle(kind, workspaceId, blockId, feedback) {
|
|
90
|
+
async runIncorporationCycle(kind, workspaceId, blockId, feedback, autoRecommendEnabled = true) {
|
|
81
91
|
const review = await this.currentReview(kind, workspaceId, blockId);
|
|
82
92
|
// Nothing to fold in (every finding dismissed, no answered replies, no redo
|
|
83
93
|
// feedback) → the requirements stand as-is. Skip the rework + re-review LLM calls
|
|
@@ -91,7 +101,7 @@ export class ReviewGateController {
|
|
|
91
101
|
return settled;
|
|
92
102
|
}
|
|
93
103
|
const block = assertFound(await this.deps.blockRepository.get(workspaceId, blockId), 'Block', blockId);
|
|
94
|
-
const preset = await this.deps.
|
|
104
|
+
const preset = await this.deps.resolveRiskPolicy(workspaceId, block);
|
|
95
105
|
await kind.incorporate(workspaceId, blockId, review.id, feedback);
|
|
96
106
|
// The fold is done; flag the SECOND stage (`reviewing`) so the board/window can show
|
|
97
107
|
// "re-reviewing" distinctly from "incorporating" — either of the two LLM calls can be
|
|
@@ -100,8 +110,32 @@ export class ReviewGateController {
|
|
|
100
110
|
await kind.emit(workspaceId, reReviewing);
|
|
101
111
|
const reviewed = await kind.reReview(workspaceId, review.id, preset);
|
|
102
112
|
await kind.emit(workspaceId, reviewed);
|
|
113
|
+
// A re-review can surface fresh findings; pre-answer the auto-answerable ones just like the
|
|
114
|
+
// first pass, so the human only ever hand-answers the genuine business decisions.
|
|
115
|
+
if (reviewed.status === 'ready' && autoRecommendEnabled) {
|
|
116
|
+
await this.maybeAutoRecommend(kind, workspaceId, blockId);
|
|
117
|
+
}
|
|
103
118
|
return reviewed;
|
|
104
119
|
}
|
|
120
|
+
/**
|
|
121
|
+
* Run the auto-recommendation automation for a block's review when the kind supports it
|
|
122
|
+
* (requirements only). Best-effort: the recommendations are a convenience, so a Writer
|
|
123
|
+
* failure must never wedge the parked run — it just leaves those findings blank for the
|
|
124
|
+
* human. The service already emits live progress per chunk. Returns `true` when the kind
|
|
125
|
+
* supports the automation (so the caller knows the persisted review may have changed after
|
|
126
|
+
* the passed-in snapshot was taken), `false` when it is a no-op (unsupported kind).
|
|
127
|
+
*/
|
|
128
|
+
async maybeAutoRecommend(kind, workspaceId, blockId) {
|
|
129
|
+
if (!kind.autoRecommend)
|
|
130
|
+
return false;
|
|
131
|
+
try {
|
|
132
|
+
await kind.autoRecommend(workspaceId, blockId);
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
// Best-effort: the review + its findings are already persisted and returned.
|
|
136
|
+
}
|
|
137
|
+
return true;
|
|
138
|
+
}
|
|
105
139
|
/** Finish a review gate step and advance to the next step (or finish the run). */
|
|
106
140
|
async completeStep(workspaceId, instance, step, isFinalStep) {
|
|
107
141
|
this.deps.stepGraph.finishStep(step);
|
|
@@ -137,7 +171,7 @@ export class ReviewGateController {
|
|
|
137
171
|
*/
|
|
138
172
|
async review(kind, workspaceId, blockId) {
|
|
139
173
|
const block = assertFound(await this.deps.blockRepository.get(workspaceId, blockId), 'Block', blockId);
|
|
140
|
-
const preset = await this.deps.
|
|
174
|
+
const preset = await this.deps.resolveRiskPolicy(workspaceId, block);
|
|
141
175
|
return kind.review(workspaceId, block, preset);
|
|
142
176
|
}
|
|
143
177
|
/**
|
|
@@ -188,14 +222,14 @@ export class ReviewGateController {
|
|
|
188
222
|
* background (see {@link evaluate} re-entry) — filling the placeholders and notifying when done.
|
|
189
223
|
* Off-path (no parked run) the Writer runs inline. Returns the review with the placeholders.
|
|
190
224
|
*/
|
|
191
|
-
async requestRecommendations(kind, workspaceId, blockId,
|
|
225
|
+
async requestRecommendations(kind, workspaceId, blockId, items) {
|
|
192
226
|
if (!kind.prepareRecommendations || !kind.fillRecommendations) {
|
|
193
227
|
throw new ConflictError('Recommendations are not supported for this review');
|
|
194
228
|
}
|
|
195
229
|
const current = await this.currentReview(kind, workspaceId, blockId);
|
|
196
|
-
const prepared = await kind.prepareRecommendations(workspaceId, current.id,
|
|
230
|
+
const prepared = await kind.prepareRecommendations(workspaceId, current.id, items);
|
|
197
231
|
await kind.emit(workspaceId, prepared);
|
|
198
|
-
return this.scheduleRecommendation(kind, workspaceId, blockId,
|
|
232
|
+
return this.scheduleRecommendation(kind, workspaceId, blockId, items.map((i) => i.itemId), undefined, prepared);
|
|
199
233
|
}
|
|
200
234
|
/**
|
|
201
235
|
* Re-request a single recommendation with a "do it differently" note: resets it to `pending`
|
|
@@ -266,10 +300,26 @@ export class ReviewGateController {
|
|
|
266
300
|
throw new ConflictError('Incorporate the answers before re-reviewing');
|
|
267
301
|
}
|
|
268
302
|
const block = assertFound(await this.deps.blockRepository.get(workspaceId, blockId), 'Block', blockId);
|
|
269
|
-
const preset = await this.deps.
|
|
303
|
+
const preset = await this.deps.resolveRiskPolicy(workspaceId, block);
|
|
270
304
|
const updated = await kind.reReview(workspaceId, review.id, preset);
|
|
271
|
-
if (updated.status === 'incorporated')
|
|
305
|
+
if (updated.status === 'incorporated') {
|
|
272
306
|
await this.resumeRun(kind, workspaceId, blockId);
|
|
307
|
+
return updated;
|
|
308
|
+
}
|
|
309
|
+
if (updated.status === 'ready') {
|
|
310
|
+
// A re-review can surface fresh findings; pre-answer the auto-answerable ones just like the
|
|
311
|
+
// pipeline-driven cycle (see {@link runIncorporationCycle}), so auto-recommendation happens
|
|
312
|
+
// on EVERY iteration round that introduces new questions — not only the first. Off-path
|
|
313
|
+
// (no parked run) there is no step to opt out via `stepOptions.autoRecommend`, so it is on.
|
|
314
|
+
const ran = await this.maybeAutoRecommend(kind, workspaceId, blockId);
|
|
315
|
+
// Auto-recommendation mutates + persists the review (answering findings, accepting `auto`
|
|
316
|
+
// recs) AFTER `updated` was captured, and pushes the result over the live stream. Return the
|
|
317
|
+
// FRESH persisted review so this HTTP response matches the stream — otherwise the SPA's
|
|
318
|
+
// unguarded `store()` on the response clobbers the auto-answered state with this stale
|
|
319
|
+
// snapshot, and the pre-answered findings vanish from the window until the next event.
|
|
320
|
+
if (ran)
|
|
321
|
+
return this.currentReview(kind, workspaceId, blockId);
|
|
322
|
+
}
|
|
273
323
|
return updated;
|
|
274
324
|
}
|
|
275
325
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReviewGateController.js","sourceRoot":"","sources":["../../../src/modules/execution/ReviewGateController.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReviewGateController.js","sourceRoot":"","sources":["../../../src/modules/execution/ReviewGateController.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,9 +20,9 @@ import type { BlueprintReconciler } from './ExecutionService.js';
|
|
|
20
20
|
/**
|
|
21
21
|
* The task's fully-resolved merge-threshold preset (block pin → workspace default →
|
|
22
22
|
* built-in). The dispatcher only reads the gate-relevant fields; the full shape is kept so
|
|
23
|
-
* a gate's `attemptBudget(preset)` sees every knob. Mirrors {@link ExecutionService.
|
|
23
|
+
* a gate's `attemptBudget(preset)` sees every knob. Mirrors {@link ExecutionService.resolveRiskPolicy}.
|
|
24
24
|
*/
|
|
25
|
-
type
|
|
25
|
+
type ResolvedRiskPolicy = {
|
|
26
26
|
maxComplexity: number;
|
|
27
27
|
maxRisk: number;
|
|
28
28
|
maxImpact: number;
|
|
@@ -77,7 +77,7 @@ export interface RunDispatcherDeps {
|
|
|
77
77
|
resolveRunRepoContext?: ResolveRunRepoContext;
|
|
78
78
|
resolveProviderCapabilities?: (workspaceId: string, initiatedBy?: string | null) => Promise<ProviderCapabilities>;
|
|
79
79
|
/** Resolve a task's merge preset (stays on the engine, shared with the merge subgraph). */
|
|
80
|
-
|
|
80
|
+
resolveRiskPolicy: (workspaceId: string, block: Block) => Promise<ResolvedRiskPolicy>;
|
|
81
81
|
/** Whether a resolved model id incurs metered monetary cost (the start gate's predicate). */
|
|
82
82
|
modelIdIsMetered: (id: string | undefined, caps: ProviderCapabilities) => boolean;
|
|
83
83
|
}
|
|
@@ -93,7 +93,7 @@ export interface RunDispatcherDeps {
|
|
|
93
93
|
* a fat per-callback bag. It composes the existing collaborators ({@link RunStateMachine} /
|
|
94
94
|
* {@link StepGraph} / the five gate controllers / {@link MergeResolver}); the merge/auto-start
|
|
95
95
|
* subgraph deliberately STAYS on the engine, reached only through the injected
|
|
96
|
-
* `
|
|
96
|
+
* `resolveRiskPolicy` callback + the {@link MergeResolver} (which itself closes over the
|
|
97
97
|
* engine's `finalizeMerge`). `ExecutionService.stepInstance` / `pollAgentJob` / `pollGate`
|
|
98
98
|
* delegate here; no behaviour changes in the move.
|
|
99
99
|
*/
|
|
@@ -132,7 +132,7 @@ export declare class RunDispatcher {
|
|
|
132
132
|
private readonly initiativeService?;
|
|
133
133
|
private readonly resolveRunRepoContext?;
|
|
134
134
|
private readonly resolveProviderCapabilities?;
|
|
135
|
-
private readonly
|
|
135
|
+
private readonly resolveRiskPolicy;
|
|
136
136
|
private readonly modelIdIsMetered;
|
|
137
137
|
/** Lazily-built polling-gate registry, keyed by `agentKind`. See {@link gateFor}. */
|
|
138
138
|
private gateRegistryCache?;
|
|
@@ -143,6 +143,18 @@ export declare class RunDispatcher {
|
|
|
143
143
|
/** Lazily-built, order-sorted completion-path interceptor list. */
|
|
144
144
|
private stepCompletionInterceptorCache?;
|
|
145
145
|
constructor(deps: RunDispatcherDeps);
|
|
146
|
+
/**
|
|
147
|
+
* Run a durable-driver entry point, turning a lost optimistic-concurrency race into a
|
|
148
|
+
* re-drive. A driver write ({@link RunStateMachine.casPersist}) throws {@link RunContendedError}
|
|
149
|
+
* when a concurrent human action moved the row or a `cancel`/`stopRun` removed/terminated it;
|
|
150
|
+
* we swallow that and return `{ kind: 'continue' }` so the durable loop re-enters
|
|
151
|
+
* `advanceInstance`, reloads FRESH state, and either re-applies the mechanical step on the
|
|
152
|
+
* winning snapshot or no-ops on a gone/terminal run — never clobbering the winner or
|
|
153
|
+
* resurrecting a cancelled run (race-audit 2.2 driver-half / 2.3). This MUST run inside each
|
|
154
|
+
* entry point (ahead of the drivers' generic `catch`→`failRun` and Cloudflare's `step.do`
|
|
155
|
+
* retry); every other error propagates so real failures still fail the run.
|
|
156
|
+
*/
|
|
157
|
+
private redriveOnContention;
|
|
146
158
|
/**
|
|
147
159
|
* The generic container/inline-agent step — the lowest-priority StepHandler, claiming
|
|
148
160
|
* every step no more-specific handler did (coder, architect, spec-writer, merger,
|
|
@@ -210,6 +222,7 @@ export declare class RunDispatcher {
|
|
|
210
222
|
* simply lets the driver advance the now-current step.
|
|
211
223
|
*/
|
|
212
224
|
pollAgentJob(workspaceId: string, executionId: string): Promise<AdvanceResult>;
|
|
225
|
+
private pollAgentJobInner;
|
|
213
226
|
/**
|
|
214
227
|
* Fold a running poll's container signals into `step.container`: a successful poll
|
|
215
228
|
* proves the container is `up`, and the harness's live phase (clone / agent / push)
|
|
@@ -254,6 +267,7 @@ export declare class RunDispatcher {
|
|
|
254
267
|
* step is a gate actively in its `checking` phase.
|
|
255
268
|
*/
|
|
256
269
|
pollGate(workspaceId: string, executionId: string): Promise<AdvanceResult>;
|
|
270
|
+
private pollGateInner;
|
|
257
271
|
/**
|
|
258
272
|
* Decide what happens when the durable driver's GATE poll budget (ciMaxPolls ×
|
|
259
273
|
* ciPollInterval) is spent while a gate is still `pending` — called by both runtime
|
|
@@ -266,6 +280,7 @@ export declare class RunDispatcher {
|
|
|
266
280
|
* gate; it returns a `job_failed` the driver funnels through its single `failRun`).
|
|
267
281
|
*/
|
|
268
282
|
resolveGatePollExhaustion(workspaceId: string, executionId: string): Promise<AdvanceResult>;
|
|
283
|
+
private resolveGatePollExhaustionInner;
|
|
269
284
|
/**
|
|
270
285
|
* Stamp `step.environment` from the block's live ephemeral environment so a run's
|
|
271
286
|
* details show its spinning-up / running / shut-down / errored state + the exact
|
|
@@ -655,12 +670,19 @@ export declare class RunDispatcher {
|
|
|
655
670
|
/** Dismiss a follow-up / question item without acting on it. */
|
|
656
671
|
dismissFollowUp(workspaceId: string, executionId: string, itemId: string): Promise<FollowUpsStepState>;
|
|
657
672
|
/**
|
|
658
|
-
*
|
|
659
|
-
* every item
|
|
660
|
-
* items
|
|
661
|
-
*
|
|
662
|
-
|
|
663
|
-
|
|
673
|
+
* Apply a human follow-up item decision and, when the run is PARKED on this step's follow-up
|
|
674
|
+
* gate with every item now decided, drive it forward — loop the Coder for the queued/answered
|
|
675
|
+
* items, hand off to a co-located approval gate, or advance past the gate — all under
|
|
676
|
+
* OPTIMISTIC CONCURRENCY. A follow-up decision can race the driver's running-poll fold (which
|
|
677
|
+
* appends newly-streamed items) or another decision on a sibling item, so it RE-READS +
|
|
678
|
+
* RE-APPLIES on a lost CAS race instead of clobbering — the human-action dual of the driver's
|
|
679
|
+
* abort-and-redrive (race-audit 2.2). The item mutation + the in-memory gate transition run
|
|
680
|
+
* INSIDE the CAS callback (idempotent, re-runnable on reload); the non-idempotent side effects
|
|
681
|
+
* (notifications, `signalDecision`, emit) run once AFTER, on the winning snapshot. `decide`
|
|
682
|
+
* validates + mutates the item, throwing a `ConflictError`/`NotFoundError` that propagates
|
|
683
|
+
* immediately (a domain error is not retried).
|
|
684
|
+
*/
|
|
685
|
+
private applyFollowUpDecision;
|
|
664
686
|
/** Provision inputs (`{{input.*}}`) derived from the block under deployment. */
|
|
665
687
|
deployInputs(block: Block): Record<string, string>;
|
|
666
688
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RunDispatcher.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/RunDispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEb,eAAe,EACf,cAAc,EAEd,KAAK,EACL,eAAe,EAEf,iBAAiB,EACjB,aAAa,EACb,KAAK,EAEL,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EAEnB,kBAAkB,EAElB,cAAc,EAEd,WAAW,EACX,sBAAsB,EACtB,YAAY,EACZ,oBAAoB,EACpB,gBAAgB,EAGhB,uBAAuB,EACvB,iBAAiB,EACjB,qBAAqB,EAErB,iBAAiB,EAMjB,qBAAqB,EACrB,UAAU,EACX,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"RunDispatcher.d.ts","sourceRoot":"","sources":["../../../src/modules/execution/RunDispatcher.ts"],"names":[],"mappings":"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"}
|