cyrus-edge-worker 0.2.5 → 0.2.6

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.
Files changed (60) hide show
  1. package/dist/AgentSessionManager.d.ts +42 -5
  2. package/dist/AgentSessionManager.d.ts.map +1 -1
  3. package/dist/AgentSessionManager.js +135 -15
  4. package/dist/AgentSessionManager.js.map +1 -1
  5. package/dist/AskUserQuestionHandler.d.ts +96 -0
  6. package/dist/AskUserQuestionHandler.d.ts.map +1 -0
  7. package/dist/AskUserQuestionHandler.js +203 -0
  8. package/dist/AskUserQuestionHandler.js.map +1 -0
  9. package/dist/EdgeWorker.d.ts +72 -11
  10. package/dist/EdgeWorker.d.ts.map +1 -1
  11. package/dist/EdgeWorker.js +469 -124
  12. package/dist/EdgeWorker.js.map +1 -1
  13. package/dist/GitService.d.ts +34 -0
  14. package/dist/GitService.d.ts.map +1 -0
  15. package/dist/GitService.js +347 -0
  16. package/dist/GitService.js.map +1 -0
  17. package/dist/SharedApplicationServer.d.ts +2 -1
  18. package/dist/SharedApplicationServer.d.ts.map +1 -1
  19. package/dist/SharedApplicationServer.js +5 -3
  20. package/dist/SharedApplicationServer.js.map +1 -1
  21. package/dist/index.d.ts +5 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +4 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/procedures/{ProcedureRouter.d.ts → ProcedureAnalyzer.d.ts} +11 -11
  26. package/dist/procedures/ProcedureAnalyzer.d.ts.map +1 -0
  27. package/dist/procedures/{ProcedureRouter.js → ProcedureAnalyzer.js} +21 -14
  28. package/dist/procedures/ProcedureAnalyzer.js.map +1 -0
  29. package/dist/procedures/index.d.ts +2 -2
  30. package/dist/procedures/index.d.ts.map +1 -1
  31. package/dist/procedures/index.js +2 -2
  32. package/dist/procedures/index.js.map +1 -1
  33. package/dist/procedures/registry.d.ts +20 -1
  34. package/dist/procedures/registry.d.ts.map +1 -1
  35. package/dist/procedures/registry.js +26 -1
  36. package/dist/procedures/registry.js.map +1 -1
  37. package/dist/procedures/types.d.ts +29 -5
  38. package/dist/procedures/types.d.ts.map +1 -1
  39. package/dist/procedures/types.js +1 -1
  40. package/dist/prompts/subroutines/user-testing-summary.md +87 -0
  41. package/dist/prompts/subroutines/user-testing.md +48 -0
  42. package/dist/prompts/subroutines/validation-fixer.md +56 -0
  43. package/dist/prompts/subroutines/verifications.md +51 -24
  44. package/dist/validation/ValidationLoopController.d.ts +54 -0
  45. package/dist/validation/ValidationLoopController.d.ts.map +1 -0
  46. package/dist/validation/ValidationLoopController.js +242 -0
  47. package/dist/validation/ValidationLoopController.js.map +1 -0
  48. package/dist/validation/index.d.ts +7 -0
  49. package/dist/validation/index.d.ts.map +1 -0
  50. package/dist/validation/index.js +7 -0
  51. package/dist/validation/index.js.map +1 -0
  52. package/dist/validation/types.d.ts +90 -0
  53. package/dist/validation/types.d.ts.map +1 -0
  54. package/dist/validation/types.js +33 -0
  55. package/dist/validation/types.js.map +1 -0
  56. package/package.json +51 -49
  57. package/prompts/graphite-orchestrator.md +360 -0
  58. package/LICENSE +0 -674
  59. package/dist/procedures/ProcedureRouter.d.ts.map +0 -1
  60. package/dist/procedures/ProcedureRouter.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { EventEmitter } from "node:events";
2
2
  import type { SDKMessage, SDKResultMessage, SDKSystemMessage } from "cyrus-claude-runner";
3
3
  import { type CyrusAgentSession, type CyrusAgentSessionEntry, type IAgentRunner, type IIssueTrackerService, type IssueMinimal, type SerializedCyrusAgentSession, type SerializedCyrusAgentSessionEntry, type Workspace } from "cyrus-core";
4
- import type { ProcedureRouter } from "./procedures/ProcedureRouter.js";
4
+ import type { ProcedureAnalyzer } from "./procedures/ProcedureAnalyzer.js";
5
5
  import type { SharedApplicationServer } from "./SharedApplicationServer.js";
6
6
  /**
7
7
  * Events emitted by AgentSessionManager
@@ -11,6 +11,29 @@ export interface AgentSessionManagerEvents {
11
11
  linearAgentActivitySessionId: string;
12
12
  session: CyrusAgentSession;
13
13
  }) => void;
14
+ /**
15
+ * Emitted when validation fails and we need to run the validation-fixer
16
+ * The EdgeWorker should respond by running the fixer prompt and then re-running verifications
17
+ */
18
+ validationLoopIteration: (data: {
19
+ linearAgentActivitySessionId: string;
20
+ session: CyrusAgentSession;
21
+ /** The fixer prompt to run (already rendered with failure context) */
22
+ fixerPrompt: string;
23
+ /** Current iteration (1-based) */
24
+ iteration: number;
25
+ /** Maximum iterations allowed */
26
+ maxIterations: number;
27
+ }) => void;
28
+ /**
29
+ * Emitted when we need to re-run the verifications subroutine
30
+ */
31
+ validationLoopRerun: (data: {
32
+ linearAgentActivitySessionId: string;
33
+ session: CyrusAgentSession;
34
+ /** Current iteration (1-based) */
35
+ iteration: number;
36
+ }) => void;
14
37
  }
15
38
  /**
16
39
  * Type-safe event emitter interface for AgentSessionManager
@@ -33,11 +56,11 @@ export declare class AgentSessionManager extends EventEmitter {
33
56
  private activeTasksBySession;
34
57
  private toolCallsByToolUseId;
35
58
  private activeStatusActivitiesBySession;
36
- private procedureRouter?;
59
+ private procedureAnalyzer?;
37
60
  private sharedApplicationServer?;
38
61
  private getParentSessionId?;
39
62
  private resumeParentSession?;
40
- constructor(issueTracker: IIssueTrackerService, getParentSessionId?: (childSessionId: string) => string | undefined, resumeParentSession?: (parentSessionId: string, prompt: string, childSessionId: string) => Promise<void>, procedureRouter?: ProcedureRouter, sharedApplicationServer?: SharedApplicationServer);
63
+ constructor(issueTracker: IIssueTrackerService, getParentSessionId?: (childSessionId: string) => string | undefined, resumeParentSession?: (parentSessionId: string, prompt: string, childSessionId: string) => Promise<void>, procedureAnalyzer?: ProcedureAnalyzer, sharedApplicationServer?: SharedApplicationServer);
41
64
  /**
42
65
  * Initialize a Linear agent session from webhook
43
66
  * The session is already created by Linear, we just need to track it
@@ -60,6 +83,20 @@ export declare class AgentSessionManager extends EventEmitter {
60
83
  * Handle completion using procedure routing system
61
84
  */
62
85
  private handleProcedureCompletion;
86
+ /**
87
+ * Handle validation loop completion for subroutines that use usesValidationLoop
88
+ * Returns true if the validation loop took over control flow (needs fixer or retry)
89
+ * Returns false if validation passed or max retries reached (continue with normal advancement)
90
+ */
91
+ private handleValidationLoopCompletion;
92
+ /**
93
+ * Update validation loop state in session metadata
94
+ */
95
+ private updateValidationLoopState;
96
+ /**
97
+ * Clear validation loop state from session metadata
98
+ */
99
+ private clearValidationLoopState;
63
100
  /**
64
101
  * Handle child session completion and resume parent
65
102
  */
@@ -184,9 +221,9 @@ export declare class AgentSessionManager extends EventEmitter {
184
221
  */
185
222
  private postModelNotificationThought;
186
223
  /**
187
- * Post an ephemeral "Routing your request..." thought and return the activity ID
224
+ * Post an ephemeral "Analyzing your request..." thought and return the activity ID
188
225
  */
189
- postRoutingThought(linearAgentActivitySessionId: string): Promise<string | null>;
226
+ postAnalyzingThought(linearAgentActivitySessionId: string): Promise<string | null>;
190
227
  /**
191
228
  * Post the procedure selection result as a non-ephemeral thought
192
229
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSessionManager.d.ts","sourceRoot":"","sources":["../src/AgentSessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentSessionManager.d.ts","sourceRoot":"","sources":["../src/AgentSessionManager.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { EventEmitter } from "node:events";
2
2
  import { AgentActivitySignal, AgentSessionStatus, AgentSessionType, } from "cyrus-core";
3
+ import { DEFAULT_VALIDATION_LOOP_CONFIG, parseValidationResult, renderValidationFixerPrompt, } from "./validation/index.js";
3
4
  /**
4
5
  * Manages Agent Sessions integration with Claude Code SDK
5
6
  * Transforms Claude streaming messages into Agent Session format
@@ -14,16 +15,16 @@ export class AgentSessionManager extends EventEmitter {
14
15
  activeTasksBySession = new Map(); // Maps session ID to active Task tool use ID
15
16
  toolCallsByToolUseId = new Map(); // Track tool calls by their tool_use_id
16
17
  activeStatusActivitiesBySession = new Map(); // Maps session ID to active compacting status activity ID
17
- procedureRouter;
18
+ procedureAnalyzer;
18
19
  sharedApplicationServer;
19
20
  getParentSessionId;
20
21
  resumeParentSession;
21
- constructor(issueTracker, getParentSessionId, resumeParentSession, procedureRouter, sharedApplicationServer) {
22
+ constructor(issueTracker, getParentSessionId, resumeParentSession, procedureAnalyzer, sharedApplicationServer) {
22
23
  super();
23
24
  this.issueTracker = issueTracker;
24
25
  this.getParentSessionId = getParentSessionId;
25
26
  this.resumeParentSession = resumeParentSession;
26
- this.procedureRouter = procedureRouter;
27
+ this.procedureAnalyzer = procedureAnalyzer;
27
28
  this.sharedApplicationServer = sharedApplicationServer;
28
29
  }
29
30
  /**
@@ -146,8 +147,8 @@ export class AgentSessionManager extends EventEmitter {
146
147
  * Handle completion using procedure routing system
147
148
  */
148
149
  async handleProcedureCompletion(session, linearAgentActivitySessionId, resultMessage) {
149
- if (!this.procedureRouter) {
150
- throw new Error("ProcedureRouter not available");
150
+ if (!this.procedureAnalyzer) {
151
+ throw new Error("ProcedureAnalyzer not available");
151
152
  }
152
153
  // Check if error occurred
153
154
  if (resultMessage.subtype !== "success") {
@@ -161,10 +162,10 @@ export class AgentSessionManager extends EventEmitter {
161
162
  return;
162
163
  }
163
164
  // Check if there's a next subroutine
164
- const nextSubroutine = this.procedureRouter.getNextSubroutine(session);
165
+ const nextSubroutine = this.procedureAnalyzer.getNextSubroutine(session);
165
166
  if (nextSubroutine) {
166
167
  // More subroutines to run - check if current subroutine requires approval
167
- const currentSubroutine = this.procedureRouter.getCurrentSubroutine(session);
168
+ const currentSubroutine = this.procedureAnalyzer.getCurrentSubroutine(session);
168
169
  if (currentSubroutine?.requiresApproval) {
169
170
  console.log(`[AgentSessionManager] Current subroutine "${currentSubroutine.name}" requires approval before proceeding`);
170
171
  // Check if SharedApplicationServer is available
@@ -216,9 +217,17 @@ export class AgentSessionManager extends EventEmitter {
216
217
  return; // Stop workflow
217
218
  }
218
219
  }
220
+ // Check if current subroutine uses validation loop
221
+ if (currentSubroutine?.usesValidationLoop) {
222
+ const handled = await this.handleValidationLoopCompletion(session, linearAgentActivitySessionId, resultMessage, sessionId, nextSubroutine);
223
+ if (handled) {
224
+ return; // Validation loop took over control flow
225
+ }
226
+ // If not handled (validation passed or max retries), continue with normal advancement
227
+ }
219
228
  // Advance procedure state
220
229
  console.log(`[AgentSessionManager] Subroutine completed, advancing to next: ${nextSubroutine.name}`);
221
- this.procedureRouter.advanceToNextSubroutine(session, sessionId);
230
+ this.procedureAnalyzer.advanceToNextSubroutine(session, sessionId);
222
231
  // Emit event for EdgeWorker to handle subroutine transition
223
232
  // This replaces the callback pattern and allows EdgeWorker to subscribe
224
233
  this.emit("subroutineComplete", {
@@ -237,6 +246,117 @@ export class AgentSessionManager extends EventEmitter {
237
246
  }
238
247
  }
239
248
  }
249
+ /**
250
+ * Handle validation loop completion for subroutines that use usesValidationLoop
251
+ * Returns true if the validation loop took over control flow (needs fixer or retry)
252
+ * Returns false if validation passed or max retries reached (continue with normal advancement)
253
+ */
254
+ async handleValidationLoopCompletion(session, linearAgentActivitySessionId, resultMessage, _sessionId, _nextSubroutine) {
255
+ const maxIterations = DEFAULT_VALIDATION_LOOP_CONFIG.maxIterations;
256
+ // Get or initialize validation loop state
257
+ let validationLoop = session.metadata?.procedure?.validationLoop;
258
+ if (!validationLoop) {
259
+ validationLoop = {
260
+ iteration: 0,
261
+ inFixerMode: false,
262
+ attempts: [],
263
+ };
264
+ }
265
+ // Check if we're coming back from the fixer
266
+ if (validationLoop.inFixerMode) {
267
+ // Fixer completed, now we need to re-run verifications
268
+ console.log(`[AgentSessionManager] Validation fixer completed for iteration ${validationLoop.iteration}, re-running verifications`);
269
+ // Clear fixer mode flag
270
+ validationLoop.inFixerMode = false;
271
+ this.updateValidationLoopState(session, validationLoop);
272
+ // Emit event to re-run verifications
273
+ this.emit("validationLoopRerun", {
274
+ linearAgentActivitySessionId,
275
+ session,
276
+ iteration: validationLoop.iteration,
277
+ });
278
+ return true;
279
+ }
280
+ // Parse the validation result from the response
281
+ const resultText = "result" in resultMessage ? resultMessage.result : undefined;
282
+ const structuredOutput = "structured_output" in resultMessage
283
+ ? resultMessage.structured_output
284
+ : undefined;
285
+ const validationResult = parseValidationResult(resultText, structuredOutput);
286
+ // Record this attempt
287
+ const newIteration = validationLoop.iteration + 1;
288
+ validationLoop.iteration = newIteration;
289
+ validationLoop.attempts.push({
290
+ iteration: newIteration,
291
+ pass: validationResult.pass,
292
+ reason: validationResult.reason,
293
+ timestamp: Date.now(),
294
+ });
295
+ console.log(`[AgentSessionManager] Validation result for iteration ${newIteration}/${maxIterations}: pass=${validationResult.pass}, reason="${validationResult.reason.substring(0, 100)}..."`);
296
+ // Update state in session
297
+ this.updateValidationLoopState(session, validationLoop);
298
+ // Check if validation passed
299
+ if (validationResult.pass) {
300
+ console.log(`[AgentSessionManager] Validation passed after ${newIteration} iteration(s)`);
301
+ // Clear validation loop state for next subroutine
302
+ this.clearValidationLoopState(session);
303
+ return false; // Continue with normal advancement
304
+ }
305
+ // Check if we've exceeded max retries
306
+ if (newIteration >= maxIterations) {
307
+ console.log(`[AgentSessionManager] Validation failed after ${newIteration} iterations, continuing anyway`);
308
+ // Post a thought about the failures
309
+ await this.createThoughtActivity(linearAgentActivitySessionId, `Validation loop exhausted after ${newIteration} attempts. Last failure: ${validationResult.reason}`);
310
+ // Clear validation loop state for next subroutine
311
+ this.clearValidationLoopState(session);
312
+ return false; // Continue with normal advancement
313
+ }
314
+ // Validation failed and we have retries left - run the fixer
315
+ console.log(`[AgentSessionManager] Validation failed, running fixer (iteration ${newIteration}/${maxIterations})`);
316
+ // Set fixer mode flag
317
+ validationLoop.inFixerMode = true;
318
+ this.updateValidationLoopState(session, validationLoop);
319
+ // Render the fixer prompt with context
320
+ const previousAttempts = validationLoop.attempts.slice(0, -1).map((a) => ({
321
+ iteration: a.iteration,
322
+ reason: a.reason,
323
+ }));
324
+ const fixerPrompt = renderValidationFixerPrompt({
325
+ failureReason: validationResult.reason,
326
+ iteration: newIteration,
327
+ maxIterations,
328
+ previousAttempts,
329
+ });
330
+ // Emit event for EdgeWorker to run the fixer
331
+ this.emit("validationLoopIteration", {
332
+ linearAgentActivitySessionId,
333
+ session,
334
+ fixerPrompt,
335
+ iteration: newIteration,
336
+ maxIterations,
337
+ });
338
+ return true; // Validation loop took over control flow
339
+ }
340
+ /**
341
+ * Update validation loop state in session metadata
342
+ */
343
+ updateValidationLoopState(session, validationLoop) {
344
+ if (!session.metadata) {
345
+ session.metadata = {};
346
+ }
347
+ if (!session.metadata.procedure) {
348
+ return; // No procedure metadata, can't update
349
+ }
350
+ session.metadata.procedure.validationLoop = validationLoop;
351
+ }
352
+ /**
353
+ * Clear validation loop state from session metadata
354
+ */
355
+ clearValidationLoopState(session) {
356
+ if (session.metadata?.procedure) {
357
+ delete session.metadata.procedure.validationLoop;
358
+ }
359
+ }
240
360
  /**
241
361
  * Handle child session completion and resume parent
242
362
  */
@@ -633,7 +753,7 @@ export class AgentSessionManager extends EventEmitter {
633
753
  }
634
754
  // Check if current subroutine has suppressThoughtPosting enabled
635
755
  // If so, suppress thoughts and actions (but still post responses and results)
636
- const currentSubroutine = this.procedureRouter?.getCurrentSubroutine(session);
756
+ const currentSubroutine = this.procedureAnalyzer?.getCurrentSubroutine(session);
637
757
  if (currentSubroutine?.suppressThoughtPosting) {
638
758
  // Only suppress thoughts and actions, not responses or results
639
759
  if (content.type === "thought" || content.type === "action") {
@@ -999,30 +1119,30 @@ export class AgentSessionManager extends EventEmitter {
999
1119
  }
1000
1120
  }
1001
1121
  /**
1002
- * Post an ephemeral "Routing your request..." thought and return the activity ID
1122
+ * Post an ephemeral "Analyzing your request..." thought and return the activity ID
1003
1123
  */
1004
- async postRoutingThought(linearAgentActivitySessionId) {
1124
+ async postAnalyzingThought(linearAgentActivitySessionId) {
1005
1125
  try {
1006
1126
  const result = await this.issueTracker.createAgentActivity({
1007
1127
  agentSessionId: linearAgentActivitySessionId,
1008
1128
  content: {
1009
1129
  type: "thought",
1010
- body: "Routing your request…",
1130
+ body: "Analyzing your request…",
1011
1131
  },
1012
1132
  ephemeral: true,
1013
1133
  });
1014
1134
  if (result.success && result.agentActivity) {
1015
1135
  const activity = await result.agentActivity;
1016
- console.log(`[AgentSessionManager] Posted routing thought for session ${linearAgentActivitySessionId}`);
1136
+ console.log(`[AgentSessionManager] Posted analyzing thought for session ${linearAgentActivitySessionId}`);
1017
1137
  return activity.id;
1018
1138
  }
1019
1139
  else {
1020
- console.error(`[AgentSessionManager] Failed to post routing thought:`, result);
1140
+ console.error(`[AgentSessionManager] Failed to post analyzing thought:`, result);
1021
1141
  return null;
1022
1142
  }
1023
1143
  }
1024
1144
  catch (error) {
1025
- console.error(`[AgentSessionManager] Error posting routing thought:`, error);
1145
+ console.error(`[AgentSessionManager] Error posting analyzing thought:`, error);
1026
1146
  return null;
1027
1147
  }
1028
1148
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AgentSessionManager.js","sourceRoot":"","sources":["../src/AgentSessionManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentSessionManager.js","sourceRoot":"","sources":["../src/AgentSessionManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Handler for AskUserQuestion tool invocations using Linear's select signal.
3
+ *
4
+ * This handler bridges the Claude SDK's AskUserQuestion tool with Linear's
5
+ * agent elicitation API. When Claude uses the AskUserQuestion tool, this handler:
6
+ * 1. Posts an elicitation activity to Linear with the question and options
7
+ * 2. Stores the pending question with a promise resolver
8
+ * 3. Waits for the "prompted" webhook event from Linear
9
+ * 4. Resolves the promise with the user's response
10
+ *
11
+ * The handler follows the same pattern as RepositoryRouter for pending selections,
12
+ * but is specifically designed for user questions during agent execution.
13
+ *
14
+ * @see {@link https://linear.app/developers/agent-signals#select}
15
+ */
16
+ import type { AskUserQuestionInput, AskUserQuestionResult, IIssueTrackerService } from "cyrus-core";
17
+ /**
18
+ * Dependencies required by AskUserQuestionHandler
19
+ */
20
+ export interface AskUserQuestionHandlerDeps {
21
+ /**
22
+ * Get issue tracker for a workspace
23
+ * @param organizationId - Linear organization/workspace ID
24
+ */
25
+ getIssueTracker: (organizationId: string) => IIssueTrackerService | null;
26
+ }
27
+ /**
28
+ * Configuration for AskUserQuestionHandler
29
+ */
30
+ export interface AskUserQuestionHandlerConfig {
31
+ /** Placeholder for future configuration. Set to undefined. */
32
+ _placeholder?: undefined;
33
+ }
34
+ /**
35
+ * Handler for presenting AskUserQuestion tool calls to users via Linear's select signal.
36
+ *
37
+ * Usage:
38
+ * 1. Create handler instance with dependencies
39
+ * 2. Call `handleAskUserQuestion()` when Claude uses the AskUserQuestion tool
40
+ * 3. The handler posts an elicitation to Linear and returns a promise
41
+ * 4. When the "prompted" webhook arrives, call `handleUserResponse()` to resolve the promise
42
+ */
43
+ export declare class AskUserQuestionHandler {
44
+ private deps;
45
+ /**
46
+ * Map of agent session ID to pending question data.
47
+ * Used to track questions awaiting user response.
48
+ */
49
+ private pendingQuestions;
50
+ constructor(deps: AskUserQuestionHandlerDeps);
51
+ /**
52
+ * Handle an AskUserQuestion tool call by presenting it to the user via Linear.
53
+ *
54
+ * This method:
55
+ * 1. Validates the input (only 1 question allowed)
56
+ * 2. Posts an elicitation activity to Linear with the select signal
57
+ * 3. Returns a promise that resolves when the user responds
58
+ *
59
+ * @param input - The AskUserQuestion tool input (must contain exactly 1 question)
60
+ * @param linearAgentSessionId - Linear agent session ID (for tracking and API calls)
61
+ * @param organizationId - Linear organization/workspace ID
62
+ * @param signal - AbortSignal for cancellation
63
+ * @returns Promise resolving to the user's answer or denial
64
+ */
65
+ handleAskUserQuestion(input: AskUserQuestionInput, linearAgentSessionId: string, organizationId: string, signal: AbortSignal): Promise<AskUserQuestionResult>;
66
+ /**
67
+ * Handle user response from the "prompted" webhook event.
68
+ *
69
+ * This method is called when Linear sends an AgentSessionPrompted webhook
70
+ * in response to a select signal elicitation.
71
+ *
72
+ * @param linearAgentSessionId - Linear agent session ID
73
+ * @param selectedValue - The value selected by the user (option label or free text)
74
+ * @returns true if a pending question was resolved, false if no pending question found
75
+ */
76
+ handleUserResponse(linearAgentSessionId: string, selectedValue: string): boolean;
77
+ /**
78
+ * Check if there's a pending question for this agent session.
79
+ *
80
+ * @param linearAgentSessionId - Linear agent session ID
81
+ * @returns true if there's a pending question
82
+ */
83
+ hasPendingQuestion(linearAgentSessionId: string): boolean;
84
+ /**
85
+ * Cancel a pending question.
86
+ *
87
+ * @param linearAgentSessionId - Linear agent session ID
88
+ * @param reason - Reason for cancellation
89
+ */
90
+ cancelPendingQuestion(linearAgentSessionId: string, reason: string): void;
91
+ /**
92
+ * Get the number of pending questions (for debugging/monitoring).
93
+ */
94
+ get pendingCount(): number;
95
+ }
96
+ //# sourceMappingURL=AskUserQuestionHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AskUserQuestionHandler.d.ts","sourceRoot":"","sources":["../src/AskUserQuestionHandler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAGX,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,MAAM,YAAY,CAAC;AAepB;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAC1C;;;OAGG;IACH,eAAe,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,oBAAoB,GAAG,IAAI,CAAC;CACzE;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC5C,8DAA8D;IAC9D,YAAY,CAAC,EAAE,SAAS,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,qBAAa,sBAAsB;IAClC,OAAO,CAAC,IAAI,CAA6B;IAEzC;;;OAGG;IACH,OAAO,CAAC,gBAAgB,CAA2C;gBAEvD,IAAI,EAAE,0BAA0B;IAI5C;;;;;;;;;;;;;OAaG;IACG,qBAAqB,CAC1B,KAAK,EAAE,oBAAoB,EAC3B,oBAAoB,EAAE,MAAM,EAC5B,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,WAAW,GACjB,OAAO,CAAC,qBAAqB,CAAC;IAyHjC;;;;;;;;;OASG;IACH,kBAAkB,CACjB,oBAAoB,EAAE,MAAM,EAC5B,aAAa,EAAE,MAAM,GACnB,OAAO;IA4BV;;;;;OAKG;IACH,kBAAkB,CAAC,oBAAoB,EAAE,MAAM,GAAG,OAAO;IAIzD;;;;;OAKG;IACH,qBAAqB,CAAC,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAazE;;OAEG;IACH,IAAI,YAAY,IAAI,MAAM,CAEzB;CACD"}