@agents-ensemble/core 0.6.5 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/conductor/conductor-agent.d.ts +50 -14
- package/dist/conductor/conductor-agent.d.ts.map +1 -1
- package/dist/conductor/conductor-agent.js +1 -96
- package/dist/conductor/conductor-agent.js.map +1 -1
- package/dist/conductor/conductor-auth.d.ts +36 -6
- package/dist/conductor/conductor-auth.d.ts.map +1 -1
- package/dist/conductor/conductor-auth.js +59 -7
- package/dist/conductor/conductor-auth.js.map +1 -1
- package/dist/conductor/conductor-pi-auth.d.ts +75 -0
- package/dist/conductor/conductor-pi-auth.d.ts.map +1 -0
- package/dist/conductor/conductor-pi-auth.js +524 -0
- package/dist/conductor/conductor-pi-auth.js.map +1 -0
- package/dist/conductor/conductor-send-reconnect.d.ts +10 -6
- package/dist/conductor/conductor-send-reconnect.d.ts.map +1 -1
- package/dist/conductor/conductor-send-reconnect.js +6 -4
- package/dist/conductor/conductor-send-reconnect.js.map +1 -1
- package/dist/conductor/conductor-session-driver.d.ts +4 -4
- package/dist/conductor/conductor-session-driver.d.ts.map +1 -1
- package/dist/conductor/conductor-session-driver.js +47 -29
- package/dist/conductor/conductor-session-driver.js.map +1 -1
- package/dist/conductor/conductor-session.d.ts +5 -1
- package/dist/conductor/conductor-session.d.ts.map +1 -1
- package/dist/conductor/conductor-session.js +138 -32
- package/dist/conductor/conductor-session.js.map +1 -1
- package/dist/conductor/conductor-tool-pi-adapter.d.ts +13 -0
- package/dist/conductor/conductor-tool-pi-adapter.d.ts.map +1 -0
- package/dist/conductor/conductor-tool-pi-adapter.js +30 -0
- package/dist/conductor/conductor-tool-pi-adapter.js.map +1 -0
- package/dist/conductor/conductor-tool-sdk-adapter.d.ts +6 -0
- package/dist/conductor/conductor-tool-sdk-adapter.d.ts.map +1 -0
- package/dist/conductor/conductor-tool-sdk-adapter.js +16 -0
- package/dist/conductor/conductor-tool-sdk-adapter.js.map +1 -0
- package/dist/conductor/conductor-tool.d.ts +35 -0
- package/dist/conductor/conductor-tool.d.ts.map +1 -0
- package/dist/conductor/conductor-tool.js +41 -0
- package/dist/conductor/conductor-tool.js.map +1 -0
- package/dist/conductor/cursor-sdk-conductor-agent.d.ts +18 -0
- package/dist/conductor/cursor-sdk-conductor-agent.d.ts.map +1 -0
- package/dist/conductor/cursor-sdk-conductor-agent.js +134 -0
- package/dist/conductor/cursor-sdk-conductor-agent.js.map +1 -0
- package/dist/conductor/index.d.ts +21 -7
- package/dist/conductor/index.d.ts.map +1 -1
- package/dist/conductor/index.js +11 -4
- package/dist/conductor/index.js.map +1 -1
- package/dist/conductor/list-conductor-models.d.ts +7 -2
- package/dist/conductor/list-conductor-models.d.ts.map +1 -1
- package/dist/conductor/list-conductor-models.js +9 -1
- package/dist/conductor/list-conductor-models.js.map +1 -1
- package/dist/conductor/pi-conductor-agent.d.ts +47 -0
- package/dist/conductor/pi-conductor-agent.d.ts.map +1 -0
- package/dist/conductor/pi-conductor-agent.js +479 -0
- package/dist/conductor/pi-conductor-agent.js.map +1 -0
- package/dist/conductor/pi-conductor-session.d.ts +20 -0
- package/dist/conductor/pi-conductor-session.d.ts.map +1 -0
- package/dist/conductor/pi-conductor-session.js +60 -0
- package/dist/conductor/pi-conductor-session.js.map +1 -0
- package/dist/conductor/pi-mcp-bridge.d.ts +65 -0
- package/dist/conductor/pi-mcp-bridge.d.ts.map +1 -0
- package/dist/conductor/pi-mcp-bridge.js +259 -0
- package/dist/conductor/pi-mcp-bridge.js.map +1 -0
- package/dist/conductor/pi-resource-loader.d.ts +148 -0
- package/dist/conductor/pi-resource-loader.d.ts.map +1 -0
- package/dist/conductor/pi-resource-loader.js +675 -0
- package/dist/conductor/pi-resource-loader.js.map +1 -0
- package/dist/conductor/session/dispatch-hold.d.ts +14 -0
- package/dist/conductor/session/dispatch-hold.d.ts.map +1 -1
- package/dist/conductor/session/dispatch-hold.js +30 -0
- package/dist/conductor/session/dispatch-hold.js.map +1 -1
- package/dist/conductor/session/events/index.d.ts +1 -1
- package/dist/conductor/session/events/index.d.ts.map +1 -1
- package/dist/conductor/session/events/index.js.map +1 -1
- package/dist/conductor/session/events/session-log-event-groups.d.ts +2 -2
- package/dist/conductor/session/events/session-log-event-groups.d.ts.map +1 -1
- package/dist/conductor/session/events/session-log-event-groups.js +1 -0
- package/dist/conductor/session/events/session-log-event-groups.js.map +1 -1
- package/dist/conductor/session/events/session-log-event.d.ts +10 -1
- package/dist/conductor/session/events/session-log-event.d.ts.map +1 -1
- package/dist/conductor/session/format-session-event.js +3 -0
- package/dist/conductor/session/format-session-event.js.map +1 -1
- package/dist/conductor/session/session-logger.d.ts.map +1 -1
- package/dist/conductor/session/session-logger.js +1 -0
- package/dist/conductor/session/session-logger.js.map +1 -1
- package/dist/config/defaults.d.ts +2 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +2 -0
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/index.d.ts +3 -3
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -2
- package/dist/config/index.js.map +1 -1
- package/dist/config/parse-config.d.ts.map +1 -1
- package/dist/config/parse-config.js +29 -1
- package/dist/config/parse-config.js.map +1 -1
- package/dist/config/resolve-settings.d.ts +25 -1
- package/dist/config/resolve-settings.d.ts.map +1 -1
- package/dist/config/resolve-settings.js +38 -1
- package/dist/config/resolve-settings.js.map +1 -1
- package/dist/config/types.d.ts +11 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/dispatch/prompt-worker-tool.d.ts +2 -2
- package/dist/dispatch/prompt-worker-tool.d.ts.map +1 -1
- package/dist/dispatch/prompt-worker-tool.js +1 -0
- package/dist/dispatch/prompt-worker-tool.js.map +1 -1
- package/dist/dispatch/session-usage-tool.d.ts +2 -2
- package/dist/dispatch/session-usage-tool.d.ts.map +1 -1
- package/dist/dispatch/session-usage-tool.js +2 -0
- package/dist/dispatch/session-usage-tool.js.map +1 -1
- package/dist/dispatch/set-dispatch-hold-tool.d.ts +2 -2
- package/dist/dispatch/set-dispatch-hold-tool.d.ts.map +1 -1
- package/dist/dispatch/set-dispatch-hold-tool.js +1 -0
- package/dist/dispatch/set-dispatch-hold-tool.js.map +1 -1
- package/dist/dispatch/worker-status-tool.d.ts +2 -2
- package/dist/dispatch/worker-status-tool.d.ts.map +1 -1
- package/dist/dispatch/worker-status-tool.js +2 -0
- package/dist/dispatch/worker-status-tool.js.map +1 -1
- package/dist/dispatch/yaml-tool-result.d.ts +3 -9
- package/dist/dispatch/yaml-tool-result.d.ts.map +1 -1
- package/dist/dispatch/yaml-tool-result.js.map +1 -1
- package/dist/escalation/answer-open-question-tool.d.ts +2 -2
- package/dist/escalation/answer-open-question-tool.d.ts.map +1 -1
- package/dist/escalation/answer-open-question-tool.js +1 -0
- package/dist/escalation/answer-open-question-tool.js.map +1 -1
- package/dist/escalation/ask-human-tool.d.ts +2 -2
- package/dist/escalation/ask-human-tool.d.ts.map +1 -1
- package/dist/escalation/ask-human-tool.js +1 -0
- package/dist/escalation/ask-human-tool.js.map +1 -1
- package/dist/escalation/open-question-list-tools.d.ts +2 -2
- package/dist/escalation/open-question-list-tools.d.ts.map +1 -1
- package/dist/escalation/open-question-list-tools.js +2 -0
- package/dist/escalation/open-question-list-tools.js.map +1 -1
- package/dist/github/fetch-github-updates.d.ts +0 -6
- package/dist/github/fetch-github-updates.d.ts.map +1 -1
- package/dist/github/fetch-github-updates.js +119 -135
- package/dist/github/fetch-github-updates.js.map +1 -1
- package/dist/github/github-client.d.ts.map +1 -1
- package/dist/github/github-client.js +8 -0
- package/dist/github/github-client.js.map +1 -1
- package/dist/github/github-monitor-cursor.d.ts +36 -9
- package/dist/github/github-monitor-cursor.d.ts.map +1 -1
- package/dist/github/github-monitor-cursor.js +9 -19
- package/dist/github/github-monitor-cursor.js.map +1 -1
- package/dist/github/github-monitor.d.ts +2 -0
- package/dist/github/github-monitor.d.ts.map +1 -1
- package/dist/github/github-monitor.js +13 -0
- package/dist/github/github-monitor.js.map +1 -1
- package/dist/github/github-test-fixtures.d.ts +9 -0
- package/dist/github/github-test-fixtures.d.ts.map +1 -1
- package/dist/github/github-test-fixtures.js +6 -0
- package/dist/github/github-test-fixtures.js.map +1 -1
- package/dist/github/github-update-types.d.ts +11 -1
- package/dist/github/github-update-types.d.ts.map +1 -1
- package/dist/github/index.d.ts +4 -2
- package/dist/github/index.d.ts.map +1 -1
- package/dist/github/index.js +1 -0
- package/dist/github/index.js.map +1 -1
- package/dist/github/register-github-watch-tool.d.ts +7 -2
- package/dist/github/register-github-watch-tool.d.ts.map +1 -1
- package/dist/github/register-github-watch-tool.js +31 -24
- package/dist/github/register-github-watch-tool.js.map +1 -1
- package/dist/github/unregister-github-watch-tool.d.ts +11 -0
- package/dist/github/unregister-github-watch-tool.d.ts.map +1 -0
- package/dist/github/unregister-github-watch-tool.js +52 -0
- package/dist/github/unregister-github-watch-tool.js.map +1 -0
- package/dist/mcp/index.d.ts +2 -3
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/load-mcp-config.d.ts +29 -5
- package/dist/mcp/load-mcp-config.d.ts.map +1 -1
- package/dist/mcp/load-mcp-config.js +9 -2
- package/dist/mcp/load-mcp-config.js.map +1 -1
- package/dist/permission/resolve-permission-tool.d.ts +2 -2
- package/dist/permission/resolve-permission-tool.d.ts.map +1 -1
- package/dist/permission/resolve-permission-tool.js +1 -0
- package/dist/permission/resolve-permission-tool.js.map +1 -1
- package/dist/profile/index.d.ts +1 -1
- package/dist/profile/index.d.ts.map +1 -1
- package/dist/profile/index.js.map +1 -1
- package/dist/profile/load-profile.d.ts.map +1 -1
- package/dist/profile/load-profile.js +19 -0
- package/dist/profile/load-profile.js.map +1 -1
- package/dist/profile/types.d.ts +7 -0
- package/dist/profile/types.d.ts.map +1 -1
- package/dist/profile/types.js.map +1 -1
- package/dist/prompt/modules/ensemble/base-module.d.ts.map +1 -1
- package/dist/prompt/modules/ensemble/base-module.js +2 -1
- package/dist/prompt/modules/ensemble/base-module.js.map +1 -1
- package/dist/prompt/modules/ensemble/conductor-base-module.d.ts.map +1 -1
- package/dist/prompt/modules/ensemble/conductor-base-module.js +4 -1
- package/dist/prompt/modules/ensemble/conductor-base-module.js.map +1 -1
- package/dist/runtime/worker-session.d.ts +5 -0
- package/dist/runtime/worker-session.d.ts.map +1 -1
- package/dist/runtime/worker-session.js +5 -1
- package/dist/runtime/worker-session.js.map +1 -1
- package/dist/session/session-sidecar.d.ts +4 -0
- package/dist/session/session-sidecar.d.ts.map +1 -1
- package/dist/session/session-sidecar.js +16 -0
- package/dist/session/session-sidecar.js.map +1 -1
- package/dist/testing/mock-conductor-get-usage.d.ts +2 -1
- package/dist/testing/mock-conductor-get-usage.d.ts.map +1 -1
- package/dist/testing/mock-conductor-get-usage.js +1 -10
- package/dist/testing/mock-conductor-get-usage.js.map +1 -1
- package/dist/usage/enrich-session-usage-cost.d.ts +2 -2
- package/dist/usage/enrich-session-usage-cost.d.ts.map +1 -1
- package/dist/usage/session-usage-tracker.d.ts +2 -2
- package/dist/usage/session-usage-tracker.d.ts.map +1 -1
- package/dist/usage/session-usage-tracker.js +2 -2
- package/dist/usage/session-usage-tracker.js.map +1 -1
- package/dist/usage/types.d.ts +2 -2
- package/dist/usage/types.d.ts.map +1 -1
- package/dist/worktree/worktree.d.ts.map +1 -1
- package/dist/worktree/worktree.js +33 -16
- package/dist/worktree/worktree.js.map +1 -1
- package/package.json +5 -1
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import type { EnsembleConfig } from '../config/types.js';
|
|
2
1
|
import type { WorkerDispatchResult } from '../dispatch/worker-dispatch.js';
|
|
3
2
|
import type { OpenQuestion } from '../escalation/open-question.js';
|
|
4
3
|
import type { OpenQuestionRegistry } from '../escalation/open-question.js';
|
|
5
4
|
import type { PermissionPipeline } from '../permission/permission-pipeline.js';
|
|
6
|
-
import type { ResolvedProfile } from '../profile/types.js';
|
|
7
5
|
import type { WorkerFailureRecord } from '../runtime/types.js';
|
|
8
6
|
import type { WorkerSession } from '../runtime/worker-session.js';
|
|
9
7
|
import type { ConductorSendResult } from './conductor-agent.js';
|
|
@@ -39,13 +37,15 @@ export interface ConductorSendCompleteInfo {
|
|
|
39
37
|
}
|
|
40
38
|
export interface ConductorSessionDriverOptions {
|
|
41
39
|
issueUrl: string;
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
/** Compiled system prompt sent as the SDK backend's initial user turn. */
|
|
41
|
+
initialPrompt: string;
|
|
44
42
|
conductorHandle: ConductorAgentHandle;
|
|
45
43
|
sendReconnect: ConductorSendReconnectOptions;
|
|
46
44
|
eventQueue: SessionEventQueue;
|
|
47
45
|
workerSession: WorkerSession;
|
|
48
46
|
permissionPipeline: PermissionPipeline;
|
|
47
|
+
/** PermissionPipeline.pending を dispatch の authoritative source として参照する predicate。 */
|
|
48
|
+
isPermissionPending?: (requestId: string) => boolean;
|
|
49
49
|
openQuestions: OpenQuestionRegistry;
|
|
50
50
|
shutdownSignal: AbortSignal;
|
|
51
51
|
maxTurns: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conductor-session-driver.d.ts","sourceRoot":"","sources":["../../src/conductor/conductor-session-driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"conductor-session-driver.d.ts","sourceRoot":"","sources":["../../src/conductor/conductor-session-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { ensureMaxTurnsOpenQuestion } from '../escalation/enqueue-max-turns-question.js';
|
|
2
|
-
import { fetchIssueContext } from '../github/issue-context.js';
|
|
3
|
-
import { formatGitHubErrorMessage } from '../github/github-auth.js';
|
|
4
|
-
import { resolveAgentPromptModule } from '../profile/types.js';
|
|
5
|
-
import { compileConductorSystemPrompt } from '../prompt/compile-system-prompt.js';
|
|
6
2
|
import { reconnectConductorAgent, sendConductorWithReconnect, } from './conductor-send-reconnect.js';
|
|
7
3
|
import { formatSessionEventsForConductor } from './session/format-session-event.js';
|
|
8
|
-
import { bufferDispatchHoldEvents, createDispatchHoldState, } from './session/dispatch-hold.js';
|
|
4
|
+
import { bufferDispatchHoldEvents, createDispatchHoldState, pruneStalePermissionEvents, } from './session/dispatch-hold.js';
|
|
9
5
|
import { countWorkerOutcomesInBatch, dispatchBatchStateAfterSend, markContinuationConsumed, selectDispatchBatch, } from './session/select-dispatch-batch.js';
|
|
10
6
|
import { autonomousTurnsAfterConductorBatch, buildIssueLoopStopInput, canDispatchConductorSend, isMaxTurnsLimited, resolveIssueLoopStopReason, shouldStopIssueLoop, } from './session-policy.js';
|
|
11
7
|
/**
|
|
@@ -25,7 +21,13 @@ export async function runConductorSessionDriver(options) {
|
|
|
25
21
|
let inFlightSend;
|
|
26
22
|
let postLoopWaiting = false;
|
|
27
23
|
const dispatchHoldState = options.dispatchHoldState ?? createDispatchHoldState();
|
|
28
|
-
const
|
|
24
|
+
const hasDispatchableWorkerOutcome = () => selectDispatchBatch({
|
|
25
|
+
queue: options.eventQueue.snapshot().filter((event) => event.type === 'worker.completed' || event.type === 'worker.failed'),
|
|
26
|
+
state: dispatchBatchState,
|
|
27
|
+
autonomousTurns,
|
|
28
|
+
maxTurns: options.maxTurns,
|
|
29
|
+
}) !== undefined;
|
|
30
|
+
const shouldBreakAfterLoopState = async (loopState) => {
|
|
29
31
|
stopReason = resolveIssueLoopStopReason(loopState);
|
|
30
32
|
const shouldStop = shouldStopIssueLoop(loopState);
|
|
31
33
|
// A normal binding may still release and flush held trigger events before
|
|
@@ -44,6 +46,22 @@ export async function runConductorSessionDriver(options) {
|
|
|
44
46
|
postLoopWaiting = false;
|
|
45
47
|
return false;
|
|
46
48
|
}
|
|
49
|
+
// A worker publishes its outcome to the inbox before its runtime round
|
|
50
|
+
// leaves the running state. Drain that notification chain before
|
|
51
|
+
// deciding the session is idle, otherwise the driver can tear down in
|
|
52
|
+
// the gap before the outcome reaches eventQueue.
|
|
53
|
+
const canHavePendingWorkerOutcome = loopState.lastStatus === 'finished' &&
|
|
54
|
+
loopState.dispatchesThisTurn === 0 &&
|
|
55
|
+
(loopState.pendingPermissions ?? 0) === 0 &&
|
|
56
|
+
(loopState.openQuestions ?? 0) === 0;
|
|
57
|
+
if (canHavePendingWorkerOutcome) {
|
|
58
|
+
await options.workerSession.inbox.drain();
|
|
59
|
+
if (hasDispatchableWorkerOutcome() ||
|
|
60
|
+
options.workerSession.runtime.runningCount !== 0) {
|
|
61
|
+
postLoopWaiting = false;
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
47
65
|
if (!options.continueAfterIssueLoopStop) {
|
|
48
66
|
return true;
|
|
49
67
|
}
|
|
@@ -55,11 +73,9 @@ export async function runConductorSessionDriver(options) {
|
|
|
55
73
|
};
|
|
56
74
|
if (!options.skipInitialSend) {
|
|
57
75
|
lastSendResult = await runEventConductorSend({
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
ensembleConfig: options.ensembleConfig,
|
|
62
|
-
}),
|
|
76
|
+
// Keep the initial dispatch asynchronous as it was when the driver
|
|
77
|
+
// fetched and compiled the prompt itself.
|
|
78
|
+
message: await Promise.resolve(options.initialPrompt),
|
|
63
79
|
conductorHandle: options.conductorHandle,
|
|
64
80
|
sendReconnect: options.sendReconnect,
|
|
65
81
|
workerDispatches: options.workerDispatches,
|
|
@@ -80,6 +96,14 @@ export async function runConductorSessionDriver(options) {
|
|
|
80
96
|
});
|
|
81
97
|
}
|
|
82
98
|
while (true) {
|
|
99
|
+
if (options.isPermissionPending) {
|
|
100
|
+
pruneStalePermissionEvents({
|
|
101
|
+
state: dispatchHoldState,
|
|
102
|
+
eventQueue: options.eventQueue,
|
|
103
|
+
isPermissionPending: options.isPermissionPending,
|
|
104
|
+
onChanged: options.onDispatchHoldChanged,
|
|
105
|
+
});
|
|
106
|
+
}
|
|
83
107
|
if (!inFlightSend &&
|
|
84
108
|
isMaxTurnsLimited(options.maxTurns) &&
|
|
85
109
|
autonomousTurns >= options.maxTurns) {
|
|
@@ -112,7 +136,7 @@ export async function runConductorSessionDriver(options) {
|
|
|
112
136
|
continueOnConductorError: options.continueOnConductorError,
|
|
113
137
|
stopOnUnansweredInput: options.stopOnUnansweredInput,
|
|
114
138
|
});
|
|
115
|
-
if (shouldBreakAfterLoopState(loopState)) {
|
|
139
|
+
if (await shouldBreakAfterLoopState(loopState)) {
|
|
116
140
|
break;
|
|
117
141
|
}
|
|
118
142
|
continue;
|
|
@@ -133,7 +157,7 @@ export async function runConductorSessionDriver(options) {
|
|
|
133
157
|
continueOnConductorError: options.continueOnConductorError,
|
|
134
158
|
stopOnUnansweredInput: options.stopOnUnansweredInput,
|
|
135
159
|
});
|
|
136
|
-
if (shouldBreakAfterLoopState(loopState)) {
|
|
160
|
+
if (await shouldBreakAfterLoopState(loopState)) {
|
|
137
161
|
break;
|
|
138
162
|
}
|
|
139
163
|
}
|
|
@@ -147,6 +171,7 @@ export async function runConductorSessionDriver(options) {
|
|
|
147
171
|
signal: options.shutdownSignal,
|
|
148
172
|
dispatchHoldState,
|
|
149
173
|
onDispatchHoldChanged: options.onDispatchHoldChanged,
|
|
174
|
+
isPermissionPending: options.isPermissionPending,
|
|
150
175
|
});
|
|
151
176
|
}
|
|
152
177
|
catch (error) {
|
|
@@ -206,22 +231,6 @@ export async function runConductorSessionDriver(options) {
|
|
|
206
231
|
lastDispatchesThisTurn,
|
|
207
232
|
};
|
|
208
233
|
}
|
|
209
|
-
async function buildInitialConductorMessage(input) {
|
|
210
|
-
try {
|
|
211
|
-
const issueContext = await fetchIssueContext(input.issueUrl, {
|
|
212
|
-
ensembleConfig: input.ensembleConfig,
|
|
213
|
-
});
|
|
214
|
-
return compileConductorSystemPrompt({
|
|
215
|
-
issueUrl: input.issueUrl,
|
|
216
|
-
profile: input.profile,
|
|
217
|
-
agentModule: resolveAgentPromptModule('conductor', input.profile.agents),
|
|
218
|
-
issueContext,
|
|
219
|
-
});
|
|
220
|
-
}
|
|
221
|
-
catch (error) {
|
|
222
|
-
throw new Error(formatGitHubErrorMessage(error, input.ensembleConfig));
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
234
|
function runEventConductorSend(input) {
|
|
226
235
|
const workersBefore = input.workerDispatches.length;
|
|
227
236
|
const failuresBefore = input.workerFailures.length;
|
|
@@ -270,6 +279,14 @@ async function waitForDispatchBatch(input) {
|
|
|
270
279
|
onChanged: input.onDispatchHoldChanged,
|
|
271
280
|
});
|
|
272
281
|
}
|
|
282
|
+
if (input.isPermissionPending) {
|
|
283
|
+
pruneStalePermissionEvents({
|
|
284
|
+
state: input.dispatchHoldState,
|
|
285
|
+
eventQueue: input.eventQueue,
|
|
286
|
+
isPermissionPending: input.isPermissionPending,
|
|
287
|
+
onChanged: input.onDispatchHoldChanged,
|
|
288
|
+
});
|
|
289
|
+
}
|
|
273
290
|
const selected = selectDispatchBatch({
|
|
274
291
|
queue: input.eventQueue.snapshot(),
|
|
275
292
|
state: input.dispatchBatchState,
|
|
@@ -342,6 +359,7 @@ function isImmediateDispatchSource(sourceKey) {
|
|
|
342
359
|
async function runOperatorReconnect(options) {
|
|
343
360
|
try {
|
|
344
361
|
await reconnectConductorAgent(options.conductorHandle, {
|
|
362
|
+
conductorAgentFactory: options.sendReconnect.conductorAgentFactory,
|
|
345
363
|
conductorOptions: options.sendReconnect.conductorOptions,
|
|
346
364
|
onReconnectAttempt: options.sendReconnect.onTransportReconnectAttempt ??
|
|
347
365
|
options.sendReconnect.onReconnectAttempt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conductor-session-driver.js","sourceRoot":"","sources":["../../src/conductor/conductor-session-driver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"conductor-session-driver.js","sourceRoot":"","sources":["../../src/conductor/conductor-session-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { WorkerDispatchResult } from '../dispatch/worker-dispatch.js';
|
|
2
|
-
import type { EnsembleConfig } from '../config/types.js';
|
|
2
|
+
import type { ConductorBackend, EnsembleConfig } from '../config/types.js';
|
|
3
3
|
import { type LoadMcpConfigOptions } from '../mcp/load-mcp-config.js';
|
|
4
4
|
import type { OpenQuestion } from '../escalation/open-question.js';
|
|
5
5
|
import type { EscalationRecord } from '../escalation/human-inquiry.js';
|
|
@@ -10,6 +10,7 @@ import type { DefaultAcpResolutionOptions } from '../acp/resolve-acp-spawn.js';
|
|
|
10
10
|
import type { ConnectWorkerAcpFn } from '../dispatch/worker-acp-session.js';
|
|
11
11
|
import { type WorkerWorktreeMode, type WorktreeRef } from '../worktree/worktree.js';
|
|
12
12
|
import type { WorkerFailureRecord } from '../runtime/types.js';
|
|
13
|
+
import type { ConductorAgentFactory } from './conductor-agent.js';
|
|
13
14
|
import type { ConductorSendResult } from './conductor-agent.js';
|
|
14
15
|
import { SessionLogger } from './session/session-logger.js';
|
|
15
16
|
import { type IssueLoopStopReason } from './session-policy.js';
|
|
@@ -29,6 +30,8 @@ export interface RunConductorSessionOptions {
|
|
|
29
30
|
profile: ResolvedProfile;
|
|
30
31
|
profilePath?: string;
|
|
31
32
|
resumeAgentId?: string;
|
|
33
|
+
/** Optional factory override. Without it, `conductor.backend` selects the factory. */
|
|
34
|
+
conductorAgentFactory?: ConductorAgentFactory;
|
|
32
35
|
apiKey?: string;
|
|
33
36
|
modelId?: string;
|
|
34
37
|
maxTurns?: number;
|
|
@@ -126,4 +129,5 @@ export interface ConductorSessionResult {
|
|
|
126
129
|
sessionUsage?: SessionUsageSummary;
|
|
127
130
|
}
|
|
128
131
|
export declare function runConductorSession(options: RunConductorSessionOptions): Promise<ConductorSessionResult>;
|
|
132
|
+
export declare function createConductorAgentFactory(backend: ConductorBackend): ConductorAgentFactory;
|
|
129
133
|
//# sourceMappingURL=conductor-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conductor-session.d.ts","sourceRoot":"","sources":["../../src/conductor/conductor-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAI3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"conductor-session.d.ts","sourceRoot":"","sources":["../../src/conductor/conductor-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { loadEnsembleConfig, } from '../config/load-ensemble-config.js';
|
|
2
|
-
import {
|
|
2
|
+
import { resolveMcpServers, } from '../mcp/load-mcp-config.js';
|
|
3
3
|
import { createAnswerOpenQuestionTool } from '../escalation/answer-open-question-tool.js';
|
|
4
4
|
import { createAskHumanTool } from '../escalation/ask-human-tool.js';
|
|
5
5
|
import { createOpenQuestionListTools } from '../escalation/open-question-list-tools.js';
|
|
@@ -11,7 +11,7 @@ import { createPermissionDeadlockMonitor, } from '../permission/permission-deadl
|
|
|
11
11
|
import { createResolvePermissionTool } from '../permission/resolve-permission-tool.js';
|
|
12
12
|
import { acpSpawnFingerprint, resolveWorkerAcpSpawn, resolvedAcpSpawnToOptions, } from '../acp/resolve-acp-spawn.js';
|
|
13
13
|
import { finalizeResolvedAcpSpawn, validateWorkerAcpPrerequisites, } from '../acp/validate-acp-preset-prerequisites.js';
|
|
14
|
-
import { profileWorkersToSessionSpecs, sessionStateFromProfile, } from '../profile/types.js';
|
|
14
|
+
import { profileWorkersToSessionSpecs, sessionStateFromProfile, resolveAgentPromptModule, } from '../profile/types.js';
|
|
15
15
|
import { WorkerSession } from '../runtime/worker-session.js';
|
|
16
16
|
import { createPromptWorkerTool } from '../dispatch/prompt-worker-tool.js';
|
|
17
17
|
import { createWorkerStatusTools } from '../dispatch/worker-status-tool.js';
|
|
@@ -20,11 +20,14 @@ import { createSetDispatchHoldTool } from '../dispatch/set-dispatch-hold-tool.js
|
|
|
20
20
|
import { parseIssueUrl } from '../issue/issue-ref.js';
|
|
21
21
|
import { resolveWorkerWorkspace, removeWorkerWorktree, } from '../worktree/worktree.js';
|
|
22
22
|
import { WorkerOutboundQueue } from '../runtime/worker-outbound-queue.js';
|
|
23
|
-
import {
|
|
23
|
+
import { ConductorToolRegistry } from './conductor-tool.js';
|
|
24
|
+
import { createCursorSdkConductorAgentFactory } from './cursor-sdk-conductor-agent.js';
|
|
25
|
+
import { createPiConductorAgentFactory } from './pi-conductor-agent.js';
|
|
24
26
|
import { formatConductorAuthRecoveryHint, isConductorSendAuthError, } from './conductor-auth.js';
|
|
27
|
+
import { resolvePiConductorProvider } from './conductor-pi-auth.js';
|
|
25
28
|
import { SessionLogger } from './session/session-logger.js';
|
|
26
29
|
import { SessionEventQueue } from './session/session-event-queue.js';
|
|
27
|
-
import { bufferDispatchHoldEvents, createDispatchHoldState, } from './session/dispatch-hold.js';
|
|
30
|
+
import { bufferDispatchHoldEvents, createDispatchHoldState, pruneStalePermissionEvents, } from './session/dispatch-hold.js';
|
|
28
31
|
import { operatorInputMaxTurns, resolveMaxTurns, } from './session-policy.js';
|
|
29
32
|
import { runConductorSessionDriver } from './conductor-session-driver.js';
|
|
30
33
|
import { isOperatorExitCommand } from './operator-exit.js';
|
|
@@ -34,27 +37,27 @@ import { enrichSessionUsageWithCost } from '../usage/enrich-session-usage-cost.j
|
|
|
34
37
|
import { SessionUsageTracker } from '../usage/session-usage-tracker.js';
|
|
35
38
|
import { submitOperatorInput } from './submit-operator-input.js';
|
|
36
39
|
import { createGitHubMonitor, } from '../github/github-monitor.js';
|
|
37
|
-
import { resolveGitHubMonitorEnabled } from '../config/resolve-settings.js';
|
|
40
|
+
import { resolveConductorBackendSetting, resolveConductorPiResourcePaths, resolveGitHubMonitorEnabled, } from '../config/resolve-settings.js';
|
|
38
41
|
import { GitHubMonitorError } from '../github/github-monitor-error.js';
|
|
39
|
-
import { GITHUB_AUTH_HINT } from '../github/github-auth.js';
|
|
42
|
+
import { formatGitHubErrorMessage, GITHUB_AUTH_HINT, } from '../github/github-auth.js';
|
|
43
|
+
import { fetchIssueContext } from '../github/issue-context.js';
|
|
40
44
|
import { resolveGitHubAuthToken } from '../github/resolve-github-auth-token.js';
|
|
41
45
|
import { emptyGitHubMonitorCursor, } from '../github/github-monitor-cursor.js';
|
|
42
46
|
import { createRegisterGitHubWatchTool } from '../github/register-github-watch-tool.js';
|
|
47
|
+
import { createUnregisterGitHubWatchTool } from '../github/unregister-github-watch-tool.js';
|
|
48
|
+
import { compileConductorSystemPrompt } from '../prompt/compile-system-prompt.js';
|
|
43
49
|
export async function runConductorSession(options) {
|
|
44
50
|
const ensembleConfig = options.ensembleConfig ?? (await loadEnsembleConfig(options.repoRoot));
|
|
45
|
-
const
|
|
51
|
+
const conductorBackend = resolveConductorBackendSetting({
|
|
52
|
+
profile: options.profile,
|
|
53
|
+
config: ensembleConfig,
|
|
54
|
+
});
|
|
46
55
|
const maxTurns = resolveMaxTurns(options.maxTurns);
|
|
47
56
|
const sessionLogger = options.sessionLogger ??
|
|
48
57
|
new SessionLogger({
|
|
49
58
|
issueUrl: options.issueUrl,
|
|
50
59
|
repoRoot: options.repoRoot,
|
|
51
60
|
});
|
|
52
|
-
if (!githubAuth.token) {
|
|
53
|
-
sessionLogger.emit({
|
|
54
|
-
type: 'harness.warning',
|
|
55
|
-
message: GITHUB_AUTH_HINT,
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
61
|
attachLegacySessionCallbacks(sessionLogger, options);
|
|
59
62
|
const escalations = [];
|
|
60
63
|
const openQuestions = new OpenQuestionRegistry();
|
|
@@ -84,6 +87,7 @@ export async function runConductorSession(options) {
|
|
|
84
87
|
conductorAgentId: options.resumeAgentId,
|
|
85
88
|
issueUrl: options.issueUrl,
|
|
86
89
|
repoRoot: options.repoRoot,
|
|
90
|
+
conductorBackend,
|
|
87
91
|
});
|
|
88
92
|
openQuestions.restore({
|
|
89
93
|
sequence: sidecar.sequence,
|
|
@@ -99,6 +103,29 @@ export async function runConductorSession(options) {
|
|
|
99
103
|
});
|
|
100
104
|
}
|
|
101
105
|
}
|
|
106
|
+
const conductorAgentFactory = options.conductorAgentFactory ?? createConductorAgentFactory(conductorBackend);
|
|
107
|
+
const githubAuth = await resolveGitHubAuthToken({ config: ensembleConfig });
|
|
108
|
+
if (!githubAuth.token) {
|
|
109
|
+
sessionLogger.emit({
|
|
110
|
+
type: 'harness.warning',
|
|
111
|
+
message: GITHUB_AUTH_HINT,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
let systemPrompt;
|
|
115
|
+
try {
|
|
116
|
+
const issueContext = await fetchIssueContext(options.issueUrl, {
|
|
117
|
+
ensembleConfig,
|
|
118
|
+
});
|
|
119
|
+
systemPrompt = compileConductorSystemPrompt({
|
|
120
|
+
issueUrl: options.issueUrl,
|
|
121
|
+
profile: activeProfile,
|
|
122
|
+
agentModule: resolveAgentPromptModule('conductor', activeProfile.agents),
|
|
123
|
+
issueContext,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
catch (error) {
|
|
127
|
+
throw new Error(formatGitHubErrorMessage(error, ensembleConfig));
|
|
128
|
+
}
|
|
102
129
|
const ownsShutdownController = !options.shutdownSignal;
|
|
103
130
|
const shutdownController = ownsShutdownController
|
|
104
131
|
? new AbortController()
|
|
@@ -212,6 +239,17 @@ export async function runConductorSession(options) {
|
|
|
212
239
|
}
|
|
213
240
|
return null;
|
|
214
241
|
},
|
|
242
|
+
onPermissionCleanup: ({ workerId, entries }) => {
|
|
243
|
+
sessionLogger.emit({
|
|
244
|
+
type: 'permission.cleanup',
|
|
245
|
+
reason: 'worker.failed',
|
|
246
|
+
workerId,
|
|
247
|
+
entries: entries.map(({ id, workerId: entryWorkerId }) => ({
|
|
248
|
+
id,
|
|
249
|
+
workerId: entryWorkerId,
|
|
250
|
+
})),
|
|
251
|
+
});
|
|
252
|
+
},
|
|
215
253
|
onWorkerCompleted: (result) => {
|
|
216
254
|
sessionUsageTracker.recordWorkerRound({
|
|
217
255
|
name: result.name,
|
|
@@ -347,6 +385,17 @@ export async function runConductorSession(options) {
|
|
|
347
385
|
scheduleSidecarFlush();
|
|
348
386
|
},
|
|
349
387
|
});
|
|
388
|
+
const unregisterGitHubWatchTools = createUnregisterGitHubWatchTool({
|
|
389
|
+
issueUrl: options.issueUrl,
|
|
390
|
+
getCursor: () => {
|
|
391
|
+
githubMonitorCursor ??= emptyGitHubMonitorCursor();
|
|
392
|
+
return githubMonitorCursor;
|
|
393
|
+
},
|
|
394
|
+
onUnregistered: (prNumber) => {
|
|
395
|
+
githubMonitor?.unregisterPullRequest?.(prNumber);
|
|
396
|
+
scheduleSidecarFlush();
|
|
397
|
+
},
|
|
398
|
+
});
|
|
350
399
|
let conductorAgent;
|
|
351
400
|
const sessionUsageTools = createSessionUsageTools({
|
|
352
401
|
tracker: sessionUsageTracker,
|
|
@@ -365,32 +414,58 @@ export async function runConductorSession(options) {
|
|
|
365
414
|
eventQueue,
|
|
366
415
|
onChanged: onDispatchHoldChanged,
|
|
367
416
|
});
|
|
417
|
+
pruneStalePermissionEvents({
|
|
418
|
+
state: dispatchHoldState,
|
|
419
|
+
eventQueue,
|
|
420
|
+
isPermissionPending: (requestId) => permissionPipeline.pending.get(requestId) !== undefined,
|
|
421
|
+
onChanged: onDispatchHoldChanged,
|
|
422
|
+
});
|
|
368
423
|
},
|
|
369
424
|
});
|
|
425
|
+
const conductorToolRegistry = new ConductorToolRegistry();
|
|
426
|
+
conductorToolRegistry
|
|
427
|
+
.registerAll(askHumanTools)
|
|
428
|
+
.registerAll(answerOpenQuestionTools)
|
|
429
|
+
.registerAll(openQuestionListTools)
|
|
430
|
+
.registerAll(resolvePermissionTools)
|
|
431
|
+
.registerAll(promptWorkerTools)
|
|
432
|
+
.registerAll(workerStatusTools)
|
|
433
|
+
.registerAll(registerGitHubWatchTools)
|
|
434
|
+
.registerAll(unregisterGitHubWatchTools)
|
|
435
|
+
.registerAll(sessionUsageTools)
|
|
436
|
+
.registerAll(dispatchHoldTools);
|
|
370
437
|
const conductorCwd = options.conductorCwd ?? process.cwd();
|
|
371
|
-
const mcpServers = await
|
|
438
|
+
const mcpServers = await resolveMcpServers(options.repoRoot, options.mcpConfigOptions);
|
|
372
439
|
const conductorOptions = {
|
|
373
440
|
cwd: conductorCwd,
|
|
441
|
+
systemPrompt,
|
|
374
442
|
apiKey: options.apiKey,
|
|
375
443
|
modelId: options.modelId,
|
|
444
|
+
...(conductorBackend === 'pi'
|
|
445
|
+
? {
|
|
446
|
+
pi: resolveConductorPiResourcePaths({
|
|
447
|
+
repoRoot: options.repoRoot,
|
|
448
|
+
config: ensembleConfig,
|
|
449
|
+
}),
|
|
450
|
+
}
|
|
451
|
+
: {}),
|
|
376
452
|
...(Object.keys(mcpServers).length > 0 ? { mcpServers } : {}),
|
|
377
|
-
customTools:
|
|
378
|
-
...askHumanTools,
|
|
379
|
-
...answerOpenQuestionTools,
|
|
380
|
-
...openQuestionListTools,
|
|
381
|
-
...resolvePermissionTools,
|
|
382
|
-
...promptWorkerTools,
|
|
383
|
-
...workerStatusTools,
|
|
384
|
-
...registerGitHubWatchTools,
|
|
385
|
-
...sessionUsageTools,
|
|
386
|
-
...dispatchHoldTools,
|
|
387
|
-
},
|
|
453
|
+
customTools: conductorToolRegistry.toRecord(),
|
|
388
454
|
};
|
|
455
|
+
const conductorProvider = conductorBackend === 'pi'
|
|
456
|
+
? (await resolvePiConductorProvider({
|
|
457
|
+
cwd: conductorOptions.cwd,
|
|
458
|
+
modelId: conductorOptions.modelId,
|
|
459
|
+
pi: conductorOptions.pi,
|
|
460
|
+
})) || undefined
|
|
461
|
+
: undefined;
|
|
389
462
|
conductorAgent = options.resumeAgentId
|
|
390
|
-
? await
|
|
391
|
-
: await
|
|
463
|
+
? await conductorAgentFactory.resume(options.resumeAgentId, conductorOptions)
|
|
464
|
+
: await conductorAgentFactory.create(conductorOptions);
|
|
392
465
|
const conductorHandle = { conductor: conductorAgent };
|
|
466
|
+
// Keep auth/transport reconnects on the same backend factory as the session.
|
|
393
467
|
const sendReconnect = {
|
|
468
|
+
conductorAgentFactory,
|
|
394
469
|
conductorOptions,
|
|
395
470
|
onAuthReconnectAttempt: ({ agentId }) => {
|
|
396
471
|
sessionLogger.emit({
|
|
@@ -430,6 +505,7 @@ export async function runConductorSession(options) {
|
|
|
430
505
|
const sidecar = {
|
|
431
506
|
version: SESSION_SIDECAR_VERSION,
|
|
432
507
|
conductorAgentId: conductorHandle.conductor.agentId,
|
|
508
|
+
conductorBackend,
|
|
433
509
|
issueUrl: options.issueUrl,
|
|
434
510
|
repoRoot: options.repoRoot,
|
|
435
511
|
profile: structuredClone(activeProfile),
|
|
@@ -574,8 +650,9 @@ export async function runConductorSession(options) {
|
|
|
574
650
|
try {
|
|
575
651
|
const driverResult = await runConductorSessionDriver({
|
|
576
652
|
issueUrl: options.issueUrl,
|
|
577
|
-
|
|
578
|
-
|
|
653
|
+
initialPrompt: conductorBackend === 'pi'
|
|
654
|
+
? createPiKickoffPrompt(options.issueUrl)
|
|
655
|
+
: systemPrompt,
|
|
579
656
|
conductorHandle,
|
|
580
657
|
sendReconnect,
|
|
581
658
|
eventQueue,
|
|
@@ -587,6 +664,7 @@ export async function runConductorSession(options) {
|
|
|
587
664
|
getOutboundDispatchesThisSend: () => outboundDispatchesThisSend,
|
|
588
665
|
workerSession,
|
|
589
666
|
permissionPipeline,
|
|
667
|
+
isPermissionPending: (requestId) => permissionPipeline.pending.get(requestId) !== undefined,
|
|
590
668
|
openQuestions,
|
|
591
669
|
shutdownSignal: driverShutdownSignal,
|
|
592
670
|
maxTurns,
|
|
@@ -662,7 +740,13 @@ export async function runConductorSession(options) {
|
|
|
662
740
|
sessionLogger.emit({
|
|
663
741
|
type: 'conductor.auth.recovery',
|
|
664
742
|
agentId: conductorHandle.conductor.agentId,
|
|
665
|
-
hint: formatConductorAuthRecoveryHint(conductorHandle.conductor.agentId
|
|
743
|
+
hint: formatConductorAuthRecoveryHint(conductorHandle.conductor.agentId, conductorBackend === 'pi'
|
|
744
|
+
? {
|
|
745
|
+
backend: 'pi',
|
|
746
|
+
pi: { agentDir: conductorOptions.pi?.agentDir },
|
|
747
|
+
provider: conductorProvider,
|
|
748
|
+
}
|
|
749
|
+
: { backend: 'cursor' }),
|
|
666
750
|
});
|
|
667
751
|
}
|
|
668
752
|
scheduleSidecarFlush();
|
|
@@ -722,7 +806,17 @@ export async function runConductorSession(options) {
|
|
|
722
806
|
// Stop active prompts before closing ACP bridges. Requests that arrive
|
|
723
807
|
// after this point are rejected by the teardown guard above.
|
|
724
808
|
workerSession.runtime.cancelAllActivePrompts();
|
|
725
|
-
rejectAllPendingPermissions(permissionPipeline, workerSession.inbox);
|
|
809
|
+
const rejectedPendingPermissions = rejectAllPendingPermissions(permissionPipeline, workerSession.inbox);
|
|
810
|
+
if (rejectedPendingPermissions.length > 0) {
|
|
811
|
+
sessionLogger.emit({
|
|
812
|
+
type: 'permission.cleanup',
|
|
813
|
+
reason: 'teardown',
|
|
814
|
+
entries: rejectedPendingPermissions.map(({ id, workerId }) => ({
|
|
815
|
+
id,
|
|
816
|
+
workerId,
|
|
817
|
+
})),
|
|
818
|
+
});
|
|
819
|
+
}
|
|
726
820
|
try {
|
|
727
821
|
emitTeardownPhase('flushSidecar');
|
|
728
822
|
const phaseStart = Date.now();
|
|
@@ -790,6 +884,16 @@ export async function runConductorSession(options) {
|
|
|
790
884
|
}
|
|
791
885
|
}
|
|
792
886
|
}
|
|
887
|
+
export function createConductorAgentFactory(backend) {
|
|
888
|
+
if (backend === 'cursor') {
|
|
889
|
+
return createCursorSdkConductorAgentFactory();
|
|
890
|
+
}
|
|
891
|
+
return createPiConductorAgentFactory();
|
|
892
|
+
}
|
|
893
|
+
function createPiKickoffPrompt(issueUrl) {
|
|
894
|
+
return (`Start the conductor workflow for ${issueUrl}. ` +
|
|
895
|
+
'Review the Issue context in your system instructions and dispatch the first required worker with prompt_worker.');
|
|
896
|
+
}
|
|
793
897
|
async function emitWorktreeRemoval(sessionLogger, repoRoot, issue) {
|
|
794
898
|
const result = await removeWorkerWorktree(repoRoot, issue);
|
|
795
899
|
switch (result.status) {
|
|
@@ -821,14 +925,16 @@ async function emitWorktreeRemoval(sessionLogger, repoRoot, issue) {
|
|
|
821
925
|
}
|
|
822
926
|
}
|
|
823
927
|
function rejectAllPendingPermissions(pipeline, inbox) {
|
|
928
|
+
const rejected = [];
|
|
824
929
|
for (const pending of [...pipeline.pending.list()]) {
|
|
825
930
|
try {
|
|
826
|
-
pipeline.resolveAndFulfill(inbox, pending.id, false);
|
|
931
|
+
rejected.push(pipeline.resolveAndFulfill(inbox, pending.id, false));
|
|
827
932
|
}
|
|
828
933
|
catch {
|
|
829
934
|
// already resolved
|
|
830
935
|
}
|
|
831
936
|
}
|
|
937
|
+
return rejected;
|
|
832
938
|
}
|
|
833
939
|
function attachLegacySessionCallbacks(logger, options) {
|
|
834
940
|
if (!options.onSendComplete &&
|