codekin 0.6.4 → 0.6.5
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/README.md +2 -2
- package/bin/codekin.mjs +69 -6
- package/dist/assets/{index-BRB_Ksyk.js → index-B0xIzdCK.js} +39 -34
- package/dist/index.html +1 -1
- package/package.json +3 -3
- package/server/dist/claude-process.d.ts +1 -0
- package/server/dist/claude-process.js +4 -1
- package/server/dist/claude-process.js.map +1 -1
- package/server/dist/commit-event-handler.d.ts +14 -1
- package/server/dist/commit-event-handler.js +40 -8
- package/server/dist/commit-event-handler.js.map +1 -1
- package/server/dist/config.d.ts +12 -0
- package/server/dist/config.js +24 -0
- package/server/dist/config.js.map +1 -1
- package/server/dist/orchestrator-children.d.ts +41 -1
- package/server/dist/orchestrator-children.js +87 -1
- package/server/dist/orchestrator-children.js.map +1 -1
- package/server/dist/orchestrator-monitor.js +13 -0
- package/server/dist/orchestrator-monitor.js.map +1 -1
- package/server/dist/orchestrator-notify.d.ts +29 -0
- package/server/dist/orchestrator-notify.js +27 -0
- package/server/dist/orchestrator-notify.js.map +1 -0
- package/server/dist/orchestrator-session-router.js +3 -0
- package/server/dist/orchestrator-session-router.js.map +1 -1
- package/server/dist/session-lifecycle.d.ts +1 -0
- package/server/dist/session-lifecycle.js +1 -0
- package/server/dist/session-lifecycle.js.map +1 -1
- package/server/dist/session-manager.d.ts +30 -0
- package/server/dist/session-manager.js +105 -6
- package/server/dist/session-manager.js.map +1 -1
- package/server/dist/session-routes.js +4 -1
- package/server/dist/session-routes.js.map +1 -1
- package/server/dist/tsconfig.tsbuildinfo +1 -1
- package/server/dist/upload-routes.js +33 -5
- package/server/dist/upload-routes.js.map +1 -1
- package/server/dist/workflow-engine.d.ts +1 -0
- package/server/dist/workflow-engine.js +25 -12
- package/server/dist/workflow-engine.js.map +1 -1
- package/server/dist/workflow-loader.js +95 -11
- package/server/dist/workflow-loader.js.map +1 -1
- package/server/dist/workflow-routes.js +36 -2
- package/server/dist/workflow-routes.js.map +1 -1
- package/server/dist/ws-message-handler.js +5 -1
- package/server/dist/ws-message-handler.js.map +1 -1
- package/server/dist/ws-server.js +28 -10
- package/server/dist/ws-server.js.map +1 -1
package/dist/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
7
7
|
<title>Codekin</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-B0xIzdCK.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="/assets/index-Q2WSVlHo.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body class="bg-neutral-12 text-neutral-2">
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "codekin",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"licenseNotes": "dompurify is dual-licensed (MPL-2.0 OR Apache-2.0); both are permissively compatible with MIT for library use. lightningcss (MPL-2.0) is a build-time-only dependency used by TailwindCSS and is not included in distributed artifacts.",
|
|
6
6
|
"author": "multiplier-labs",
|
|
@@ -69,8 +69,8 @@
|
|
|
69
69
|
"globals": "^17.4.0",
|
|
70
70
|
"highlight.js": "^11.11.1",
|
|
71
71
|
"jsdom": "^29.0.1",
|
|
72
|
-
"marked": "^
|
|
73
|
-
"marked-highlight": "^2.2.
|
|
72
|
+
"marked": "^18.0.2",
|
|
73
|
+
"marked-highlight": "^2.2.4",
|
|
74
74
|
"react": "^19.2.0",
|
|
75
75
|
"react-diff-view": "^3.3.2",
|
|
76
76
|
"react-dom": "^19.2.0",
|
|
@@ -51,6 +51,7 @@ export interface ClaudeProcessEvents {
|
|
|
51
51
|
todo_update: [tasks: TaskItem[]];
|
|
52
52
|
image: [base64: string, mediaType: string];
|
|
53
53
|
result: [text: string, isError: boolean];
|
|
54
|
+
rate_limit: [event: Record<string, unknown>];
|
|
54
55
|
error: [message: string];
|
|
55
56
|
exit: [code: number | null, signal: string | null];
|
|
56
57
|
}
|
|
@@ -233,7 +233,7 @@ export class ClaudeProcess extends EventEmitter {
|
|
|
233
233
|
console.log(`[event] type=${event.type} subtype=${subtype || '-'}`);
|
|
234
234
|
}
|
|
235
235
|
// Log all event types we DON'T handle to catch unknown protocol messages
|
|
236
|
-
if (!['system', 'stream_event', 'assistant', 'user', 'result', 'control_request'].includes(event.type)) {
|
|
236
|
+
if (!['system', 'stream_event', 'assistant', 'user', 'result', 'control_request', 'rate_limit_event'].includes(event.type)) {
|
|
237
237
|
console.log(`[event-unhandled] type=${event.type} data=${JSON.stringify(event).slice(0, 300)}`);
|
|
238
238
|
}
|
|
239
239
|
switch (event.type) {
|
|
@@ -265,6 +265,9 @@ export class ClaudeProcess extends EventEmitter {
|
|
|
265
265
|
this.handleControlRequest(ctrlEvent);
|
|
266
266
|
break;
|
|
267
267
|
}
|
|
268
|
+
case 'rate_limit_event':
|
|
269
|
+
this.emit('rate_limit', event);
|
|
270
|
+
break;
|
|
268
271
|
}
|
|
269
272
|
}
|
|
270
273
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-process.js","sourceRoot":"","sources":["../claude-process.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-process.js","sourceRoot":"","sources":["../claude-process.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,11 @@
|
|
|
13
13
|
* 4. Commit hash dedup — in-memory Map with 1h TTL, reject duplicates
|
|
14
14
|
* 5. Concurrency cap — max 1 running commit-review per repo
|
|
15
15
|
*/
|
|
16
|
+
/**
|
|
17
|
+
* Sanitize a commit event field before it reaches a prompt.
|
|
18
|
+
* Strips ASCII control characters (0x00–0x1f, 0x7f) and truncates to maxLen.
|
|
19
|
+
*/
|
|
20
|
+
export declare function sanitizeCommitField(s: string, maxLen?: number): string;
|
|
16
21
|
export interface CommitEvent {
|
|
17
22
|
repoPath: string;
|
|
18
23
|
branch: string;
|
|
@@ -26,10 +31,18 @@ export interface CommitEventResult {
|
|
|
26
31
|
runId?: string;
|
|
27
32
|
}
|
|
28
33
|
export declare class CommitEventHandler {
|
|
29
|
-
/**
|
|
34
|
+
/**
|
|
35
|
+
* `${repoPath}::${commitHash}` → timestamp recorded.
|
|
36
|
+
*
|
|
37
|
+
* Keying by repoPath as well as the hash prevents a duplicate-suppression
|
|
38
|
+
* cross-talk between repos: two unrelated repos can legitimately produce
|
|
39
|
+
* the same short hash (or the same full hash, in degenerate cases) and
|
|
40
|
+
* each deserves its own commit-review run.
|
|
41
|
+
*/
|
|
30
42
|
private seenCommits;
|
|
31
43
|
private cleanupTimer;
|
|
32
44
|
constructor();
|
|
45
|
+
private dedupKey;
|
|
33
46
|
/**
|
|
34
47
|
* Process a commit event through the filter chain.
|
|
35
48
|
* Returns accepted=true if a workflow run was dispatched.
|
|
@@ -17,6 +17,17 @@ import { getWorkflowEngine } from './workflow-engine.js';
|
|
|
17
17
|
import { loadWorkflowConfig } from './workflow-config.js';
|
|
18
18
|
import { getWorkflowCommitPrefixes, isWorkflowReportsBranch } from './workflow-loader.js';
|
|
19
19
|
// ---------------------------------------------------------------------------
|
|
20
|
+
// Input sanitization
|
|
21
|
+
// ---------------------------------------------------------------------------
|
|
22
|
+
/**
|
|
23
|
+
* Sanitize a commit event field before it reaches a prompt.
|
|
24
|
+
* Strips ASCII control characters (0x00–0x1f, 0x7f) and truncates to maxLen.
|
|
25
|
+
*/
|
|
26
|
+
export function sanitizeCommitField(s, maxLen = 500) {
|
|
27
|
+
// eslint-disable-next-line no-control-regex
|
|
28
|
+
return s.replace(/[\x00-\x1f\x7f]/g, '').slice(0, maxLen);
|
|
29
|
+
}
|
|
30
|
+
// ---------------------------------------------------------------------------
|
|
20
31
|
// CommitEventHandler
|
|
21
32
|
// ---------------------------------------------------------------------------
|
|
22
33
|
/** TTL for commit hash deduplication entries (1 hour). */
|
|
@@ -24,26 +35,40 @@ const DEDUP_TTL_MS = 60 * 60 * 1000;
|
|
|
24
35
|
/** Interval for cleaning up expired dedup entries (10 minutes). */
|
|
25
36
|
const DEDUP_CLEANUP_INTERVAL_MS = 10 * 60 * 1000;
|
|
26
37
|
export class CommitEventHandler {
|
|
27
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* `${repoPath}::${commitHash}` → timestamp recorded.
|
|
40
|
+
*
|
|
41
|
+
* Keying by repoPath as well as the hash prevents a duplicate-suppression
|
|
42
|
+
* cross-talk between repos: two unrelated repos can legitimately produce
|
|
43
|
+
* the same short hash (or the same full hash, in degenerate cases) and
|
|
44
|
+
* each deserves its own commit-review run.
|
|
45
|
+
*/
|
|
28
46
|
seenCommits = new Map();
|
|
29
47
|
cleanupTimer;
|
|
30
48
|
constructor() {
|
|
31
49
|
// Periodically prune expired dedup entries
|
|
32
50
|
this.cleanupTimer = setInterval(() => this.pruneExpired(), DEDUP_CLEANUP_INTERVAL_MS);
|
|
33
51
|
}
|
|
52
|
+
dedupKey(repoPath, commitHash) {
|
|
53
|
+
return `${repoPath}::${commitHash}`;
|
|
54
|
+
}
|
|
34
55
|
/**
|
|
35
56
|
* Process a commit event through the filter chain.
|
|
36
57
|
* Returns accepted=true if a workflow run was dispatched.
|
|
37
58
|
*/
|
|
38
59
|
async handle(event) {
|
|
60
|
+
// Sanitize user-supplied fields before any filter checks or downstream use
|
|
61
|
+
const branch = sanitizeCommitField(event.branch, 200);
|
|
62
|
+
const commitMessage = sanitizeCommitField(event.commitMessage, 500);
|
|
63
|
+
const author = sanitizeCommitField(event.author, 200);
|
|
39
64
|
// Layer 1: Branch filter
|
|
40
|
-
if (isWorkflowReportsBranch(
|
|
65
|
+
if (isWorkflowReportsBranch(branch)) {
|
|
41
66
|
return { accepted: false, reason: 'Rejected: reports branch' };
|
|
42
67
|
}
|
|
43
68
|
// Layer 2: Message filter — reject if message starts with any workflow commit prefix
|
|
44
69
|
const prefixes = getWorkflowCommitPrefixes();
|
|
45
70
|
for (const prefix of prefixes) {
|
|
46
|
-
if (
|
|
71
|
+
if (commitMessage.startsWith(prefix)) {
|
|
47
72
|
return { accepted: false, reason: `Rejected: workflow commit message (${prefix})` };
|
|
48
73
|
}
|
|
49
74
|
}
|
|
@@ -53,11 +78,13 @@ export class CommitEventHandler {
|
|
|
53
78
|
if (!repoConfig) {
|
|
54
79
|
return { accepted: false, reason: 'Rejected: no enabled commit-review config for this repo' };
|
|
55
80
|
}
|
|
56
|
-
// Layer 4: Commit hash dedup
|
|
57
|
-
|
|
81
|
+
// Layer 4: Commit hash dedup (scoped per repoPath so identical hashes
|
|
82
|
+
// across different repos do not suppress each other).
|
|
83
|
+
const dedupKey = this.dedupKey(event.repoPath, event.commitHash);
|
|
84
|
+
if (this.seenCommits.has(dedupKey)) {
|
|
58
85
|
return { accepted: false, reason: 'Rejected: duplicate commit hash' };
|
|
59
86
|
}
|
|
60
|
-
this.seenCommits.set(
|
|
87
|
+
this.seenCommits.set(dedupKey, Date.now());
|
|
61
88
|
// Layer 5: Concurrency cap — max 1 running commit-review per repo
|
|
62
89
|
const engine = getWorkflowEngine();
|
|
63
90
|
const activeRuns = engine.listRuns({ kind: 'commit-review', status: 'running', limit: 100 });
|
|
@@ -71,6 +98,9 @@ export class CommitEventHandler {
|
|
|
71
98
|
repoPath: event.repoPath,
|
|
72
99
|
repoName: repoConfig.name,
|
|
73
100
|
commitHash: event.commitHash,
|
|
101
|
+
commitMessage,
|
|
102
|
+
branch,
|
|
103
|
+
author,
|
|
74
104
|
customPrompt: repoConfig.customPrompt,
|
|
75
105
|
model: repoConfig.model,
|
|
76
106
|
provider: repoConfig.provider,
|
|
@@ -79,6 +109,8 @@ export class CommitEventHandler {
|
|
|
79
109
|
return { accepted: true, runId: run.id };
|
|
80
110
|
}
|
|
81
111
|
catch (err) {
|
|
112
|
+
// Roll back the dedup entry so a later retry isn't suppressed.
|
|
113
|
+
this.seenCommits.delete(dedupKey);
|
|
82
114
|
const msg = err instanceof Error ? err.message : String(err);
|
|
83
115
|
console.error(`[commit-event] Failed to start run for ${event.repoPath}:`, msg);
|
|
84
116
|
return { accepted: false, reason: `Failed to start run: ${msg}` };
|
|
@@ -87,9 +119,9 @@ export class CommitEventHandler {
|
|
|
87
119
|
/** Remove dedup entries older than the TTL. */
|
|
88
120
|
pruneExpired() {
|
|
89
121
|
const cutoff = Date.now() - DEDUP_TTL_MS;
|
|
90
|
-
for (const [
|
|
122
|
+
for (const [key, ts] of this.seenCommits) {
|
|
91
123
|
if (ts < cutoff)
|
|
92
|
-
this.seenCommits.delete(
|
|
124
|
+
this.seenCommits.delete(key);
|
|
93
125
|
}
|
|
94
126
|
}
|
|
95
127
|
/** Clean up resources. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commit-event-handler.js","sourceRoot":"","sources":["../commit-event-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AACzD,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"commit-event-handler.js","sourceRoot":"","sources":["../commit-event-handler.ts"],"names":[],"mappings":"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"}
|
package/server/dist/config.d.ts
CHANGED
|
@@ -39,6 +39,18 @@ export declare const FRONTEND_DIST: string;
|
|
|
39
39
|
export declare const TRUST_PROXY: boolean;
|
|
40
40
|
/** GitHub organizations for repo listing (comma-separated). Empty string disables org listing. */
|
|
41
41
|
export declare const GH_ORGS: string[];
|
|
42
|
+
/**
|
|
43
|
+
* Auto-restart Claude processes that were alive at the previous shutdown
|
|
44
|
+
* (and the always-on orchestrator session) when the server boots.
|
|
45
|
+
* Default: off. Set CODEKIN_AUTO_RESTORE_SESSIONS=true to opt in.
|
|
46
|
+
*/
|
|
47
|
+
export declare const AUTO_RESTORE_SESSIONS: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Run the orchestrator proactive monitor (15-minute polling that pokes the
|
|
50
|
+
* orchestrator Claude session for new reports and idle repos).
|
|
51
|
+
* Default: off. Set CODEKIN_ORCHESTRATOR_MONITOR=true to opt in.
|
|
52
|
+
*/
|
|
53
|
+
export declare const ORCHESTRATOR_MONITOR: boolean;
|
|
42
54
|
/** Default display name for the orchestrator agent. Configurable via CODEKIN_AGENT_NAME env var. */
|
|
43
55
|
export declare const AGENT_DISPLAY_NAME: string;
|
|
44
56
|
export declare function setAgentDisplayNameResolver(resolver: () => string): void;
|
package/server/dist/config.js
CHANGED
|
@@ -100,6 +100,30 @@ export const TRUST_PROXY = process.env.TRUST_PROXY === 'true' || process.env.TRU
|
|
|
100
100
|
/** GitHub organizations for repo listing (comma-separated). Empty string disables org listing. */
|
|
101
101
|
export const GH_ORGS = (process.env.GH_ORG || '').split(',').map(s => s.trim()).filter(Boolean);
|
|
102
102
|
// ---------------------------------------------------------------------------
|
|
103
|
+
// Background activity ("quiet mode" defaults)
|
|
104
|
+
// ---------------------------------------------------------------------------
|
|
105
|
+
//
|
|
106
|
+
// Codekin authenticates via the user's `claude` CLI, so any background
|
|
107
|
+
// API call is billed against their personal subscription quota. Default
|
|
108
|
+
// behaviour is therefore "make no Claude API calls until the user explicitly
|
|
109
|
+
// asks for one." Each background source is opt-in via env var.
|
|
110
|
+
function envFlag(name) {
|
|
111
|
+
const v = process.env[name];
|
|
112
|
+
return v === 'true' || v === '1';
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Auto-restart Claude processes that were alive at the previous shutdown
|
|
116
|
+
* (and the always-on orchestrator session) when the server boots.
|
|
117
|
+
* Default: off. Set CODEKIN_AUTO_RESTORE_SESSIONS=true to opt in.
|
|
118
|
+
*/
|
|
119
|
+
export const AUTO_RESTORE_SESSIONS = envFlag('CODEKIN_AUTO_RESTORE_SESSIONS');
|
|
120
|
+
/**
|
|
121
|
+
* Run the orchestrator proactive monitor (15-minute polling that pokes the
|
|
122
|
+
* orchestrator Claude session for new reports and idle repos).
|
|
123
|
+
* Default: off. Set CODEKIN_ORCHESTRATOR_MONITOR=true to opt in.
|
|
124
|
+
*/
|
|
125
|
+
export const ORCHESTRATOR_MONITOR = envFlag('CODEKIN_ORCHESTRATOR_MONITOR');
|
|
126
|
+
// ---------------------------------------------------------------------------
|
|
103
127
|
// Orchestrator (Agent)
|
|
104
128
|
// ---------------------------------------------------------------------------
|
|
105
129
|
/** Default display name for the orchestrator agent. Configurable via CODEKIN_AGENT_NAME env var. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* and result polling.
|
|
7
7
|
*/
|
|
8
8
|
import type { SessionManager } from './session-manager.js';
|
|
9
|
+
import { type OrchestratorNotifyArgs } from './orchestrator-notify.js';
|
|
9
10
|
export interface ChildSessionRequest {
|
|
10
11
|
/** Target repository path. */
|
|
11
12
|
repo: string;
|
|
@@ -25,6 +26,13 @@ export interface ChildSessionRequest {
|
|
|
25
26
|
model?: string;
|
|
26
27
|
/** Optional allowedTools override. When omitted, uses AGENT_CHILD_ALLOWED_TOOLS. */
|
|
27
28
|
allowedTools?: string[];
|
|
29
|
+
/**
|
|
30
|
+
* Session ID of the orchestrator that spawned this child. When set, the
|
|
31
|
+
* parent receives a push notification on terminal-state transitions.
|
|
32
|
+
* Children created without this field (e.g. internal/test fixtures) do
|
|
33
|
+
* not generate notifications.
|
|
34
|
+
*/
|
|
35
|
+
parentSessionId?: string;
|
|
28
36
|
}
|
|
29
37
|
export type ChildStatus = 'starting' | 'running' | 'completed' | 'failed' | 'timed_out';
|
|
30
38
|
export interface ChildSession {
|
|
@@ -35,7 +43,18 @@ export interface ChildSession {
|
|
|
35
43
|
completedAt: string | null;
|
|
36
44
|
result: string | null;
|
|
37
45
|
error: string | null;
|
|
46
|
+
/**
|
|
47
|
+
* Timestamp when a terminal-state notification was delivered to the
|
|
48
|
+
* parent orchestrator. Used to enforce single-fire idempotency.
|
|
49
|
+
*/
|
|
50
|
+
terminalNotifiedAt: string | null;
|
|
38
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Function signature for delivering a terminal-state notification to the
|
|
54
|
+
* parent orchestrator session. Injectable via the OrchestratorChildManager
|
|
55
|
+
* constructor so unit tests can stub the delivery without touching socket I/O.
|
|
56
|
+
*/
|
|
57
|
+
export type ChildNotifyFn = (args: OrchestratorNotifyArgs) => boolean;
|
|
39
58
|
/**
|
|
40
59
|
* Default allowed tools for agent child sessions. Covers standard dev
|
|
41
60
|
* operations without granting arbitrary shell access. Destructive commands
|
|
@@ -46,7 +65,10 @@ export declare const AGENT_CHILD_ALLOWED_TOOLS: string[];
|
|
|
46
65
|
export declare class OrchestratorChildManager {
|
|
47
66
|
private children;
|
|
48
67
|
private sessions;
|
|
49
|
-
|
|
68
|
+
private notify;
|
|
69
|
+
constructor(sessions: SessionManager, opts?: {
|
|
70
|
+
notify?: ChildNotifyFn;
|
|
71
|
+
});
|
|
50
72
|
/** Get all active/recent child sessions. */
|
|
51
73
|
list(): ChildSession[];
|
|
52
74
|
/** Get a child session by ID. */
|
|
@@ -60,6 +82,24 @@ export declare class OrchestratorChildManager {
|
|
|
60
82
|
* Returns the child session info or throws if at capacity.
|
|
61
83
|
*/
|
|
62
84
|
spawn(request: ChildSessionRequest): Promise<ChildSession>;
|
|
85
|
+
/**
|
|
86
|
+
* Deliver a single terminal-state notification to the parent orchestrator
|
|
87
|
+
* session. No-op (and idempotent) when the child has no parent, the status
|
|
88
|
+
* is not terminal, or a notification has already been delivered.
|
|
89
|
+
*/
|
|
90
|
+
private notifyTerminal;
|
|
91
|
+
/**
|
|
92
|
+
* Build the multi-line body for a terminal-state notification: status,
|
|
93
|
+
* branch, repo, optional error string, and an action hint tailored to
|
|
94
|
+
* the terminal status.
|
|
95
|
+
*/
|
|
96
|
+
private buildTerminalNotificationBody;
|
|
97
|
+
/**
|
|
98
|
+
* Build a single-line hint about how to proceed, tailored to the status:
|
|
99
|
+
* - timed_out / failed → point at the worktree so partial work can be salvaged
|
|
100
|
+
* - completed → remind that the PR may still need to be opened
|
|
101
|
+
*/
|
|
102
|
+
private buildHintLine;
|
|
63
103
|
/**
|
|
64
104
|
* Build a focused task prompt for a child session.
|
|
65
105
|
*/
|
|
@@ -7,6 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { randomUUID } from 'crypto';
|
|
9
9
|
import { getAgentDisplayName } from './config.js';
|
|
10
|
+
import { sendOrchestratorNotification, } from './orchestrator-notify.js';
|
|
11
|
+
/** Statuses considered terminal — once entered, the child is done. */
|
|
12
|
+
const TERMINAL_STATUSES = new Set([
|
|
13
|
+
'completed',
|
|
14
|
+
'failed',
|
|
15
|
+
'timed_out',
|
|
16
|
+
]);
|
|
10
17
|
// ---------------------------------------------------------------------------
|
|
11
18
|
// Constants
|
|
12
19
|
// ---------------------------------------------------------------------------
|
|
@@ -47,8 +54,10 @@ export const AGENT_CHILD_ALLOWED_TOOLS = [
|
|
|
47
54
|
export class OrchestratorChildManager {
|
|
48
55
|
children = new Map();
|
|
49
56
|
sessions;
|
|
50
|
-
|
|
57
|
+
notify;
|
|
58
|
+
constructor(sessions, opts) {
|
|
51
59
|
this.sessions = sessions;
|
|
60
|
+
this.notify = opts?.notify ?? ((args) => sendOrchestratorNotification(sessions, args));
|
|
52
61
|
}
|
|
53
62
|
/** Get all active/recent child sessions. */
|
|
54
63
|
list() {
|
|
@@ -107,6 +116,7 @@ export class OrchestratorChildManager {
|
|
|
107
116
|
completedAt: null,
|
|
108
117
|
result: null,
|
|
109
118
|
error: null,
|
|
119
|
+
terminalNotifiedAt: null,
|
|
110
120
|
};
|
|
111
121
|
this.children.set(sessionId, child);
|
|
112
122
|
try {
|
|
@@ -145,9 +155,82 @@ export class OrchestratorChildManager {
|
|
|
145
155
|
child.status = 'failed';
|
|
146
156
|
child.error = err instanceof Error ? err.message : String(err);
|
|
147
157
|
child.completedAt = new Date().toISOString();
|
|
158
|
+
this.notifyTerminal(child);
|
|
148
159
|
return child;
|
|
149
160
|
}
|
|
150
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Deliver a single terminal-state notification to the parent orchestrator
|
|
164
|
+
* session. No-op (and idempotent) when the child has no parent, the status
|
|
165
|
+
* is not terminal, or a notification has already been delivered.
|
|
166
|
+
*/
|
|
167
|
+
notifyTerminal(child) {
|
|
168
|
+
if (child.terminalNotifiedAt)
|
|
169
|
+
return;
|
|
170
|
+
if (!TERMINAL_STATUSES.has(child.status))
|
|
171
|
+
return;
|
|
172
|
+
const parentSessionId = child.request.parentSessionId;
|
|
173
|
+
if (!parentSessionId)
|
|
174
|
+
return;
|
|
175
|
+
const args = {
|
|
176
|
+
parentSessionId,
|
|
177
|
+
label: 'Child Session Stopped',
|
|
178
|
+
title: `Session: ${getAgentDisplayName().toLowerCase()}:${child.request.branchName} (${child.id})`,
|
|
179
|
+
body: this.buildTerminalNotificationBody(child),
|
|
180
|
+
};
|
|
181
|
+
// Only stamp `terminalNotifiedAt` on confirmed delivery so that a
|
|
182
|
+
// transient parent-down (notify returns false / throws) does not
|
|
183
|
+
// permanently suppress future retries. Idempotency is still enforced
|
|
184
|
+
// by the early-return on terminalNotifiedAt at the top of this method.
|
|
185
|
+
let delivered = false;
|
|
186
|
+
try {
|
|
187
|
+
delivered = this.notify(args);
|
|
188
|
+
}
|
|
189
|
+
catch (err) {
|
|
190
|
+
console.warn(`[orchestrator-child] Failed to notify parent ${parentSessionId} for ${child.id}:`, err);
|
|
191
|
+
}
|
|
192
|
+
if (delivered) {
|
|
193
|
+
child.terminalNotifiedAt = new Date().toISOString();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Build the multi-line body for a terminal-state notification: status,
|
|
198
|
+
* branch, repo, optional error string, and an action hint tailored to
|
|
199
|
+
* the terminal status.
|
|
200
|
+
*/
|
|
201
|
+
buildTerminalNotificationBody(child) {
|
|
202
|
+
const lines = [
|
|
203
|
+
`Status: ${child.status}`,
|
|
204
|
+
`Branch: ${child.request.branchName}`,
|
|
205
|
+
`Repo: ${child.request.repo}`,
|
|
206
|
+
];
|
|
207
|
+
if (child.error)
|
|
208
|
+
lines.push(`Error: ${child.error}`);
|
|
209
|
+
lines.push(this.buildHintLine(child));
|
|
210
|
+
return lines.join('\n');
|
|
211
|
+
}
|
|
212
|
+
/**
|
|
213
|
+
* Build a single-line hint about how to proceed, tailored to the status:
|
|
214
|
+
* - timed_out / failed → point at the worktree so partial work can be salvaged
|
|
215
|
+
* - completed → remind that the PR may still need to be opened
|
|
216
|
+
*/
|
|
217
|
+
buildHintLine(child) {
|
|
218
|
+
const session = this.sessions.get(child.id);
|
|
219
|
+
const worktreePath = session?.worktreePath;
|
|
220
|
+
if (child.status === 'timed_out' || child.status === 'failed') {
|
|
221
|
+
const where = worktreePath ?? `${child.request.repo} (no worktree)`;
|
|
222
|
+
return `Inspect worktree at ${where} for partial work.`;
|
|
223
|
+
}
|
|
224
|
+
if (child.status === 'completed') {
|
|
225
|
+
const policy = child.request.completionPolicy;
|
|
226
|
+
if (policy === 'pr')
|
|
227
|
+
return 'Verify the PR was opened — push and create one if not.';
|
|
228
|
+
if (policy === 'merge')
|
|
229
|
+
return 'Verify the branch was pushed.';
|
|
230
|
+
return 'Verify changes were committed locally as expected.';
|
|
231
|
+
}
|
|
232
|
+
return 'Review the child session output before deciding next steps.';
|
|
233
|
+
}
|
|
151
234
|
/**
|
|
152
235
|
* Build a focused task prompt for a child session.
|
|
153
236
|
*/
|
|
@@ -275,6 +358,9 @@ export class OrchestratorChildManager {
|
|
|
275
358
|
// handleClaudeResult should have already done this, but edge cases
|
|
276
359
|
// (nudge race, missed result event) can leave the flag stuck.
|
|
277
360
|
this.sessions.clearProcessingFlag(child.id);
|
|
361
|
+
// Push-notify the parent orchestrator so it learns about the terminal
|
|
362
|
+
// state immediately, instead of waiting for the 30-minute polling cron.
|
|
363
|
+
this.notifyTerminal(child);
|
|
278
364
|
}
|
|
279
365
|
}
|
|
280
366
|
/**
|