@telora/daemon 0.13.9 → 0.13.10
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/build-info.json +2 -2
- package/dist/branch-status.d.ts +6 -0
- package/dist/branch-status.d.ts.map +1 -1
- package/dist/branch-status.js +44 -5
- package/dist/branch-status.js.map +1 -1
- package/dist/index.js +0 -0
- package/dist/listener-review.d.ts +37 -0
- package/dist/listener-review.d.ts.map +1 -0
- package/dist/listener-review.js +217 -0
- package/dist/listener-review.js.map +1 -0
- package/dist/mcp-resolution.d.ts +8 -3
- package/dist/mcp-resolution.d.ts.map +1 -1
- package/dist/mcp-resolution.js +11 -3
- package/dist/mcp-resolution.js.map +1 -1
- package/dist/session-lifecycle.d.ts.map +1 -1
- package/dist/session-lifecycle.js +17 -9
- package/dist/session-lifecycle.js.map +1 -1
- package/dist/state-cascade.d.ts +19 -1
- package/dist/state-cascade.d.ts.map +1 -1
- package/dist/state-cascade.js +101 -0
- package/dist/state-cascade.js.map +1 -1
- package/dist/strategy-executor.d.ts.map +1 -1
- package/dist/strategy-executor.js +21 -11
- package/dist/strategy-executor.js.map +1 -1
- package/dist/strategy-teardown.d.ts +24 -0
- package/dist/strategy-teardown.d.ts.map +1 -0
- package/dist/strategy-teardown.js +158 -0
- package/dist/strategy-teardown.js.map +1 -0
- package/dist/unified-shell.d.ts.map +1 -1
- package/dist/unified-shell.js +10 -4
- package/dist/unified-shell.js.map +1 -1
- package/dist/worktree-merge.d.ts +23 -0
- package/dist/worktree-merge.d.ts.map +1 -0
- package/dist/worktree-merge.js +57 -0
- package/dist/worktree-merge.js.map +1 -0
- package/package.json +2 -2
package/build-info.json
CHANGED
package/dist/branch-status.d.ts
CHANGED
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
* Results ride in the heartbeat metadata field (no new tables).
|
|
9
9
|
*/
|
|
10
10
|
import type { DaemonConfig } from './types.js';
|
|
11
|
+
/** Reset the cache. Exported for tests only. */
|
|
12
|
+
export declare function resetBranchStatusCache(): void;
|
|
11
13
|
export type BranchHealth = 'clean' | 'dirty' | 'conflict';
|
|
12
14
|
export interface IntegrationBranchStatus {
|
|
13
15
|
branch: string;
|
|
@@ -15,6 +17,9 @@ export interface IntegrationBranchStatus {
|
|
|
15
17
|
aheadOfMain: number;
|
|
16
18
|
behindMain: number;
|
|
17
19
|
}
|
|
20
|
+
export interface MainBranchStatus {
|
|
21
|
+
aheadOfOrigin: number;
|
|
22
|
+
}
|
|
18
23
|
export interface StrategyBranchStatus {
|
|
19
24
|
strategyId: string;
|
|
20
25
|
branch: string;
|
|
@@ -25,6 +30,7 @@ export interface StrategyBranchStatus {
|
|
|
25
30
|
}
|
|
26
31
|
export interface BranchStatusPayload {
|
|
27
32
|
integration: IntegrationBranchStatus | null;
|
|
33
|
+
main: MainBranchStatus | null;
|
|
28
34
|
strategies: StrategyBranchStatus[];
|
|
29
35
|
}
|
|
30
36
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-status.d.ts","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"branch-status.d.ts","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAgB/C,gDAAgD;AAChD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAID,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC5C,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,oBAAoB,EAAE,CAAC;CACpC;AAuBD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB,CAuH7E"}
|
package/dist/branch-status.js
CHANGED
|
@@ -13,6 +13,16 @@ import { getAllStrategyWorktrees } from './strategy-worktree-state.js';
|
|
|
13
13
|
import { getActiveTeams } from './strategy-team-state.js';
|
|
14
14
|
/** Short timeout for git commands to avoid blocking the heartbeat. */
|
|
15
15
|
const BRANCH_STATUS_GIT_TIMEOUT_MS = 5_000;
|
|
16
|
+
/**
|
|
17
|
+
* Cache of last successful strategy branch status per strategy ID.
|
|
18
|
+
* Reused when a transient git failure (lock contention, mid-rebase)
|
|
19
|
+
* prevents computing fresh status, avoiding UI flicker.
|
|
20
|
+
*/
|
|
21
|
+
const lastGoodStrategyStatus = new Map();
|
|
22
|
+
/** Reset the cache. Exported for tests only. */
|
|
23
|
+
export function resetBranchStatusCache() {
|
|
24
|
+
lastGoodStrategyStatus.clear();
|
|
25
|
+
}
|
|
16
26
|
// ── Helpers ──────────────────────────────────────────────────────────
|
|
17
27
|
const gitOpts = { timeoutMs: BRANCH_STATUS_GIT_TIMEOUT_MS };
|
|
18
28
|
/**
|
|
@@ -63,6 +73,19 @@ export function computeBranchStatus(config) {
|
|
|
63
73
|
catch {
|
|
64
74
|
// Non-fatal: integration status will be null
|
|
65
75
|
}
|
|
76
|
+
// ── Main branch vs origin ──────────────────────────────────────
|
|
77
|
+
let main = null;
|
|
78
|
+
try {
|
|
79
|
+
const originRef = `origin/${defaultBranch}`;
|
|
80
|
+
const originCheck = runGitSync(['rev-parse', '--verify', originRef], repoPath, gitOpts);
|
|
81
|
+
if (originCheck.success) {
|
|
82
|
+
const aheadOfOrigin = revListCount(defaultBranch, originRef, repoPath);
|
|
83
|
+
main = { aheadOfOrigin };
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
// Non-fatal: main status will be null
|
|
88
|
+
}
|
|
66
89
|
// ── Strategy worktree statuses ───────────────────────────────────
|
|
67
90
|
const strategies = [];
|
|
68
91
|
const worktrees = getAllStrategyWorktrees();
|
|
@@ -70,8 +93,13 @@ export function computeBranchStatus(config) {
|
|
|
70
93
|
for (const [strategyId, info] of worktrees) {
|
|
71
94
|
try {
|
|
72
95
|
const headResult = runGitSync(['rev-parse', 'HEAD'], info.worktreePath, gitOpts);
|
|
73
|
-
if (!headResult.success)
|
|
96
|
+
if (!headResult.success) {
|
|
97
|
+
// Transient failure — use cached status if available
|
|
98
|
+
const cached = lastGoodStrategyStatus.get(strategyId);
|
|
99
|
+
if (cached)
|
|
100
|
+
strategies.push(cached);
|
|
74
101
|
continue;
|
|
102
|
+
}
|
|
75
103
|
const headSha = headResult.output;
|
|
76
104
|
const aheadOfIntegration = revListCount(info.branchName, integrationBranch, repoPath);
|
|
77
105
|
const behindIntegration = revListCount(integrationBranch, info.branchName, repoPath);
|
|
@@ -85,19 +113,30 @@ export function computeBranchStatus(config) {
|
|
|
85
113
|
else if (aheadOfIntegration > 0) {
|
|
86
114
|
health = 'dirty';
|
|
87
115
|
}
|
|
88
|
-
|
|
116
|
+
const entry = {
|
|
89
117
|
strategyId,
|
|
90
118
|
branch: info.branchName,
|
|
91
119
|
headSha,
|
|
92
120
|
health,
|
|
93
121
|
aheadOfIntegration,
|
|
94
122
|
behindIntegration,
|
|
95
|
-
}
|
|
123
|
+
};
|
|
124
|
+
lastGoodStrategyStatus.set(strategyId, entry);
|
|
125
|
+
strategies.push(entry);
|
|
96
126
|
}
|
|
97
127
|
catch {
|
|
98
|
-
//
|
|
128
|
+
// Transient failure — use cached status if available
|
|
129
|
+
const cached = lastGoodStrategyStatus.get(strategyId);
|
|
130
|
+
if (cached)
|
|
131
|
+
strategies.push(cached);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// Evict cache entries for worktrees that no longer exist
|
|
135
|
+
for (const cachedId of lastGoodStrategyStatus.keys()) {
|
|
136
|
+
if (!worktrees.has(cachedId)) {
|
|
137
|
+
lastGoodStrategyStatus.delete(cachedId);
|
|
99
138
|
}
|
|
100
139
|
}
|
|
101
|
-
return { integration, strategies };
|
|
140
|
+
return { integration, main, strategies };
|
|
102
141
|
}
|
|
103
142
|
//# sourceMappingURL=branch-status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch-status.js","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,sEAAsE;AACtE,MAAM,4BAA4B,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"branch-status.js","sourceRoot":"","sources":["../src/branch-status.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
File without changes
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Review request handling and auto-review for strategies.
|
|
3
|
+
*
|
|
4
|
+
* Handles manual review requests (review_requested_at) and
|
|
5
|
+
* automatic review triggering when all deliveries reach verify status.
|
|
6
|
+
*/
|
|
7
|
+
import type { DaemonConfig, AgentRole } from './types.js';
|
|
8
|
+
/** Mark a delivery as having been auto-reviewed. */
|
|
9
|
+
export declare function markDeliveryReviewed(deliveryId: string): void;
|
|
10
|
+
/** Check if a delivery has already been auto-reviewed. */
|
|
11
|
+
export declare function hasDeliveryBeenReviewed(deliveryId: string): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Spawn a review team for a strategy that has no active team.
|
|
14
|
+
*
|
|
15
|
+
* Looks up the strategy via getActiveStrategies() to get the agent role
|
|
16
|
+
* and pipeline config, then spawns a team in review mode. The spawned
|
|
17
|
+
* team receives the review directive as its initial work.
|
|
18
|
+
*/
|
|
19
|
+
export declare function spawnReviewTeamForStrategy(config: DaemonConfig, roles: Map<string, AgentRole>, strategyId: string, strategyName: string): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Check for auto-review conditions across all strategies.
|
|
22
|
+
*
|
|
23
|
+
* Iterates strategies with persistent worktrees but no active team.
|
|
24
|
+
* When all non-terminal deliveries are in verify and review is enabled,
|
|
25
|
+
* spawns a fresh review team. Active teams are skipped -- they will
|
|
26
|
+
* terminate on completion, and the next poll cycle picks them up.
|
|
27
|
+
*/
|
|
28
|
+
export declare function checkAutoReview(config: DaemonConfig, roles: Map<string, AgentRole>): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Check for pending review requests and spawn fresh review teams.
|
|
31
|
+
*
|
|
32
|
+
* Polls for strategies with review_requested_at set. For each request,
|
|
33
|
+
* spawns a fresh review team (skipped if a team is already active) and
|
|
34
|
+
* clears the flag.
|
|
35
|
+
*/
|
|
36
|
+
export declare function checkReviewRequests(config: DaemonConfig, roles: Map<string, AgentRole>): Promise<void>;
|
|
37
|
+
//# sourceMappingURL=listener-review.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listener-review.d.ts","sourceRoot":"","sources":["../src/listener-review.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAS1D,oDAAoD;AACpD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,0DAA0D;AAC1D,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,EAC7B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CA+Df;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAuFf;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAuBf"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Review request handling and auto-review for strategies.
|
|
3
|
+
*
|
|
4
|
+
* Handles manual review requests (review_requested_at) and
|
|
5
|
+
* automatic review triggering when all deliveries reach verify status.
|
|
6
|
+
*/
|
|
7
|
+
import { getActiveStrategies, getReviewRequests, getStrategyDeliveries, updateDeliveryStatus, fetchEffectiveWorkflow } from './supabase.js';
|
|
8
|
+
import { spawnStrategyTeam, hasActiveTeam, getActiveTeamCount } from './strategy-executor.js';
|
|
9
|
+
import { hasStrategyWorktree } from './strategy-worktree-state.js';
|
|
10
|
+
import { configForProduct, findProduct } from './config.js';
|
|
11
|
+
/** Track which deliveries have already had an auto-review. */
|
|
12
|
+
const reviewedDeliveries = new Set();
|
|
13
|
+
/** Mark a delivery as having been auto-reviewed. */
|
|
14
|
+
export function markDeliveryReviewed(deliveryId) {
|
|
15
|
+
reviewedDeliveries.add(deliveryId);
|
|
16
|
+
}
|
|
17
|
+
/** Check if a delivery has already been auto-reviewed. */
|
|
18
|
+
export function hasDeliveryBeenReviewed(deliveryId) {
|
|
19
|
+
return reviewedDeliveries.has(deliveryId);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Spawn a review team for a strategy that has no active team.
|
|
23
|
+
*
|
|
24
|
+
* Looks up the strategy via getActiveStrategies() to get the agent role
|
|
25
|
+
* and pipeline config, then spawns a team in review mode. The spawned
|
|
26
|
+
* team receives the review directive as its initial work.
|
|
27
|
+
*/
|
|
28
|
+
export async function spawnReviewTeamForStrategy(config, roles, strategyId, strategyName) {
|
|
29
|
+
// Check capacity
|
|
30
|
+
if (getActiveTeamCount() >= config.maxTotalSessions) {
|
|
31
|
+
console.log(`[listener] Cannot spawn review team for "${strategyName}" -- session limit reached`);
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
// Look up strategy details (role, pipeline config) across all products
|
|
35
|
+
let strategy;
|
|
36
|
+
try {
|
|
37
|
+
for (const product of config.products) {
|
|
38
|
+
const activeStrategies = await getActiveStrategies(config.organizationId, product.id);
|
|
39
|
+
strategy = activeStrategies.find(s => s.strategy_id === strategyId);
|
|
40
|
+
if (strategy)
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
catch (err) {
|
|
45
|
+
console.warn(`[listener] Failed to look up strategy for review spawn: ${err.message}`);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (!strategy) {
|
|
49
|
+
console.warn(`[listener] Strategy "${strategyName}" not found in active strategies -- cannot spawn review team`);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
// Review-only strategies may have no assigned agent role. Fall back to first available role.
|
|
53
|
+
const role = strategy.assigned_agent_role_id
|
|
54
|
+
? roles.get(strategy.assigned_agent_role_id)
|
|
55
|
+
: roles.values().next().value;
|
|
56
|
+
if (!role) {
|
|
57
|
+
console.warn(`[listener] No agent role available for review spawn of "${strategyName}"`);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
// Use product-scoped config for the review team
|
|
61
|
+
const productEntry = strategy.product_id ? findProduct(config, strategy.product_id) : undefined;
|
|
62
|
+
const spawnConfig = productEntry ? configForProduct(config, productEntry) : config;
|
|
63
|
+
// Safety-net: verify that at least one delivery is in in_review before spawning.
|
|
64
|
+
// The frontend/API moves verify→in_review atomically when the user clicks Review.
|
|
65
|
+
// If no deliveries are in in_review, the transition failed or no deliveries were in verify.
|
|
66
|
+
try {
|
|
67
|
+
const deliveries = await getStrategyDeliveries(strategyId);
|
|
68
|
+
const inReviewCount = deliveries.filter(d => d.executionStatus === 'in_review').length;
|
|
69
|
+
if (inReviewCount === 0) {
|
|
70
|
+
console.warn(`[listener] Review requested for "${strategyName}" but no deliveries in in_review -- skipping spawn`);
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
console.log(`[listener] Spawning review team for "${strategyName}" (${inReviewCount} deliveries in in_review)`);
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
console.warn(`[listener] Failed to check deliveries for review spawn of "${strategyName}":`, err.message);
|
|
77
|
+
// Proceed anyway -- the team spawner will fetch deliveries and handle the empty case
|
|
78
|
+
}
|
|
79
|
+
await spawnStrategyTeam({
|
|
80
|
+
config: spawnConfig,
|
|
81
|
+
strategyId,
|
|
82
|
+
strategyName,
|
|
83
|
+
role,
|
|
84
|
+
pipelineConfig: strategy.pipeline_config,
|
|
85
|
+
readOnly: strategy.read_only,
|
|
86
|
+
reviewMode: true,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Check for auto-review conditions across all strategies.
|
|
91
|
+
*
|
|
92
|
+
* Iterates strategies with persistent worktrees but no active team.
|
|
93
|
+
* When all non-terminal deliveries are in verify and review is enabled,
|
|
94
|
+
* spawns a fresh review team. Active teams are skipped -- they will
|
|
95
|
+
* terminate on completion, and the next poll cycle picks them up.
|
|
96
|
+
*/
|
|
97
|
+
export async function checkAutoReview(config, roles) {
|
|
98
|
+
const TERMINAL_STATUSES = new Set(['done', 'cancelled']);
|
|
99
|
+
// Aggregate active strategies across all products
|
|
100
|
+
const activeStrategies = [];
|
|
101
|
+
try {
|
|
102
|
+
for (const product of config.products) {
|
|
103
|
+
const strategies = await getActiveStrategies(config.organizationId, product.id);
|
|
104
|
+
activeStrategies.push(...strategies);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
catch (err) {
|
|
108
|
+
console.warn(`[listener] Auto-review: failed to fetch active strategies: ${err.message}`);
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
for (const strategy of activeStrategies) {
|
|
112
|
+
// Skip strategies with an active team -- they will terminate on completion,
|
|
113
|
+
// and the next poll cycle will spawn a review team if needed.
|
|
114
|
+
if (hasActiveTeam(strategy.strategy_id))
|
|
115
|
+
continue;
|
|
116
|
+
// Skip strategies without a persistent worktree (no work has been done yet)
|
|
117
|
+
if (!hasStrategyWorktree(strategy.strategy_id))
|
|
118
|
+
continue;
|
|
119
|
+
// Skip if review not enabled in pipeline config
|
|
120
|
+
const pipelineConfig = strategy.pipeline_config;
|
|
121
|
+
if (!pipelineConfig?.review?.enabled)
|
|
122
|
+
continue;
|
|
123
|
+
try {
|
|
124
|
+
const deliveries = await getStrategyDeliveries(strategy.strategy_id);
|
|
125
|
+
// Filter to non-terminal deliveries
|
|
126
|
+
const nonTerminal = deliveries.filter(d => !TERMINAL_STATUSES.has(d.executionStatus ?? ''));
|
|
127
|
+
if (nonTerminal.length === 0)
|
|
128
|
+
continue;
|
|
129
|
+
// Check if ALL non-terminal deliveries are in verify or in_review
|
|
130
|
+
const allReviewReady = nonTerminal.every(d => d.executionStatus === 'verify' || d.executionStatus === 'in_review');
|
|
131
|
+
if (!allReviewReady)
|
|
132
|
+
continue;
|
|
133
|
+
// Separate deliveries into first-time review vs already-reviewed
|
|
134
|
+
const verifyDeliveries = nonTerminal.filter(d => d.executionStatus === 'verify');
|
|
135
|
+
const needsReview = verifyDeliveries.filter(d => !hasDeliveryBeenReviewed(d.id));
|
|
136
|
+
const alreadyReviewed = verifyDeliveries.filter(d => hasDeliveryBeenReviewed(d.id));
|
|
137
|
+
// Advance already-reviewed deliveries straight to done
|
|
138
|
+
for (const delivery of alreadyReviewed) {
|
|
139
|
+
try {
|
|
140
|
+
const workflow = await fetchEffectiveWorkflow(delivery.id);
|
|
141
|
+
const doneStage = workflow.stages.find(s => s.name === 'done');
|
|
142
|
+
if (doneStage) {
|
|
143
|
+
await updateDeliveryStatus(delivery.id, 'done', doneStage.id);
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
await updateDeliveryStatus(delivery.id, 'done');
|
|
147
|
+
}
|
|
148
|
+
console.log(`[auto-review] Advanced delivery "${delivery.name}" to done (already reviewed once)`);
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
console.warn(`[auto-review] Failed to advance delivery "${delivery.name}" to done:`, err.message);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
// If no deliveries need a first review, we're done with this strategy
|
|
155
|
+
if (needsReview.length === 0)
|
|
156
|
+
continue;
|
|
157
|
+
// Transition first-time verify deliveries to in_review before spawning
|
|
158
|
+
for (const delivery of needsReview) {
|
|
159
|
+
try {
|
|
160
|
+
const workflow = await fetchEffectiveWorkflow(delivery.id);
|
|
161
|
+
const inReviewStage = workflow.stages.find(s => s.name === 'in_review');
|
|
162
|
+
if (inReviewStage) {
|
|
163
|
+
await updateDeliveryStatus(delivery.id, 'in_review', inReviewStage.id);
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
await updateDeliveryStatus(delivery.id, 'in_review');
|
|
167
|
+
}
|
|
168
|
+
markDeliveryReviewed(delivery.id);
|
|
169
|
+
console.log(`[auto-review] Moved delivery "${delivery.name}" from verify to in_review`);
|
|
170
|
+
}
|
|
171
|
+
catch (err) {
|
|
172
|
+
console.warn(`[auto-review] Failed to transition delivery "${delivery.name}" to in_review:`, err.message);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
// Spawn a review team for this strategy
|
|
176
|
+
console.log(`[listener] Auto-review: spawning review team for "${strategy.strategy_name}" (${needsReview.length} deliveries for review)`);
|
|
177
|
+
await spawnReviewTeamForStrategy(config, roles, strategy.strategy_id, strategy.strategy_name);
|
|
178
|
+
}
|
|
179
|
+
catch (err) {
|
|
180
|
+
console.warn(`[listener] Auto-review check failed for "${strategy.strategy_name}":`, err.message);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Check for pending review requests and spawn fresh review teams.
|
|
186
|
+
*
|
|
187
|
+
* Polls for strategies with review_requested_at set. For each request,
|
|
188
|
+
* spawns a fresh review team (skipped if a team is already active) and
|
|
189
|
+
* clears the flag.
|
|
190
|
+
*/
|
|
191
|
+
export async function checkReviewRequests(config, roles) {
|
|
192
|
+
try {
|
|
193
|
+
// Aggregate review requests across all products
|
|
194
|
+
const requests = [];
|
|
195
|
+
for (const product of config.products) {
|
|
196
|
+
const productRequests = await getReviewRequests(product.id);
|
|
197
|
+
requests.push(...productRequests);
|
|
198
|
+
}
|
|
199
|
+
if (requests.length === 0)
|
|
200
|
+
return;
|
|
201
|
+
for (const request of requests) {
|
|
202
|
+
try {
|
|
203
|
+
await spawnReviewTeamForStrategy(config, roles, request.strategyId, request.strategyName);
|
|
204
|
+
// Flag stays set while review is in progress (UI reads it).
|
|
205
|
+
// The activeTeams guard in spawnStrategyTeam prevents double-spawning.
|
|
206
|
+
// Flag is cleared in strategy-completion.ts when the review team exits.
|
|
207
|
+
}
|
|
208
|
+
catch (err) {
|
|
209
|
+
console.warn(`[listener] Failed to process review request for "${request.strategyName}":`, err.message);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
catch (err) {
|
|
214
|
+
console.warn('[listener] Failed to check review requests:', err.message);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
//# sourceMappingURL=listener-review.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listener-review.js","sourceRoot":"","sources":["../src/listener-review.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-resolution.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* MCP server path resolution and config generation.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Wraps daemon-core's resolveMcpServerPath with daemon's own import.meta.url
|
|
5
|
+
* so that createRequire resolves @telora/mcp-products from daemon's
|
|
6
|
+
* node_modules (where it is a declared dependency).
|
|
6
7
|
*/
|
|
7
|
-
export {
|
|
8
|
+
export { buildMcpConfig, writeMcpConfigFile, type McpConfigOptions, } from '@telora/daemon-core';
|
|
9
|
+
/**
|
|
10
|
+
* Resolve the MCP server path from daemon's package context.
|
|
11
|
+
*/
|
|
12
|
+
export declare function resolveMcpServerPath(): string;
|
|
8
13
|
//# sourceMappingURL=mcp-resolution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-resolution.d.ts","sourceRoot":"","sources":["../src/mcp-resolution.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"mcp-resolution.d.ts","sourceRoot":"","sources":["../src/mcp-resolution.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,KAAK,gBAAgB,GACtB,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
|
package/dist/mcp-resolution.js
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* MCP server path resolution and config generation.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Wraps daemon-core's resolveMcpServerPath with daemon's own import.meta.url
|
|
5
|
+
* so that createRequire resolves @telora/mcp-products from daemon's
|
|
6
|
+
* node_modules (where it is a declared dependency).
|
|
6
7
|
*/
|
|
7
|
-
|
|
8
|
+
import { resolveMcpServerPath as _resolveMcpServerPath } from '@telora/daemon-core';
|
|
9
|
+
export { buildMcpConfig, writeMcpConfigFile, } from '@telora/daemon-core';
|
|
10
|
+
/**
|
|
11
|
+
* Resolve the MCP server path from daemon's package context.
|
|
12
|
+
*/
|
|
13
|
+
export function resolveMcpServerPath() {
|
|
14
|
+
return _resolveMcpServerPath(import.meta.url);
|
|
15
|
+
}
|
|
8
16
|
//# sourceMappingURL=mcp-resolution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-resolution.js","sourceRoot":"","sources":["../src/mcp-resolution.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"mcp-resolution.js","sourceRoot":"","sources":["../src/mcp-resolution.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,oBAAoB,IAAI,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EACL,cAAc,EACd,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,MAAM,UAAU,oBAAoB;IAClC,OAAO,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-lifecycle.d.ts","sourceRoot":"","sources":["../src/session-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKlE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAa7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"session-lifecycle.d.ts","sourceRoot":"","sources":["../src/session-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAKlE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAa7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA0G7C,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,uBAAuB,CAAC;IAChC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,uBAAuB,GAAG,IAAI,CAyHzE;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,CAiBf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAuFf"}
|
|
@@ -48,18 +48,26 @@ async function handleCompletionEvent(ctx) {
|
|
|
48
48
|
terminateTeam(strategyId);
|
|
49
49
|
return;
|
|
50
50
|
}
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
|
|
54
|
-
if
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
// Check for open issues across actionable deliveries.
|
|
52
|
+
// in_review deliveries only stay alive if they have open issues created
|
|
53
|
+
// by the review agent. On initial spawn the review prompt is injected;
|
|
54
|
+
// on subsequent cycles, if review created no issues the work is done.
|
|
55
|
+
const OPEN_ISSUE_STATUSES = new Set(['To Do', 'In Progress', 'Blocked', 'In Review']);
|
|
56
|
+
const hasOpenIssues = currentIssues.some(i => actionableDeliveryIds.has(i.deliveryId) && OPEN_ISSUE_STATUSES.has(i.status));
|
|
57
|
+
if (!hasOpenIssues) {
|
|
58
|
+
const onlyInReview = currentDeliveries
|
|
59
|
+
.filter(d => actionableDeliveryIds.has(d.id))
|
|
60
|
+
.every(d => d.executionStatus === 'in_review');
|
|
61
|
+
if (onlyInReview) {
|
|
62
|
+
console.log(`[strategy-executor] Review complete for "${strategyName}" -- no issues found. ` +
|
|
63
|
+
`Terminating team. Auto-advance will handle done transition.`);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
58
66
|
console.log(`[strategy-executor] Actionable deliveries have no open issues for "${strategyName}" -- ` +
|
|
59
67
|
`terminating team. Auto-advance will handle verify transition.`);
|
|
60
|
-
terminateTeam(strategyId);
|
|
61
|
-
return;
|
|
62
68
|
}
|
|
69
|
+
terminateTeam(strategyId);
|
|
70
|
+
return;
|
|
63
71
|
}
|
|
64
72
|
// Mid-strategy handoff: actionable work with open issues remains.
|
|
65
73
|
// Send work immediately and reset the completion detector for the next cycle.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-lifecycle.js","sourceRoot":"","sources":["../src/session-lifecycle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-lifecycle.js","sourceRoot":"","sources":["../src/session-lifecycle.ts"],"names":[],"mappings":"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"}
|
package/dist/state-cascade.d.ts
CHANGED
|
@@ -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
|