@telora/daemon 0.13.9 → 0.13.11

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.
@@ -12,7 +12,7 @@
12
12
  *
13
13
  * Called from the daemon poll loop via runCascadeChecks().
14
14
  */
15
- import type { DaemonConfig, Workflow } from './types.js';
15
+ import type { DaemonConfig, PipelineConfig, Workflow } from './types.js';
16
16
  import type { StrategyDeliveryInfo } from './types.js';
17
17
  /** Injectable dependencies for cascade functions (testing). */
18
18
  export interface CascadeDeps {
@@ -21,6 +21,8 @@ export interface CascadeDeps {
21
21
  reviewRequestedAt?: string | null;
22
22
  }) => Promise<void>;
23
23
  fetchStrategyWorkflowWithTransitions: (strategyId: string) => Promise<Workflow>;
24
+ updateDeliveryStatus: (deliveryId: string, executionStatus: string, currentWorkflowStageId?: string | null) => Promise<void>;
25
+ fetchDeliveryWorkflow: (deliveryId: string) => Promise<Workflow>;
24
26
  }
25
27
  /**
26
28
  * Check if all non-cancelled deliveries within a strategy have reached verify,
@@ -32,12 +34,28 @@ export declare function checkDeliveryToStrategyCascade(config: DaemonConfig, str
32
34
  * non-complete status, regress the strategy back to building.
33
35
  */
34
36
  export declare function handleStrategyRegression(config: DaemonConfig, strategyId: string, strategyStatus: string, deps?: CascadeDeps): Promise<void>;
37
+ /**
38
+ * When a strategy is in in_review and all deliveries have moved out of
39
+ * in_review (back to verify or done), regress the strategy to verify
40
+ * and clear review_requested_at.
41
+ */
42
+ export declare function handleReviewCompletion(config: DaemonConfig, strategyId: string, strategyStatus: string, deps?: CascadeDeps): Promise<void>;
43
+ /**
44
+ * When a strategy reaches verify and has pipeline_config.review.enabled,
45
+ * automatically trigger AI review by transitioning verify deliveries to
46
+ * in_review and advancing the strategy to in_review.
47
+ *
48
+ * This mirrors what the manual "Review" button does via request_strategy_review
49
+ * in product-api, but triggered automatically by the cascade.
50
+ */
51
+ export declare function checkAutoReview(config: DaemonConfig, strategyId: string, strategyStatus: string, pipelineConfig: PipelineConfig | null, deps?: CascadeDeps): Promise<void>;
35
52
  /**
36
53
  * Run all cascade checks for active strategies across all configured products.
37
54
  *
38
55
  * Called from the daemon poll loop. For each active strategy:
39
56
  * 1. Check delivery->strategy cascade (all deliveries verify => strategy verify)
40
57
  * 2. Check for strategy regression (delivery reverted => strategy back to building)
58
+ * 3. Check for review completion (all deliveries out of in_review => strategy verify)
41
59
  */
42
60
  export declare function runCascadeChecks(config: DaemonConfig): Promise<void>;
43
61
  //# sourceMappingURL=state-cascade.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state-cascade.d.ts","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAcvD,+DAA+D;AAC/D,MAAM,WAAW,WAAW;IAC1B,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC/E,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1J,oCAAoC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CACjF;AAQD;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAwDf;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB1E"}
1
+ {"version":3,"file":"state-cascade.d.ts","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAgBvD,+DAA+D;AAC/D,MAAM,WAAW,WAAW;IAC1B,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC/E,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1J,oCAAoC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChF,oBAAoB,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7H,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAClE;AAUD;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAwDf;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAsCf;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,cAAc,GAAG,IAAI,EACrC,IAAI,GAAE,WAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAkEf;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B1E"}
@@ -14,6 +14,8 @@
14
14
  */
15
15
  import { getActiveStrategies } from './supabase.js';
16
16
  import { getStrategyDeliveries as _getStrategyDeliveries, updateStrategyStatus as _updateStrategyStatus, fetchStrategyWorkflowWithTransitions as _fetchStrategyWorkflowWithTransitions } from './queries/strategies.js';
17
+ import { updateDeliveryStatus as _updateDeliveryStatus } from './queries/deliveries.js';
18
+ import { fetchEffectiveWorkflow as _fetchEffectiveWorkflow } from './queries/workflows.js';
17
19
  import { configForProduct } from './config.js';
18
20
  // Delivery statuses that count as "complete" for cascade purposes
19
21
  const DELIVERY_COMPLETE_STATUSES = new Set(['verify', 'in_review', 'done']);
@@ -25,6 +27,8 @@ const defaultDeps = {
25
27
  getStrategyDeliveries: _getStrategyDeliveries,
26
28
  updateStrategyStatus: _updateStrategyStatus,
27
29
  fetchStrategyWorkflowWithTransitions: _fetchStrategyWorkflowWithTransitions,
30
+ updateDeliveryStatus: _updateDeliveryStatus,
31
+ fetchDeliveryWorkflow: _fetchEffectiveWorkflow,
28
32
  };
29
33
  /**
30
34
  * Check if all non-cancelled deliveries within a strategy have reached verify,
@@ -100,12 +104,105 @@ export async function handleStrategyRegression(config, strategyId, strategyStatu
100
104
  console.warn(`[state-cascade] Failed to check strategy regression for ${strategyId}:`, err.message);
101
105
  }
102
106
  }
107
+ /**
108
+ * When a strategy is in in_review and all deliveries have moved out of
109
+ * in_review (back to verify or done), regress the strategy to verify
110
+ * and clear review_requested_at.
111
+ */
112
+ export async function handleReviewCompletion(config, strategyId, strategyStatus, deps = defaultDeps) {
113
+ if (strategyStatus !== 'in_review')
114
+ return;
115
+ try {
116
+ const deliveries = await deps.getStrategyDeliveries(strategyId);
117
+ const activeDeliveries = deliveries.filter(d => !DELIVERY_EXCLUDED_STATUSES.has(d.executionStatus ?? ''));
118
+ if (activeDeliveries.length === 0)
119
+ return;
120
+ // If any delivery is still in_review, review is not complete
121
+ const hasInReview = activeDeliveries.some(d => d.executionStatus === 'in_review');
122
+ if (hasInReview)
123
+ return;
124
+ // All deliveries have left in_review — move strategy back to verify
125
+ const workflow = await deps.fetchStrategyWorkflowWithTransitions(strategyId);
126
+ const verifyStage = workflow.stages.find(s => s.name === 'verify');
127
+ if (!verifyStage) {
128
+ console.warn('[state-cascade] No verify stage found in strategy workflow -- cannot complete review');
129
+ return;
130
+ }
131
+ await deps.updateStrategyStatus(strategyId, 'verify', verifyStage.id, { reviewRequestedAt: null });
132
+ console.log(`[state-cascade] Strategy ${strategyId} review complete: in_review -> verify ` +
133
+ `(all deliveries out of review, review_requested_at cleared)`);
134
+ }
135
+ catch (err) {
136
+ console.warn(`[state-cascade] Failed to check review completion for ${strategyId}:`, err.message);
137
+ }
138
+ }
139
+ /**
140
+ * When a strategy reaches verify and has pipeline_config.review.enabled,
141
+ * automatically trigger AI review by transitioning verify deliveries to
142
+ * in_review and advancing the strategy to in_review.
143
+ *
144
+ * This mirrors what the manual "Review" button does via request_strategy_review
145
+ * in product-api, but triggered automatically by the cascade.
146
+ */
147
+ export async function checkAutoReview(config, strategyId, strategyStatus, pipelineConfig, deps = defaultDeps) {
148
+ // Only trigger when strategy just reached verify and review is enabled
149
+ if (strategyStatus !== 'verify')
150
+ return;
151
+ if (!pipelineConfig?.review?.enabled)
152
+ return;
153
+ try {
154
+ const deliveries = await deps.getStrategyDeliveries(strategyId);
155
+ const activeDeliveries = deliveries.filter(d => !DELIVERY_EXCLUDED_STATUSES.has(d.executionStatus ?? ''));
156
+ // Only auto-review when ALL non-cancelled deliveries are in verify (not done/in_review)
157
+ // If some are already in_review, a review is already in progress.
158
+ // If some are done, they've already been reviewed.
159
+ const verifyDeliveries = activeDeliveries.filter(d => d.executionStatus === 'verify');
160
+ if (verifyDeliveries.length === 0)
161
+ return;
162
+ const hasInReview = activeDeliveries.some(d => d.executionStatus === 'in_review');
163
+ if (hasInReview)
164
+ return;
165
+ // Transition each verify delivery to in_review
166
+ let transitioned = 0;
167
+ for (const delivery of verifyDeliveries) {
168
+ try {
169
+ const workflow = await deps.fetchDeliveryWorkflow(delivery.id);
170
+ const inReviewStage = workflow.stages.find(s => s.name === 'in_review');
171
+ if (!inReviewStage) {
172
+ console.warn(`[state-cascade] Auto-review: no in_review stage in workflow for delivery "${delivery.name}" -- skipping`);
173
+ continue;
174
+ }
175
+ await deps.updateDeliveryStatus(delivery.id, 'in_review', inReviewStage.id);
176
+ transitioned++;
177
+ }
178
+ catch (err) {
179
+ console.warn(`[state-cascade] Auto-review: failed to transition delivery "${delivery.name}":`, err.message);
180
+ }
181
+ }
182
+ if (transitioned === 0)
183
+ return;
184
+ // Transition strategy to in_review and set review_requested_at
185
+ const strategyWorkflow = await deps.fetchStrategyWorkflowWithTransitions(strategyId);
186
+ const inReviewStage = strategyWorkflow.stages.find(s => s.name === 'in_review');
187
+ if (!inReviewStage) {
188
+ console.warn('[state-cascade] Auto-review: no in_review stage in strategy workflow');
189
+ return;
190
+ }
191
+ await deps.updateStrategyStatus(strategyId, 'in_review', inReviewStage.id, { reviewRequestedAt: new Date().toISOString() });
192
+ console.log(`[state-cascade] Auto-review triggered for strategy ${strategyId}: ` +
193
+ `${transitioned} delivery(ies) transitioned to in_review`);
194
+ }
195
+ catch (err) {
196
+ console.warn(`[state-cascade] Failed to check auto-review for ${strategyId}:`, err.message);
197
+ }
198
+ }
103
199
  /**
104
200
  * Run all cascade checks for active strategies across all configured products.
105
201
  *
106
202
  * Called from the daemon poll loop. For each active strategy:
107
203
  * 1. Check delivery->strategy cascade (all deliveries verify => strategy verify)
108
204
  * 2. Check for strategy regression (delivery reverted => strategy back to building)
205
+ * 3. Check for review completion (all deliveries out of in_review => strategy verify)
109
206
  */
110
207
  export async function runCascadeChecks(config) {
111
208
  for (const product of config.products) {
@@ -115,8 +212,12 @@ export async function runCascadeChecks(config) {
115
212
  for (const strategy of strategies) {
116
213
  // Check delivery -> strategy cascade
117
214
  await checkDeliveryToStrategyCascade(pc, strategy.strategy_id, strategy.status);
215
+ // Check auto-review (strategy in verify + review.enabled)
216
+ await checkAutoReview(pc, strategy.strategy_id, strategy.status, strategy.pipeline_config);
118
217
  // Check for strategy regression
119
218
  await handleStrategyRegression(pc, strategy.strategy_id, strategy.status);
219
+ // Check for review completion
220
+ await handleReviewCompletion(pc, strategy.strategy_id, strategy.status);
120
221
  }
121
222
  }
122
223
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"state-cascade.js","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-cascade.js","sourceRoot":"","sources":["../src/state-cascade.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"strategy-executor.d.ts","sourceRoot":"","sources":["../src/strategy-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EAET,cAAc,EACf,MAAM,YAAY,CAAC;AASpB,OAAO,EAA0D,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAepH,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAmBrE,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAExD;AAwVD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAK5G;AA+BD,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAmWf;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CA2CzD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAsB7F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
1
+ {"version":3,"file":"strategy-executor.d.ts","sourceRoot":"","sources":["../src/strategy-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAKH,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EAET,cAAc,EACf,MAAM,YAAY,CAAC;AAWpB,OAAO,EAA0D,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAepH,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAmBrE,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAExD;AAgXD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAK5G;AA+BD,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,cAAc,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAmWf;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CA2CzD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,SAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAsB7F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC;AAED;;;GAGG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
@@ -20,7 +20,8 @@
20
20
  import { spawn } from 'node:child_process';
21
21
  import { mkdirSync, existsSync, createWriteStream } from 'node:fs';
22
22
  import { join } from 'node:path';
23
- import { createSession, updateSession, getReadyStrategies, } from './supabase.js';
23
+ import { createSession, updateSession, getReadyStrategies, fetchEffectiveWorkflow, } from './supabase.js';
24
+ import { updateDeliveryStatus } from './queries/deliveries.js';
24
25
  import { createWorktree, runGitSync, repoHasCommits } from './git.js';
25
26
  import { installAuditPreCommitHook } from './audit-hooks.js';
26
27
  import { getStrategyWorktree, setStrategyWorktree } from './strategy-worktree-state.js';
@@ -85,19 +86,42 @@ async function handleCompletionEvent(ctx) {
85
86
  terminateTeam(strategyId);
86
87
  return;
87
88
  }
88
- // Deliveries in in_review don't need open issues to stay alive —
89
- // the review agent's job is to READ code and CREATE issues.
90
- const hasInReviewDeliveries = currentDeliveries.some(d => d.executionStatus === 'in_review');
91
- if (!hasInReviewDeliveries) {
92
- const OPEN_ISSUE_STATUSES = new Set(['To Do', 'In Progress', 'Blocked', 'In Review']);
93
- const hasOpenIssues = currentIssues.some(i => actionableDeliveryIds.has(i.deliveryId) && OPEN_ISSUE_STATUSES.has(i.status));
94
- if (!hasOpenIssues) {
89
+ // Check for open issues across actionable deliveries.
90
+ // in_review deliveries only stay alive if they have open issues created
91
+ // by the review agent. On initial spawn the review prompt is injected;
92
+ // on subsequent cycles, if review created no issues the work is done.
93
+ const OPEN_ISSUE_STATUSES = new Set(['To Do', 'In Progress', 'Blocked', 'In Review']);
94
+ const hasOpenIssues = currentIssues.some(i => actionableDeliveryIds.has(i.deliveryId) && OPEN_ISSUE_STATUSES.has(i.status));
95
+ if (!hasOpenIssues) {
96
+ // Only in_review deliveries remain and review created no new issues.
97
+ // Check if all actionable deliveries are in_review (review complete, clean).
98
+ const inReviewDeliveries = currentDeliveries
99
+ .filter(d => actionableDeliveryIds.has(d.id) && d.executionStatus === 'in_review');
100
+ const onlyInReview = inReviewDeliveries.length > 0
101
+ && inReviewDeliveries.length === currentDeliveries.filter(d => actionableDeliveryIds.has(d.id)).length;
102
+ if (onlyInReview) {
103
+ console.log(`[strategy-executor] Review complete for "${strategyName}" -- no issues found. ` +
104
+ `Advancing ${inReviewDeliveries.length} delivery(ies) to done.`);
105
+ // Advance in_review deliveries to done -- the review passed clean
106
+ for (const delivery of inReviewDeliveries) {
107
+ try {
108
+ const workflow = await fetchEffectiveWorkflow(delivery.id);
109
+ const doneStage = workflow.stages.find(s => s.name === 'done');
110
+ await updateDeliveryStatus(delivery.id, 'done', doneStage?.id ?? null);
111
+ console.log(`[strategy-executor] Advanced delivery "${delivery.name}" from in_review to done`);
112
+ }
113
+ catch (err) {
114
+ console.warn(`[strategy-executor] Failed to advance delivery "${delivery.name}" to done:`, err.message);
115
+ }
116
+ }
117
+ }
118
+ else {
95
119
  console.log(`[strategy-executor] Actionable deliveries have no open issues for "${strategyName}" -- ` +
96
120
  `terminating team. Auto-advance will handle verify transition.`);
97
- teamState.shutdownReason = 'work_complete';
98
- terminateTeam(strategyId);
99
- return;
100
121
  }
122
+ teamState.shutdownReason = 'work_complete';
123
+ terminateTeam(strategyId);
124
+ return;
101
125
  }
102
126
  // Mid-strategy handoff: actionable work with open issues remains.
103
127
  // Send work immediately and reset the completion detector for the next cycle.
@@ -581,7 +605,7 @@ export async function spawnStrategyTeam(params) {
581
605
  `- For cross-cutting gaps spanning multiple deliveries, create a remediation delivery with telora_product_delivery_create\n\n` +
582
606
  `When review of EACH delivery is complete:\n` +
583
607
  `- If issues were found: move the delivery to "iterating" using telora_product_delivery_update (deliveryId, executionStatus: "iterating")\n` +
584
- `- If no issues were found: move the delivery to "verify" using telora_product_delivery_update (deliveryId, executionStatus: "verify")\n\n` +
608
+ `- If no issues were found: move the delivery to "done" using telora_product_delivery_update (deliveryId, executionStatus: "done")\n\n` +
585
609
  `This is critical -- you MUST update each delivery status when you finish reviewing it.`;
586
610
  console.log(`[strategy-executor] Injecting review prompt for "${strategyName}" (no directive, deliveries in in_review)`);
587
611
  sendMessage(proc.stdin, reviewPrompt);
@@ -1 +1 @@
1
- {"version":3,"file":"strategy-executor.js","sourceRoot":"","sources":["../src/strategy-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategy-executor.js","sourceRoot":"","sources":["../src/strategy-executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Strategy teardown and deactivation detection.
3
+ *
4
+ * Coordinated teardown stops QA, terminates the team, commits WIP,
5
+ * and removes the worktree. Deactivation detection polls for strategies
6
+ * that have been unassigned and triggers their teardown.
7
+ */
8
+ import type { DaemonConfig } from './types.js';
9
+ /**
10
+ * Tear down a single strategy: stop QA, terminate team, remove worktree.
11
+ *
12
+ * Each step is independently try/caught so a failure in one
13
+ * does not prevent the others from running.
14
+ */
15
+ export declare function teardownStrategy(config: DaemonConfig, strategyId: string, strategyName: string): Promise<void>;
16
+ /**
17
+ * Detect deactivated strategies and tear them down.
18
+ *
19
+ * Replaces both detectDeactivatedStrategies() from strategy-executor.ts
20
+ * and checkQaForDeactivatedStrategies() from qa-orchestrator.ts.
21
+ * A single pass handles both team termination and QA cleanup.
22
+ */
23
+ export declare function checkForDeactivatedStrategies(config: DaemonConfig): Promise<void>;
24
+ //# sourceMappingURL=strategy-teardown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategy-teardown.d.ts","sourceRoot":"","sources":["../src/strategy-teardown.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAa/C;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAgGf;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAuCf"}
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Strategy teardown and deactivation detection.
3
+ *
4
+ * Coordinated teardown stops QA, terminates the team, commits WIP,
5
+ * and removes the worktree. Deactivation detection polls for strategies
6
+ * that have been unassigned and triggers their teardown.
7
+ */
8
+ import { getActiveStrategies, updateQaStatus } from './supabase.js';
9
+ import { safeRemoveStrategyWorktree, commitWipChanges } from './git.js';
10
+ import { terminateTeam, waitForTeamExit } from './strategy-executor.js';
11
+ import { getActiveTeams } from './strategy-team-state.js';
12
+ import { getStrategyWorktree, getAllStrategyWorktrees, } from './strategy-worktree-state.js';
13
+ import { escalateMergeConflict } from './strategy-merge.js';
14
+ import { getQaEnvironment, removeQaEnvironment } from './qa-state.js';
15
+ import { stopQaDevServer } from './qa-dev-server.js';
16
+ /**
17
+ * Tear down a single strategy: stop QA, terminate team, remove worktree.
18
+ *
19
+ * Each step is independently try/caught so a failure in one
20
+ * does not prevent the others from running.
21
+ */
22
+ export async function teardownStrategy(config, strategyId, strategyName) {
23
+ console.log(`[strategy-lifecycle] Tearing down strategy "${strategyName}"`);
24
+ // 1. Stop QA dev server if running
25
+ try {
26
+ const qaState = getQaEnvironment(strategyId);
27
+ if (qaState?.pid) {
28
+ console.log(`[strategy-lifecycle] Stopping QA dev server for "${strategyName}" (PID: ${qaState.pid})`);
29
+ await stopQaDevServer(qaState.pid);
30
+ }
31
+ }
32
+ catch (err) {
33
+ console.warn(`[strategy-lifecycle] Failed to stop QA dev server for "${strategyName}": ${err.message}`);
34
+ }
35
+ // 2. Clear QA in-memory state
36
+ try {
37
+ removeQaEnvironment(strategyId);
38
+ }
39
+ catch (err) {
40
+ console.warn(`[strategy-lifecycle] Failed to clear QA state for "${strategyName}": ${err.message}`);
41
+ }
42
+ // 3. Clear QA DB state
43
+ try {
44
+ await updateQaStatus(strategyId, {
45
+ qaStatus: null,
46
+ qaUrl: null,
47
+ qaPort: null,
48
+ qaWorktreePath: null,
49
+ qaReadyAt: null,
50
+ qaError: null,
51
+ });
52
+ }
53
+ catch (err) {
54
+ console.warn(`[strategy-lifecycle] Failed to clear QA DB state for "${strategyName}": ${err.message}`);
55
+ }
56
+ // 4. Terminate agent team and wait for process exit
57
+ try {
58
+ const activeTeams = getActiveTeams();
59
+ const team = activeTeams.get(strategyId);
60
+ if (team && team.phase !== 'shutting_down' && team.phase !== 'terminated') {
61
+ console.log(`[strategy-lifecycle] Terminating team for "${strategyName}"`);
62
+ terminateTeam(strategyId);
63
+ // Wait for process to actually exit (default 30s, then SIGKILL)
64
+ const exited = await waitForTeamExit(strategyId);
65
+ if (!exited) {
66
+ console.warn(`[strategy-lifecycle] Team for "${strategyName}" did not exit cleanly after SIGKILL`);
67
+ }
68
+ }
69
+ }
70
+ catch (err) {
71
+ console.warn(`[strategy-lifecycle] Failed to terminate team for "${strategyName}": ${err.message}`);
72
+ }
73
+ // 4b. Commit any uncommitted WIP changes left by the agent
74
+ try {
75
+ const worktreeInfo = getStrategyWorktree(strategyId);
76
+ if (worktreeInfo) {
77
+ commitWipChanges(worktreeInfo.worktreePath, strategyName);
78
+ }
79
+ }
80
+ catch (err) {
81
+ console.warn(`[strategy-lifecycle] WIP commit failed for "${strategyName}": ${err.message}`);
82
+ }
83
+ // 5. Remove strategy worktree via canonical path (merge-before-remove + conditional state cleanup).
84
+ try {
85
+ const worktreeInfo = getStrategyWorktree(strategyId);
86
+ if (worktreeInfo) {
87
+ console.log(`[strategy-lifecycle] Removing worktree for "${strategyName}": ${worktreeInfo.worktreePath}`);
88
+ const removeResult = await safeRemoveStrategyWorktree({
89
+ config,
90
+ worktreePath: worktreeInfo.worktreePath,
91
+ branchName: worktreeInfo.branchName,
92
+ deliveryName: strategyName,
93
+ deliveryId: strategyId,
94
+ strategyId,
95
+ });
96
+ // Escalate if merge failed (worktree preserved with unmerged work)
97
+ if (removeResult.merged && removeResult.mergeError) {
98
+ escalateMergeConflict({
99
+ organizationId: config.organizationId,
100
+ sessionId: '',
101
+ deliveryId: strategyId,
102
+ deliveryName: strategyName,
103
+ branchName: worktreeInfo.branchName,
104
+ integrationBranch: config.integrationBranch,
105
+ mergeError: removeResult.mergeError,
106
+ }).catch(err => console.warn(`[strategy-lifecycle] escalateMergeConflict failed for "${strategyName}": ${err.message}`));
107
+ }
108
+ }
109
+ }
110
+ catch (err) {
111
+ console.warn(`[strategy-lifecycle] Failed to remove worktree for "${strategyName}": ${err.message}`);
112
+ }
113
+ console.log(`[strategy-lifecycle] Teardown complete for "${strategyName}"`);
114
+ }
115
+ /**
116
+ * Detect deactivated strategies and tear them down.
117
+ *
118
+ * Replaces both detectDeactivatedStrategies() from strategy-executor.ts
119
+ * and checkQaForDeactivatedStrategies() from qa-orchestrator.ts.
120
+ * A single pass handles both team termination and QA cleanup.
121
+ */
122
+ export async function checkForDeactivatedStrategies(config) {
123
+ const allWorktrees = getAllStrategyWorktrees();
124
+ const activeTeams = getActiveTeams();
125
+ // Nothing to check if no worktrees and no teams
126
+ if (allWorktrees.size === 0 && activeTeams.size === 0)
127
+ return;
128
+ let activeStrategyIds;
129
+ try {
130
+ // Use getActiveStrategies (not getReadyStrategies) -- a strategy is "active" even
131
+ // when all deliveries are done. Worktrees must persist for QA and idle queues.
132
+ const activeStrategies = await getActiveStrategies(config.organizationId, config.productId);
133
+ activeStrategyIds = new Set(activeStrategies.map(s => s.strategy_id));
134
+ }
135
+ catch (err) {
136
+ console.warn(`[strategy-lifecycle] Cannot determine active strategies (skipping deactivation check): ${err.message}`);
137
+ return;
138
+ }
139
+ // Collect all strategy IDs that have either a worktree or an active team
140
+ const trackedStrategyIds = new Set([
141
+ ...allWorktrees.keys(),
142
+ ...activeTeams.keys(),
143
+ ]);
144
+ for (const strategyId of trackedStrategyIds) {
145
+ if (activeStrategyIds.has(strategyId))
146
+ continue;
147
+ const worktreeInfo = getStrategyWorktree(strategyId);
148
+ const team = activeTeams.get(strategyId);
149
+ const name = worktreeInfo?.strategyName ?? team?.strategyName ?? strategyId;
150
+ // Skip teams already shutting down
151
+ if (team && (team.phase === 'shutting_down' || team.phase === 'terminated') && !worktreeInfo) {
152
+ continue;
153
+ }
154
+ console.log(`[strategy-lifecycle] Strategy "${name}" deactivated -- coordinated teardown`);
155
+ await teardownStrategy(config, strategyId, name);
156
+ }
157
+ }
158
+ //# sourceMappingURL=strategy-teardown.js.map