cyrus-edge-worker 0.2.64-test.6 → 0.2.64
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/ChatSessionHandler.d.ts +20 -1
- package/dist/ChatSessionHandler.d.ts.map +1 -1
- package/dist/ChatSessionHandler.js +68 -8
- package/dist/ChatSessionHandler.js.map +1 -1
- package/dist/EdgeWorker.d.ts +3 -7
- package/dist/EdgeWorker.d.ts.map +1 -1
- package/dist/EdgeWorker.js +67 -68
- package/dist/EdgeWorker.js.map +1 -1
- package/dist/RunnerConfigBuilder.d.ts +12 -12
- package/dist/RunnerConfigBuilder.d.ts.map +1 -1
- package/dist/RunnerConfigBuilder.js +37 -29
- package/dist/RunnerConfigBuilder.js.map +1 -1
- package/package.json +15 -15
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SdkPluginConfig } from "cyrus-claude-runner";
|
|
2
|
+
import type { AgentRunnerConfig, CyrusAgentSession, IAgentRunner, ILogger, RepositoryConfig } from "cyrus-core";
|
|
2
3
|
import type { ChatRepositoryProvider } from "./ChatRepositoryProvider.js";
|
|
3
4
|
import type { RunnerConfigBuilder } from "./RunnerConfigBuilder.js";
|
|
4
5
|
/**
|
|
@@ -67,6 +68,14 @@ export interface ChatSessionHandlerDeps {
|
|
|
67
68
|
* no custom files load (native MCP servers still run as usual).
|
|
68
69
|
*/
|
|
69
70
|
getPlatformMcpConfigOverrides?: () => readonly string[] | undefined;
|
|
71
|
+
/** Resolve managed skill plugins and scoped skill names for a chat session. */
|
|
72
|
+
resolveSkillsConfig?: (input: {
|
|
73
|
+
repository?: RepositoryConfig;
|
|
74
|
+
repositoryPaths: string[];
|
|
75
|
+
}) => Promise<{
|
|
76
|
+
plugins?: SdkPluginConfig[];
|
|
77
|
+
skills?: string[] | "all";
|
|
78
|
+
}>;
|
|
70
79
|
onWebhookStart: () => void;
|
|
71
80
|
onWebhookEnd: () => void;
|
|
72
81
|
onStateChange: () => Promise<void>;
|
|
@@ -87,6 +96,7 @@ export declare class ChatSessionHandler<TEvent> {
|
|
|
87
96
|
private logger;
|
|
88
97
|
private pendingReplyEvents;
|
|
89
98
|
private lastReplyEvent;
|
|
99
|
+
private pendingFollowups;
|
|
90
100
|
constructor(adapter: ChatPlatformAdapter<TEvent>, deps: ChatSessionHandlerDeps, logger?: ILogger);
|
|
91
101
|
/**
|
|
92
102
|
* Main entry point — handles a single chat platform event.
|
|
@@ -130,6 +140,15 @@ export declare class ChatSessionHandler<TEvent> {
|
|
|
130
140
|
* SDK emits a `result` message (signalling turn completion).
|
|
131
141
|
*/
|
|
132
142
|
private handleAgentMessage;
|
|
143
|
+
private queuePendingFollowup;
|
|
144
|
+
private threadKeyForSession;
|
|
145
|
+
/**
|
|
146
|
+
* Re-dispatch any follow-ups queued for a thread while it was busy. Runs
|
|
147
|
+
* after the current turn settles (the runner has finalized), so each
|
|
148
|
+
* re-dispatched event takes the normal resume path. Any that still find the
|
|
149
|
+
* runner running re-queue themselves and are drained on the next completion.
|
|
150
|
+
*/
|
|
151
|
+
private drainPendingFollowups;
|
|
133
152
|
private enqueueReply;
|
|
134
153
|
private drainReplies;
|
|
135
154
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionHandler.d.ts","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChatSessionHandler.d.ts","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,12 @@ export class ChatSessionHandler {
|
|
|
33
33
|
// remembers where to post that turn's reply (all events in a session share
|
|
34
34
|
// one thread, so any recent event addresses it correctly).
|
|
35
35
|
lastReplyEvent = new Map();
|
|
36
|
+
// Follow-up events that arrived while a turn was running and could not be
|
|
37
|
+
// streamed into it (e.g. the exec Codex backend, which has no mid-turn input
|
|
38
|
+
// channel). Keyed by threadKey. Drained when the running turn completes and
|
|
39
|
+
// re-dispatched as a fresh turn, so a follow-up is never silently dropped —
|
|
40
|
+
// honoring the "I'll pick up your new message once I'm done" promise.
|
|
41
|
+
pendingFollowups = new Map();
|
|
36
42
|
constructor(adapter, deps, logger) {
|
|
37
43
|
this.adapter = adapter;
|
|
38
44
|
this.deps = deps;
|
|
@@ -70,8 +76,11 @@ export class ChatSessionHandler {
|
|
|
70
76
|
existingRunner.addStreamMessage(taskInstructions);
|
|
71
77
|
}
|
|
72
78
|
else {
|
|
73
|
-
// Runner
|
|
74
|
-
|
|
79
|
+
// Runner can't accept mid-turn input (e.g. exec Codex). Queue the
|
|
80
|
+
// follow-up so it's delivered as a fresh turn once this one ends,
|
|
81
|
+
// rather than dropped — then tell the user we'll pick it up.
|
|
82
|
+
this.logger.info(`Session ${existingSessionId} is still running; queuing follow-up for after the turn (thread ${threadKey})`);
|
|
83
|
+
this.queuePendingFollowup(threadKey, event);
|
|
75
84
|
await this.adapter.notifyBusy(event, threadKey);
|
|
76
85
|
}
|
|
77
86
|
return;
|
|
@@ -79,7 +88,10 @@ export class ChatSessionHandler {
|
|
|
79
88
|
if (existingSession && existingRunner) {
|
|
80
89
|
// Session exists but is not running — resume with --continue
|
|
81
90
|
this.logger.info(`Resuming completed ${this.adapter.platformName} session ${existingSessionId} (thread ${threadKey})`);
|
|
82
|
-
const resumeSessionId = existingSession.claudeSessionId ||
|
|
91
|
+
const resumeSessionId = existingSession.claudeSessionId ||
|
|
92
|
+
existingSession.geminiSessionId ||
|
|
93
|
+
existingSession.codexSessionId ||
|
|
94
|
+
existingSession.cursorSessionId;
|
|
83
95
|
if (resumeSessionId) {
|
|
84
96
|
try {
|
|
85
97
|
await this.resumeSession(event, existingSession, existingSessionId, resumeSessionId, taskInstructions);
|
|
@@ -127,7 +139,7 @@ export class ChatSessionHandler {
|
|
|
127
139
|
// Build the system prompt
|
|
128
140
|
const systemPrompt = this.adapter.buildSystemPrompt(event);
|
|
129
141
|
// Build runner config
|
|
130
|
-
const runnerConfig = this.buildRunnerConfig(session.workspace.path, sessionId, systemPrompt, sessionId);
|
|
142
|
+
const runnerConfig = await this.buildRunnerConfig(session.workspace.path, sessionId, systemPrompt, sessionId);
|
|
131
143
|
const runner = this.deps.createRunner(runnerConfig);
|
|
132
144
|
// Store the runner in the session manager
|
|
133
145
|
this.sessionManager.addAgentRunner(sessionId, runner);
|
|
@@ -221,7 +233,7 @@ export class ChatSessionHandler {
|
|
|
221
233
|
*/
|
|
222
234
|
async resumeSession(event, existingSession, sessionId, resumeSessionId, taskInstructions) {
|
|
223
235
|
const systemPrompt = this.adapter.buildSystemPrompt(event);
|
|
224
|
-
const runnerConfig = this.buildRunnerConfig(existingSession.workspace.path, sessionId, systemPrompt, sessionId, resumeSessionId);
|
|
236
|
+
const runnerConfig = await this.buildRunnerConfig(existingSession.workspace.path, sessionId, systemPrompt, sessionId, resumeSessionId);
|
|
225
237
|
const runner = this.deps.createRunner(runnerConfig);
|
|
226
238
|
this.sessionManager.addAgentRunner(sessionId, runner);
|
|
227
239
|
// Reply posting is driven by `result` messages on the runner's stream
|
|
@@ -276,8 +288,49 @@ export class ChatSessionHandler {
|
|
|
276
288
|
else if (!replyEvent) {
|
|
277
289
|
this.logger.warn(`Received result for session ${sessionId} with no pending reply event — nothing to post`);
|
|
278
290
|
}
|
|
291
|
+
// The turn is done — deliver any follow-ups that arrived while busy.
|
|
292
|
+
this.drainPendingFollowups(sessionId);
|
|
279
293
|
}
|
|
280
294
|
}
|
|
295
|
+
queuePendingFollowup(threadKey, event) {
|
|
296
|
+
const queue = this.pendingFollowups.get(threadKey) ?? [];
|
|
297
|
+
queue.push(event);
|
|
298
|
+
this.pendingFollowups.set(threadKey, queue);
|
|
299
|
+
}
|
|
300
|
+
threadKeyForSession(sessionId) {
|
|
301
|
+
for (const [threadKey, id] of this.threadSessions) {
|
|
302
|
+
if (id === sessionId) {
|
|
303
|
+
return threadKey;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
return undefined;
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Re-dispatch any follow-ups queued for a thread while it was busy. Runs
|
|
310
|
+
* after the current turn settles (the runner has finalized), so each
|
|
311
|
+
* re-dispatched event takes the normal resume path. Any that still find the
|
|
312
|
+
* runner running re-queue themselves and are drained on the next completion.
|
|
313
|
+
*/
|
|
314
|
+
drainPendingFollowups(sessionId) {
|
|
315
|
+
const threadKey = this.threadKeyForSession(sessionId);
|
|
316
|
+
if (!threadKey) {
|
|
317
|
+
return;
|
|
318
|
+
}
|
|
319
|
+
const queue = this.pendingFollowups.get(threadKey);
|
|
320
|
+
if (!queue || queue.length === 0) {
|
|
321
|
+
return;
|
|
322
|
+
}
|
|
323
|
+
this.pendingFollowups.delete(threadKey);
|
|
324
|
+
// Defer so the just-finished runner has fully transitioned to not-running
|
|
325
|
+
// before the follow-up is re-evaluated (otherwise it would re-queue).
|
|
326
|
+
setImmediate(() => {
|
|
327
|
+
for (const event of queue) {
|
|
328
|
+
this.handleEvent(event).catch((error) => {
|
|
329
|
+
this.logger.error(`Failed to re-dispatch queued ${this.adapter.platformName} follow-up (thread ${threadKey})`, error instanceof Error ? error : new Error(String(error)));
|
|
330
|
+
});
|
|
331
|
+
}
|
|
332
|
+
});
|
|
333
|
+
}
|
|
281
334
|
enqueueReply(sessionId, event) {
|
|
282
335
|
const queue = this.pendingReplyEvents.get(sessionId) ?? [];
|
|
283
336
|
queue.push(event);
|
|
@@ -325,13 +378,18 @@ export class ChatSessionHandler {
|
|
|
325
378
|
* Build a runner config for a chat session.
|
|
326
379
|
* Delegates to RunnerConfigBuilder for config assembly.
|
|
327
380
|
*/
|
|
328
|
-
buildRunnerConfig(workspacePath, workspaceName, systemPrompt, sessionId, resumeSessionId) {
|
|
381
|
+
async buildRunnerConfig(workspacePath, workspaceName, systemPrompt, sessionId, resumeSessionId) {
|
|
329
382
|
const sessionLogger = this.logger.withContext({
|
|
330
383
|
sessionId,
|
|
331
384
|
platform: this.adapter.platformName,
|
|
332
385
|
});
|
|
333
386
|
// Read live values from the provider at session-build time
|
|
334
387
|
const provider = this.deps.chatRepositoryProvider;
|
|
388
|
+
const repository = provider.getDefaultRepository();
|
|
389
|
+
const repositoryPaths = provider.getRepositoryPaths();
|
|
390
|
+
const skillsConfig = this.deps.resolveSkillsConfig
|
|
391
|
+
? await this.deps.resolveSkillsConfig({ repository, repositoryPaths })
|
|
392
|
+
: {};
|
|
335
393
|
return this.deps.runnerConfigBuilder.buildChatConfig({
|
|
336
394
|
workspacePath,
|
|
337
395
|
workspaceName,
|
|
@@ -341,9 +399,11 @@ export class ChatSessionHandler {
|
|
|
341
399
|
cyrusHome: this.deps.cyrusHome,
|
|
342
400
|
platformName: this.adapter.platformName,
|
|
343
401
|
linearWorkspaceId: provider.getDefaultLinearWorkspaceId(),
|
|
344
|
-
repository
|
|
345
|
-
repositoryPaths
|
|
402
|
+
repository,
|
|
403
|
+
repositoryPaths,
|
|
346
404
|
platformMcpConfigOverrides: this.deps.getPlatformMcpConfigOverrides?.(),
|
|
405
|
+
plugins: skillsConfig.plugins,
|
|
406
|
+
skills: skillsConfig.skills,
|
|
347
407
|
logger: sessionLogger,
|
|
348
408
|
onMessage: (message) => this.handleAgentMessage(sessionId, message),
|
|
349
409
|
onError: (error) => this.deps.onClaudeError(error),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionHandler.js","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChatSessionHandler.js","sourceRoot":"","sources":["../src/ChatSessionHandler.ts"],"names":[],"mappings":"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"}
|
package/dist/EdgeWorker.d.ts
CHANGED
|
@@ -37,8 +37,6 @@ export declare class EdgeWorker extends EventEmitter {
|
|
|
37
37
|
private persistenceManager;
|
|
38
38
|
private sharedApplicationServer;
|
|
39
39
|
private cyrusHome;
|
|
40
|
-
/** Per-org GitHub App installation tokens pushed by cyrus-hosted (lazy file-backed reads) */
|
|
41
|
-
private githubTokenStore;
|
|
42
40
|
private globalSessionRegistry;
|
|
43
41
|
private configPath?;
|
|
44
42
|
/** @internal - Exposed for testing only */
|
|
@@ -151,11 +149,9 @@ export declare class EdgeWorker extends EventEmitter {
|
|
|
151
149
|
*/
|
|
152
150
|
/**
|
|
153
151
|
* Resolve a GitHub API token from (in priority order):
|
|
154
|
-
* 1.
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
-
* 3. Self-minted installation token from GitHub App credentials (self-hosted)
|
|
158
|
-
* 4. Personal access token from GITHUB_TOKEN env var (fallback)
|
|
152
|
+
* 1. Forwarded installation token from CYHOST (cloud/proxy mode)
|
|
153
|
+
* 2. Self-minted installation token from GitHub App credentials (self-hosted)
|
|
154
|
+
* 3. Personal access token from GITHUB_TOKEN env var (fallback)
|
|
159
155
|
*/
|
|
160
156
|
private resolveGitHubToken;
|
|
161
157
|
private handleGitHubWebhook;
|
package/dist/EdgeWorker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgeWorker.d.ts","sourceRoot":"","sources":["../src/EdgeWorker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"EdgeWorker.d.ts","sourceRoot":"","sources":["../src/EdgeWorker.ts"],"names":[],"mappings":"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"}
|
package/dist/EdgeWorker.js
CHANGED
|
@@ -8,8 +8,8 @@ import { LinearClient } from "@linear/sdk";
|
|
|
8
8
|
import { buildBaseSessionEnv, ClaudeRunner, HttpSessionStore, normalizeMcpHttpTransport, } from "cyrus-claude-runner";
|
|
9
9
|
import { getCyrusAppUrl } from "cyrus-cloudflare-tunnel-client";
|
|
10
10
|
import { CodexRunner } from "cyrus-codex-runner";
|
|
11
|
-
import { ConfigUpdater
|
|
12
|
-
import { CLIIssueTrackerService, CLIRPCServer, createLogger, DEFAULT_PROXY_URL,
|
|
11
|
+
import { ConfigUpdater } from "cyrus-config-updater";
|
|
12
|
+
import { CLIIssueTrackerService, CLIRPCServer, createLogger, DEFAULT_PROXY_URL, isAgentSessionCreatedWebhook, isAgentSessionPromptedWebhook, isContentUpdateMessage, isIssueAssignedWebhook, isIssueCommentMentionWebhook, isIssueDeletedWebhook, isIssueNewCommentWebhook, isIssueStateChangeMessage, isIssueStateChangeWebhook, isIssueStateIdUpdateWebhook, isIssueTitleOrDescriptionUpdateWebhook, isIssueUnassignedWebhook, isSessionStartMessage, isStopSignalMessage, isUnassignMessage, isUserPromptMessage, PersistenceManager, requireLinearWorkspaceId, resolvePath, WebhookIpValidator, } from "cyrus-core";
|
|
13
13
|
import { CursorRunner } from "cyrus-cursor-runner";
|
|
14
14
|
import { GeminiRunner } from "cyrus-gemini-runner";
|
|
15
15
|
import { extractCommentAuthor, extractCommentBody, extractCommentId, extractCommentUrl, extractPRBaseBranchRef, extractPRBranchRef, extractPRNumber, extractPRTitle, extractRepoFullName, extractRepoName, extractRepoOwner, extractSessionKey, GitHubAppTokenProvider, GitHubCommentService, GitHubEventTransport, isCommentOnPullRequest, isIssueCommentPayload, isPullRequestReviewCommentPayload, isPullRequestReviewPayload, stripMention, } from "cyrus-github-event-transport";
|
|
@@ -32,7 +32,7 @@ import { GlobalSessionRegistry } from "./GlobalSessionRegistry.js";
|
|
|
32
32
|
import { McpConfigService } from "./McpConfigService.js";
|
|
33
33
|
import { PromptBuilder } from "./PromptBuilder.js";
|
|
34
34
|
import { RepositoryRouter, } from "./RepositoryRouter.js";
|
|
35
|
-
import { RunnerConfigBuilder } from "./RunnerConfigBuilder.js";
|
|
35
|
+
import { RunnerConfigBuilder, resolveIssueMcpConfigPath, } from "./RunnerConfigBuilder.js";
|
|
36
36
|
import { RunnerSelectionService } from "./RunnerSelectionService.js";
|
|
37
37
|
import { SharedApplicationServer } from "./SharedApplicationServer.js";
|
|
38
38
|
import { SkillsPluginResolver, } from "./SkillsPluginResolver.js";
|
|
@@ -68,8 +68,6 @@ export class EdgeWorker extends EventEmitter {
|
|
|
68
68
|
persistenceManager;
|
|
69
69
|
sharedApplicationServer;
|
|
70
70
|
cyrusHome;
|
|
71
|
-
/** Per-org GitHub App installation tokens pushed by cyrus-hosted (lazy file-backed reads) */
|
|
72
|
-
githubTokenStore;
|
|
73
71
|
globalSessionRegistry; // Centralized session storage across all repositories
|
|
74
72
|
configPath; // Path to config.json file
|
|
75
73
|
/** @internal - Exposed for testing only */
|
|
@@ -145,7 +143,6 @@ export class EdgeWorker extends EventEmitter {
|
|
|
145
143
|
super();
|
|
146
144
|
this.config = EdgeWorker.normalizeConfigPaths(config);
|
|
147
145
|
this.cyrusHome = config.cyrusHome;
|
|
148
|
-
this.githubTokenStore = new GitHubTokenStore(this.cyrusHome);
|
|
149
146
|
this.logger = createLogger({ component: "EdgeWorker" });
|
|
150
147
|
this.persistenceManager = new PersistenceManager(join(this.cyrusHome, "state"));
|
|
151
148
|
// Mirror Claude SDK session transcripts to the hosted control plane
|
|
@@ -343,20 +340,6 @@ export class EdgeWorker extends EventEmitter {
|
|
|
343
340
|
* Start the edge worker
|
|
344
341
|
*/
|
|
345
342
|
async start() {
|
|
346
|
-
// If cyrus-hosted has pushed per-org GitHub App tokens previously, make
|
|
347
|
-
// sure the git credential helper and the per-invocation gh token
|
|
348
|
-
// resolver are wired up (idempotent). Covers the case where the
|
|
349
|
-
// process restarted after the helper config was wiped.
|
|
350
|
-
if (existsSync(this.githubTokenStore.filePath)) {
|
|
351
|
-
try {
|
|
352
|
-
ensureGitHubCredentialHelper(this.cyrusHome);
|
|
353
|
-
ensureGhTokenResolver(this.cyrusHome);
|
|
354
|
-
this.logger.info("✅ GitHub auth scripts configured from existing token store");
|
|
355
|
-
}
|
|
356
|
-
catch (error) {
|
|
357
|
-
this.logger.warn("Failed to configure GitHub auth scripts on startup (non-fatal):", error instanceof Error ? error : new Error(String(error)));
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
343
|
// Deploy default skills to cyrusHome if not already present (one-time setup)
|
|
361
344
|
await this.defaultSkillsDeployer.ensureDeployed();
|
|
362
345
|
// Scaffold user skills plugin manifest if needed (one-time setup)
|
|
@@ -712,6 +695,14 @@ export class EdgeWorker extends EventEmitter {
|
|
|
712
695
|
// Live read so hot-reloaded config (`setConfig`) picks up new
|
|
713
696
|
// per-platform MCP paths without rebuilding the handler.
|
|
714
697
|
getPlatformMcpConfigOverrides: () => this.config.slackMcpConfigs,
|
|
698
|
+
resolveSkillsConfig: async ({ repository, repositoryPaths }) => {
|
|
699
|
+
const plugins = await this.skillsPluginResolver.resolve();
|
|
700
|
+
const skills = await this.skillsPluginResolver.discoverSkillNames(plugins, {
|
|
701
|
+
repositoryId: repository?.id,
|
|
702
|
+
repoPaths: repositoryPaths,
|
|
703
|
+
});
|
|
704
|
+
return { plugins, skills };
|
|
705
|
+
},
|
|
715
706
|
onWebhookStart: () => {
|
|
716
707
|
this.activeWebhookCount++;
|
|
717
708
|
},
|
|
@@ -764,18 +755,11 @@ export class EdgeWorker extends EventEmitter {
|
|
|
764
755
|
*/
|
|
765
756
|
/**
|
|
766
757
|
* Resolve a GitHub API token from (in priority order):
|
|
767
|
-
* 1.
|
|
768
|
-
*
|
|
769
|
-
*
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
*/
|
|
773
|
-
async resolveGitHubToken(event, repository) {
|
|
774
|
-
if (repository?.githubUrl) {
|
|
775
|
-
const storedToken = this.githubTokenStore.getTokenForRepoUrl(repository.githubUrl);
|
|
776
|
-
if (storedToken)
|
|
777
|
-
return storedToken;
|
|
778
|
-
}
|
|
758
|
+
* 1. Forwarded installation token from CYHOST (cloud/proxy mode)
|
|
759
|
+
* 2. Self-minted installation token from GitHub App credentials (self-hosted)
|
|
760
|
+
* 3. Personal access token from GITHUB_TOKEN env var (fallback)
|
|
761
|
+
*/
|
|
762
|
+
async resolveGitHubToken(event) {
|
|
779
763
|
if (event.installationToken)
|
|
780
764
|
return event.installationToken;
|
|
781
765
|
if (this.gitHubAppTokenProvider) {
|
|
@@ -834,7 +818,7 @@ export class EdgeWorker extends EventEmitter {
|
|
|
834
818
|
}
|
|
835
819
|
this.logger.info(`Processing GitHub webhook: ${repoFullName}#${prNumber} by @${commentAuthor}${isPullRequestReview ? " (pull_request_review)" : ""}`);
|
|
836
820
|
// Add "eyes" reaction to acknowledge receipt (not for pull_request_review — we post a comment instead)
|
|
837
|
-
const reactionToken = await this.resolveGitHubToken(event
|
|
821
|
+
const reactionToken = await this.resolveGitHubToken(event);
|
|
838
822
|
if (reactionToken && !isPullRequestReview) {
|
|
839
823
|
const commentId = extractCommentId(event);
|
|
840
824
|
if (commentId) {
|
|
@@ -1096,9 +1080,16 @@ Your base branch \`${branchName}\` has received ${commitCount} new commit(s). Co
|
|
|
1096
1080
|
if (isRunning &&
|
|
1097
1081
|
existingRunner?.supportsStreamingInput &&
|
|
1098
1082
|
existingRunner.addStreamMessage) {
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1083
|
+
// Best-effort notification; a steer-only backend may reject it if no
|
|
1084
|
+
// turn is active. Don't let that throw out of the update handler.
|
|
1085
|
+
try {
|
|
1086
|
+
existingRunner.addStreamMessage(notification);
|
|
1087
|
+
this.logger.debug(`[base-branch-update] Streamed notification to session ${session.id} for branch ${branchName}`);
|
|
1088
|
+
break;
|
|
1089
|
+
}
|
|
1090
|
+
catch (error) {
|
|
1091
|
+
this.logger.debug(`[base-branch-update] Stream rejected for session ${session.id}; skipping`, { error: error instanceof Error ? error.message : String(error) });
|
|
1092
|
+
}
|
|
1102
1093
|
}
|
|
1103
1094
|
}
|
|
1104
1095
|
}
|
|
@@ -1123,7 +1114,7 @@ Your base branch \`${branchName}\` has received ${commitCount} new commit(s). Co
|
|
|
1123
1114
|
* For issue_comment events, the branch refs are not in the payload
|
|
1124
1115
|
* and must be fetched from the GitHub API.
|
|
1125
1116
|
*/
|
|
1126
|
-
async fetchPRBranchRefs(event,
|
|
1117
|
+
async fetchPRBranchRefs(event, _repository) {
|
|
1127
1118
|
if (!isIssueCommentPayload(event.payload))
|
|
1128
1119
|
return null;
|
|
1129
1120
|
const prUrl = event.payload.issue.pull_request?.url;
|
|
@@ -1137,8 +1128,8 @@ Your base branch \`${branchName}\` has received ${commitCount} new commit(s). Co
|
|
|
1137
1128
|
Accept: "application/vnd.github+json",
|
|
1138
1129
|
"X-GitHub-Api-Version": "2022-11-28",
|
|
1139
1130
|
};
|
|
1140
|
-
// Resolve GitHub token (
|
|
1141
|
-
const token = await this.resolveGitHubToken(event
|
|
1131
|
+
// Resolve GitHub token (installation token > App token > PAT)
|
|
1132
|
+
const token = await this.resolveGitHubToken(event);
|
|
1142
1133
|
if (token) {
|
|
1143
1134
|
headers.Authorization = `Bearer ${token}`;
|
|
1144
1135
|
}
|
|
@@ -1275,7 +1266,7 @@ ${taskSection}`;
|
|
|
1275
1266
|
/**
|
|
1276
1267
|
* Post a reply back to the GitHub PR comment after the session completes.
|
|
1277
1268
|
*/
|
|
1278
|
-
async postGitHubReply(event, runner,
|
|
1269
|
+
async postGitHubReply(event, runner, _repository) {
|
|
1279
1270
|
try {
|
|
1280
1271
|
// Get the last assistant message from the runner as the summary
|
|
1281
1272
|
const messages = runner.getMessages();
|
|
@@ -1300,8 +1291,8 @@ ${taskSection}`;
|
|
|
1300
1291
|
this.logger.warn("Cannot post GitHub reply: no PR number");
|
|
1301
1292
|
return;
|
|
1302
1293
|
}
|
|
1303
|
-
// Resolve GitHub token (
|
|
1304
|
-
const token = await this.resolveGitHubToken(event
|
|
1294
|
+
// Resolve GitHub token (installation token > App token > PAT)
|
|
1295
|
+
const token = await this.resolveGitHubToken(event);
|
|
1305
1296
|
if (!token) {
|
|
1306
1297
|
this.logger.warn("Cannot post GitHub reply: no installation token or GITHUB_TOKEN configured");
|
|
1307
1298
|
this.logger.debug(`Would have posted reply to ${owner}/${repo}#${prNumber} (comment ${commentId}): ${summary}`);
|
|
@@ -2600,10 +2591,16 @@ ${taskSection}`;
|
|
|
2600
2591
|
if (isRunning &&
|
|
2601
2592
|
existingRunner?.supportsStreamingInput &&
|
|
2602
2593
|
existingRunner.addStreamMessage) {
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2594
|
+
// Best-effort; a steer-only backend may reject when no turn is active.
|
|
2595
|
+
try {
|
|
2596
|
+
existingRunner.addStreamMessage(fullPrompt);
|
|
2597
|
+
delivered = true;
|
|
2598
|
+
this.logger.debug(`[issue-update] Streamed update to session ${sessionId} (key=${webhookKey}, changed=[${changedFields.join(", ")}])`);
|
|
2599
|
+
break;
|
|
2600
|
+
}
|
|
2601
|
+
catch (error) {
|
|
2602
|
+
this.logger.debug(`[issue-update] Stream rejected for session ${sessionId}; skipping (key=${webhookKey})`, { error: error instanceof Error ? error.message : String(error) });
|
|
2603
|
+
}
|
|
2607
2604
|
}
|
|
2608
2605
|
else if (isRunning) {
|
|
2609
2606
|
this.logger.debug(`[issue-update] Session ${sessionId} is running but doesn't support streaming input, skipping (key=${webhookKey})`);
|
|
@@ -4436,14 +4433,6 @@ ${input.userComment}
|
|
|
4436
4433
|
: this.config.githubMcpConfigs,
|
|
4437
4434
|
linearWorkspaceId,
|
|
4438
4435
|
cyrusHome: this.cyrusHome,
|
|
4439
|
-
// Org-matched GitHub App installation token (pushed by cyrus-hosted):
|
|
4440
|
-
// exposed to the session as GH_TOKEN / CYRUS_GH_TOKEN so `gh` and
|
|
4441
|
-
// other tools authenticate against this repo's org. Undefined when
|
|
4442
|
-
// no token store entry matches — zero behavior change for self-host
|
|
4443
|
-
// users without the token file.
|
|
4444
|
-
githubToken: repository.githubUrl
|
|
4445
|
-
? this.githubTokenStore.getTokenForRepoUrl(repository.githubUrl)
|
|
4446
|
-
: undefined,
|
|
4447
4436
|
logger: log,
|
|
4448
4437
|
plugins,
|
|
4449
4438
|
skills: allowedSkillNames,
|
|
@@ -4646,15 +4635,7 @@ ${input.userComment}
|
|
|
4646
4635
|
// mcpConfigPath stays scoped to that repo, otherwise the
|
|
4647
4636
|
// team-level `linearMcpConfigs` list applies. Same coupling
|
|
4648
4637
|
// the live `buildIssueConfig` path uses.
|
|
4649
|
-
const
|
|
4650
|
-
const mcpConfigPath = repoHasAllowedToolsOverride
|
|
4651
|
-
? this.mcpConfigService.buildMergedMcpConfigPath(repo)
|
|
4652
|
-
: this.config.linearMcpConfigs &&
|
|
4653
|
-
this.config.linearMcpConfigs.length > 0
|
|
4654
|
-
? this.config.linearMcpConfigs.length === 1
|
|
4655
|
-
? this.config.linearMcpConfigs[0]
|
|
4656
|
-
: [...this.config.linearMcpConfigs]
|
|
4657
|
-
: undefined;
|
|
4638
|
+
const mcpConfigPath = resolveIssueMcpConfigPath(repo, this.config.linearMcpConfigs, this.mcpConfigService.buildMergedMcpConfigPath.bind(this.mcpConfigService));
|
|
4658
4639
|
let mcpServers = { ...mcpConfig };
|
|
4659
4640
|
if (mcpConfigPath) {
|
|
4660
4641
|
const paths = Array.isArray(mcpConfigPath)
|
|
@@ -4842,10 +4823,20 @@ ${input.userComment}
|
|
|
4842
4823
|
if (attachmentManifest) {
|
|
4843
4824
|
fullPrompt = `${promptBody}\n\n${attachmentManifest}`;
|
|
4844
4825
|
}
|
|
4845
|
-
|
|
4846
|
-
|
|
4826
|
+
// `addStreamMessage` can reject the message if the turn ended in the
|
|
4827
|
+
// race window between "still running" and "turn finished" (e.g. the
|
|
4828
|
+
// Codex app-server backend, which only steers an active turn). Fall
|
|
4829
|
+
// through to the resume path so the comment is never dropped. Claude's
|
|
4830
|
+
// streaming input never throws here, so this is a no-op for Claude.
|
|
4831
|
+
try {
|
|
4832
|
+
existingRunner.addStreamMessage(fullPrompt);
|
|
4833
|
+
return true; // Message added to stream
|
|
4834
|
+
}
|
|
4835
|
+
catch (error) {
|
|
4836
|
+
log.warn(`Streaming message rejected for ${sessionId}; falling back to resume (${logContext})`, { error: error instanceof Error ? error.message : String(error) });
|
|
4837
|
+
}
|
|
4847
4838
|
}
|
|
4848
|
-
// Not streaming - resume/start session
|
|
4839
|
+
// Not streaming (or streaming was rejected) - resume/start session
|
|
4849
4840
|
log.debug(`Resuming Claude session for ${sessionId} (${logContext})`);
|
|
4850
4841
|
await this.resumeAgentSession(session, repository, sessionId, agentSessionManager, promptBody, attachmentManifest, isNewSession, additionalAllowedDirs, linearWorkspaceId, undefined, // maxTurns
|
|
4851
4842
|
commentAuthor, commentTimestamp);
|
|
@@ -4880,8 +4871,16 @@ ${input.userComment}
|
|
|
4880
4871
|
if (attachmentManifest) {
|
|
4881
4872
|
fullPrompt = `${promptBody}\n\n${attachmentManifest}`;
|
|
4882
4873
|
}
|
|
4883
|
-
|
|
4884
|
-
|
|
4874
|
+
// See handlePromptWithStreamingCheck: a steer-only backend can reject
|
|
4875
|
+
// the message if the turn just ended. Fall through to a fresh resume
|
|
4876
|
+
// turn rather than dropping the comment. No-op for Claude.
|
|
4877
|
+
try {
|
|
4878
|
+
existingRunner.addStreamMessage(fullPrompt);
|
|
4879
|
+
return;
|
|
4880
|
+
}
|
|
4881
|
+
catch (error) {
|
|
4882
|
+
log.warn(`Streaming message rejected for ${sessionId}; falling back to resume`, { error: error instanceof Error ? error.message : String(error) });
|
|
4883
|
+
}
|
|
4885
4884
|
}
|
|
4886
4885
|
// Stop existing runner if it's not running
|
|
4887
4886
|
if (existingRunner) {
|