jumbo-cli 3.16.0 → 3.16.1

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 (67) hide show
  1. package/dist/application/agents/AgentInvocation.d.ts +5 -0
  2. package/dist/application/agents/AgentInvocation.d.ts.map +1 -1
  3. package/dist/application/context/goals/codify/CodifierProcessManager.d.ts +1 -1
  4. package/dist/application/context/goals/codify/CodifierProcessManager.d.ts.map +1 -1
  5. package/dist/application/context/goals/codify/CodifierProcessManager.js +48 -39
  6. package/dist/application/context/goals/codify/CodifierProcessManager.js.map +1 -1
  7. package/dist/application/context/goals/refine/RefinerProcessManager.d.ts +1 -1
  8. package/dist/application/context/goals/refine/RefinerProcessManager.d.ts.map +1 -1
  9. package/dist/application/context/goals/refine/RefinerProcessManager.js +53 -37
  10. package/dist/application/context/goals/refine/RefinerProcessManager.js.map +1 -1
  11. package/dist/application/context/goals/review/ReviewerProcessManager.d.ts +1 -2
  12. package/dist/application/context/goals/review/ReviewerProcessManager.d.ts.map +1 -1
  13. package/dist/application/context/goals/review/ReviewerProcessManager.js +54 -57
  14. package/dist/application/context/goals/review/ReviewerProcessManager.js.map +1 -1
  15. package/dist/application/daemons/IProcessManager.d.ts +3 -0
  16. package/dist/application/daemons/IProcessManager.d.ts.map +1 -1
  17. package/dist/application/daemons/ProcessManagerEventEmitter.d.ts +12 -0
  18. package/dist/application/daemons/ProcessManagerEventEmitter.d.ts.map +1 -0
  19. package/dist/application/daemons/ProcessManagerEventEmitter.js +49 -0
  20. package/dist/application/daemons/ProcessManagerEventEmitter.js.map +1 -0
  21. package/dist/infrastructure/agents/AgentCliGateway.d.ts +3 -1
  22. package/dist/infrastructure/agents/AgentCliGateway.d.ts.map +1 -1
  23. package/dist/infrastructure/agents/AgentCliGateway.js +45 -10
  24. package/dist/infrastructure/agents/AgentCliGateway.js.map +1 -1
  25. package/dist/infrastructure/context/project/init/AntigravityConfigurer.d.ts +2 -0
  26. package/dist/infrastructure/context/project/init/AntigravityConfigurer.d.ts.map +1 -1
  27. package/dist/infrastructure/context/project/init/AntigravityConfigurer.js +30 -10
  28. package/dist/infrastructure/context/project/init/AntigravityConfigurer.js.map +1 -1
  29. package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.d.ts +2 -0
  30. package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.d.ts.map +1 -1
  31. package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.js +5 -1
  32. package/dist/infrastructure/daemons/NodeWorkerDaemonProcessController.js.map +1 -1
  33. package/dist/presentation/cli/commands/goals/list/GoalListOutputBuilder.js +1 -1
  34. package/dist/presentation/cli/commands/goals/list/GoalListOutputBuilder.js.map +1 -1
  35. package/dist/presentation/cli/commands/project/init/project.init.js +1 -1
  36. package/dist/presentation/cli/commands/project/init/project.init.js.map +1 -1
  37. package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.js +1 -1
  38. package/dist/presentation/tui/cockpit/CockpitDaemonAgentConfigCycler.js.map +1 -1
  39. package/dist/presentation/tui/cockpit/CockpitDaemonPanel.d.ts.map +1 -1
  40. package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js +37 -1
  41. package/dist/presentation/tui/cockpit/CockpitDaemonPanel.js.map +1 -1
  42. package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.d.ts.map +1 -1
  43. package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.js +10 -0
  44. package/dist/presentation/tui/cockpit/DaemonEventRowMessageFormatter.js.map +1 -1
  45. package/dist/presentation/tui/cockpit/DaemonEventRows.d.ts.map +1 -1
  46. package/dist/presentation/tui/cockpit/DaemonEventRows.js +36 -2
  47. package/dist/presentation/tui/cockpit/DaemonEventRows.js.map +1 -1
  48. package/dist/presentation/tui/daemon-subprocesses/DaemonEventCategory.d.ts +2 -0
  49. package/dist/presentation/tui/daemon-subprocesses/DaemonEventCategory.d.ts.map +1 -1
  50. package/dist/presentation/tui/daemon-subprocesses/DaemonEventCategory.js +2 -0
  51. package/dist/presentation/tui/daemon-subprocesses/DaemonEventCategory.js.map +1 -1
  52. package/dist/presentation/tui/daemon-subprocesses/DaemonEventSnapshot.d.ts +3 -0
  53. package/dist/presentation/tui/daemon-subprocesses/DaemonEventSnapshot.d.ts.map +1 -1
  54. package/dist/presentation/tui/daemon-subprocesses/DaemonOutputEventParser.d.ts.map +1 -1
  55. package/dist/presentation/tui/daemon-subprocesses/DaemonOutputEventParser.js +2 -0
  56. package/dist/presentation/tui/daemon-subprocesses/DaemonOutputEventParser.js.map +1 -1
  57. package/dist/presentation/tui/daemon-subprocesses/ManagedSubprocess.d.ts +2 -0
  58. package/dist/presentation/tui/daemon-subprocesses/ManagedSubprocess.d.ts.map +1 -1
  59. package/dist/presentation/tui/daemon-subprocesses/SubprocessLifecycleEventRecorder.d.ts +2 -0
  60. package/dist/presentation/tui/daemon-subprocesses/SubprocessLifecycleEventRecorder.d.ts.map +1 -1
  61. package/dist/presentation/tui/daemon-subprocesses/SubprocessLifecycleEventRecorder.js +49 -1
  62. package/dist/presentation/tui/daemon-subprocesses/SubprocessLifecycleEventRecorder.js.map +1 -1
  63. package/dist/presentation/tui/daemon-subprocesses/SubprocessManager.d.ts +3 -0
  64. package/dist/presentation/tui/daemon-subprocesses/SubprocessManager.d.ts.map +1 -1
  65. package/dist/presentation/tui/daemon-subprocesses/SubprocessManager.js +61 -1
  66. package/dist/presentation/tui/daemon-subprocesses/SubprocessManager.js.map +1 -1
  67. package/package.json +1 -1
@@ -1,6 +1,11 @@
1
1
  export interface AgentInvocation {
2
2
  readonly agentId: string;
3
3
  readonly prompt: string;
4
+ readonly onActivity?: (activity: AgentActivity) => void;
5
+ }
6
+ export interface AgentActivity {
7
+ readonly stream: "stdout" | "stderr";
8
+ readonly text: string;
4
9
  }
5
10
  export interface AgentInvocationResult {
6
11
  readonly exitCode: number;
@@ -1 +1 @@
1
- {"version":3,"file":"AgentInvocation.d.ts","sourceRoot":"","sources":["../../../src/application/agents/AgentInvocation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"AgentInvocation.d.ts","sourceRoot":"","sources":["../../../src/application/agents/AgentInvocation.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B"}
@@ -26,9 +26,9 @@ export declare class CodifierProcessManager implements IProcessManager {
26
26
  selectEligibleGoals(): Promise<GoalView[]>;
27
27
  buildPrompt(goalId: string): string;
28
28
  private isGoalDone;
29
- private emit;
30
29
  private emitFailure;
31
30
  private track;
31
+ private emitReturnedAgentOutput;
32
32
  private errorProperties;
33
33
  }
34
34
  //# sourceMappingURL=CodifierProcessManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CodifierProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/codify/CodifierProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA+B3D,MAAM,MAAM,qBAAqB,GAC/B,oBAAoB,CAAC;AAEvB,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE3D,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAEzD,qBAAa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAuF5E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAShD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YASrB,UAAU;IAKxB,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,WAAW;IAenB,OAAO,CAAC,KAAK;IAYb,OAAO,CAAC,eAAe;CAoBxB"}
1
+ {"version":3,"file":"CodifierProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/codify/CodifierProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA+B3D,MAAM,MAAM,qBAAqB,GAC/B,oBAAoB,CAAC;AAEvB,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,MAAM,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;AAE3D,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,CAAC;AAEzD,qBAAa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA6F5E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAShD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YASrB,UAAU;IAKxB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,KAAK;IAYb,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,eAAe;CAoBxB"}
@@ -1,3 +1,4 @@
1
+ import { ProcessManagerEventEmitter } from "../../../daemons/ProcessManagerEventEmitter.js";
1
2
  import { GoalStatus } from "../../../../domain/goals/Constants.js";
2
3
  const CODIFIER_EVENT_SOURCE = "codifier";
3
4
  const CODIFIER_EVENT_TEXT_FIELD_MAX_LENGTH = 2048;
@@ -39,23 +40,24 @@ export class CodifierProcessManager {
39
40
  }
40
41
  async processNext(options) {
41
42
  const startedAt = process.hrtime.bigint();
43
+ const events = new ProcessManagerEventEmitter(CODIFIER_EVENT_SOURCE, options, startedAt);
44
+ events.emit("processing", "polling", "polling for approved goals", { phase: "polling" });
42
45
  const goals = await this.selectEligibleGoals();
43
46
  if (goals.length === 0) {
44
- this.emit(options, {
45
- daemon: CODIFIER_EVENT_SOURCE,
46
- status: "idle",
47
- source: CODIFIER_EVENT_SOURCE,
48
- ...CODIFIER_EVENT_COPY.noWork,
49
- });
47
+ events.emit("idle", CODIFIER_EVENT_COPY.noWork.category, CODIFIER_EVENT_COPY.noWork.message, { phase: "idle" });
50
48
  this.track("codifier_process_completed", startedAt, { status: "idle", attempts: 0 });
51
49
  return { status: "idle", attempts: 0 };
52
50
  }
53
51
  const goal = goals[0];
52
+ events.emit("processing", "selection", "selected goal for codification", {
53
+ phase: "selection",
54
+ goalId: goal.goalId,
55
+ });
54
56
  try {
55
57
  await this.codifyGoalController.handle({ goalId: goal.goalId });
56
58
  }
57
59
  catch (error) {
58
- this.emitFailure(options, goal.goalId, error);
60
+ this.emitFailure(events, goal.goalId, error);
59
61
  this.track("codifier_process_completed", startedAt, {
60
62
  status: "failed",
61
63
  attempts: 0,
@@ -65,29 +67,33 @@ export class CodifierProcessManager {
65
67
  return { status: "failed", goalId: goal.goalId, attempts: 0 };
66
68
  }
67
69
  for (let attempt = 1; attempt <= options.maxRetries; attempt++) {
68
- this.emit(options, {
69
- daemon: CODIFIER_EVENT_SOURCE,
70
- status: "processing",
71
- source: CODIFIER_EVENT_SOURCE,
70
+ const attemptContext = {
72
71
  goalId: goal.goalId,
73
72
  attempt,
74
73
  maxRetries: options.maxRetries,
75
- ...CODIFIER_EVENT_COPY.workStarted,
74
+ };
75
+ events.emit("processing", CODIFIER_EVENT_COPY.workStarted.category, CODIFIER_EVENT_COPY.workStarted.message, {
76
+ phase: "working",
77
+ ...attemptContext,
76
78
  });
77
- const result = await this.agentGateway.invoke({
79
+ let sawAgentActivity = false;
80
+ const invocation = {
78
81
  agentId: options.agentId,
79
82
  prompt: this.buildPrompt(goal.goalId),
80
- });
83
+ onActivity: (activity) => {
84
+ sawAgentActivity = true;
85
+ events.emitAgentActivity(activity.stream, activity.text, attemptContext);
86
+ },
87
+ };
88
+ const result = await this.agentGateway.invoke(invocation);
89
+ if (!sawAgentActivity) {
90
+ this.emitReturnedAgentOutput(events, result, attemptContext);
91
+ }
81
92
  if (await this.isGoalDone(goal.goalId)) {
82
- this.emit(options, {
83
- daemon: CODIFIER_EVENT_SOURCE,
84
- status: "completed",
85
- source: CODIFIER_EVENT_SOURCE,
86
- goalId: goal.goalId,
87
- attempt,
88
- maxRetries: options.maxRetries,
93
+ events.emit("completed", CODIFIER_EVENT_COPY.completed.category, CODIFIER_EVENT_COPY.completed.message, {
94
+ phase: "completed",
95
+ ...attemptContext,
89
96
  exitCode: result.exitCode,
90
- ...CODIFIER_EVENT_COPY.completed,
91
97
  });
92
98
  this.track("codifier_process_completed", startedAt, {
93
99
  status: "completed",
@@ -98,16 +104,17 @@ export class CodifierProcessManager {
98
104
  return { status: "completed", goalId: goal.goalId, attempts: attempt };
99
105
  }
100
106
  const retryExhausted = attempt === options.maxRetries;
101
- this.emit(options, {
102
- daemon: CODIFIER_EVENT_SOURCE,
103
- status: retryExhausted ? "exhausted" : "skipped",
104
- source: CODIFIER_EVENT_SOURCE,
105
- goalId: goal.goalId,
106
- attempt,
107
- maxRetries: options.maxRetries,
107
+ events.emit(retryExhausted ? "exhausted" : "skipped", retryExhausted ? CODIFIER_EVENT_COPY.exhausted.category : CODIFIER_EVENT_COPY.skipped.category, retryExhausted ? CODIFIER_EVENT_COPY.exhausted.message : CODIFIER_EVENT_COPY.skipped.message, {
108
+ phase: retryExhausted ? "exhausted" : "retry",
109
+ ...attemptContext,
108
110
  exitCode: result.exitCode,
109
- ...(retryExhausted ? CODIFIER_EVENT_COPY.exhausted : CODIFIER_EVENT_COPY.skipped),
110
111
  });
112
+ if (!retryExhausted) {
113
+ events.emit("processing", "retry", "retrying codification", {
114
+ phase: "retry",
115
+ ...attemptContext,
116
+ });
117
+ }
111
118
  }
112
119
  this.track("codifier_process_completed", startedAt, {
113
120
  status: "exhausted",
@@ -135,16 +142,10 @@ export class CodifierProcessManager {
135
142
  const goal = await this.goalReader.findById(goalId);
136
143
  return goal?.status === GoalStatus.DONE;
137
144
  }
138
- emit(options, event) {
139
- options.emit?.(event);
140
- }
141
- emitFailure(options, goalId, error) {
142
- this.emit(options, {
143
- daemon: CODIFIER_EVENT_SOURCE,
144
- status: "failed",
145
- source: CODIFIER_EVENT_SOURCE,
145
+ emitFailure(events, goalId, error) {
146
+ events.emit("failed", CODIFIER_EVENT_COPY.failed.category, CODIFIER_EVENT_COPY.failed.message, {
147
+ phase: "failed",
146
148
  goalId,
147
- ...CODIFIER_EVENT_COPY.failed,
148
149
  ...this.errorProperties(error),
149
150
  });
150
151
  }
@@ -155,6 +156,14 @@ export class CodifierProcessManager {
155
156
  ...properties,
156
157
  });
157
158
  }
159
+ emitReturnedAgentOutput(events, result, context) {
160
+ if (result.stdout !== undefined) {
161
+ events.emitAgentActivity("stdout", result.stdout, context);
162
+ }
163
+ if (result.stderr !== undefined) {
164
+ events.emitAgentActivity("stderr", result.stderr, context);
165
+ }
166
+ }
158
167
  errorProperties(error) {
159
168
  if (error instanceof Error) {
160
169
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"CodifierProcessManager.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/codify/CodifierProcessManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodifierProcessManager.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/codify/CodifierProcessManager.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,8 @@ export declare class RefinerProcessManager implements IProcessManager {
20
20
  selectEligibleGoals(): Promise<GoalView[]>;
21
21
  buildPrompt(goalId: string): string;
22
22
  private isGoalRefined;
23
- private emit;
24
23
  private track;
24
+ private emitReturnedAgentOutput;
25
25
  private errorProperties;
26
26
  private agentFailureProperties;
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RefinerProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/refine/RefinerProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAuB,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AACxI,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA+B3D,qBAAa,qBAAsB,YAAW,eAAe;IAEzD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA8E1E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAQhD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YAIrB,aAAa;IAK3B,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,sBAAsB;CAS/B"}
1
+ {"version":3,"file":"RefinerProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/refine/RefinerProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAEnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AA+B3D,qBAAa,qBAAsB,YAAW,eAAe;IAEzD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,iBAAiB,EAC7B,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAoF1E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAQhD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YAQrB,aAAa;IAK3B,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,sBAAsB;CAS/B"}
@@ -1,3 +1,4 @@
1
+ import { ProcessManagerEventEmitter } from "../../../daemons/ProcessManagerEventEmitter.js";
1
2
  import { GoalStatus } from "../../../../domain/goals/Constants.js";
2
3
  const REFINER_EVENT_SOURCE = "refiner";
3
4
  const REFINER_EVENT_TEXT_FIELD_MAX_LENGTH = 2048;
@@ -39,71 +40,77 @@ export class RefinerProcessManager {
39
40
  }
40
41
  async processNext(options) {
41
42
  const startedAt = process.hrtime.bigint();
43
+ const events = new ProcessManagerEventEmitter(REFINER_EVENT_SOURCE, options, startedAt);
44
+ events.emit("processing", "polling", "polling for defined goals", { phase: "polling" });
42
45
  const goals = await this.selectEligibleGoals();
43
46
  if (goals.length === 0) {
44
- this.emit(options, {
45
- daemon: REFINER_EVENT_SOURCE,
46
- status: "idle",
47
- source: REFINER_EVENT_SOURCE,
48
- ...REFINER_EVENT_COPY.noWork,
49
- });
47
+ events.emit("idle", REFINER_EVENT_COPY.noWork.category, REFINER_EVENT_COPY.noWork.message, { phase: "idle" });
50
48
  this.track(startedAt, { status: "idle", attempts: 0 });
51
49
  return { status: "idle", attempts: 0 };
52
50
  }
53
51
  const goal = goals[0];
52
+ events.emit("processing", "selection", "selected goal for refinement", {
53
+ phase: "selection",
54
+ goalId: goal.goalId,
55
+ });
54
56
  try {
55
57
  await this.refineGoalController.handle({ goalId: goal.goalId });
56
58
  }
57
59
  catch (error) {
58
60
  const errorProperties = this.errorProperties(error);
59
- this.emit(options, {
60
- daemon: REFINER_EVENT_SOURCE,
61
- status: "failed",
62
- source: REFINER_EVENT_SOURCE,
61
+ events.emit("failed", REFINER_EVENT_COPY.failed.category, REFINER_EVENT_COPY.failed.message, {
62
+ phase: "failed",
63
63
  goalId: goal.goalId,
64
- ...REFINER_EVENT_COPY.failed,
65
64
  ...errorProperties,
66
65
  });
67
66
  this.track(startedAt, { status: "failed", attempts: 0, goalId: goal.goalId, ...errorProperties });
68
67
  return { status: "failed", goalId: goal.goalId, attempts: 0 };
69
68
  }
70
69
  for (let attempt = 1; attempt <= options.maxRetries; attempt++) {
71
- this.emit(options, {
72
- daemon: REFINER_EVENT_SOURCE,
73
- status: "processing",
74
- source: REFINER_EVENT_SOURCE,
70
+ const attemptContext = {
75
71
  goalId: goal.goalId,
76
72
  attempt,
77
73
  maxRetries: options.maxRetries,
78
- ...REFINER_EVENT_COPY.workStarted,
74
+ };
75
+ events.emit("processing", REFINER_EVENT_COPY.workStarted.category, REFINER_EVENT_COPY.workStarted.message, {
76
+ phase: "working",
77
+ ...attemptContext,
79
78
  });
80
- const result = await this.agentGateway.invoke({ agentId: options.agentId, prompt: this.buildPrompt(goal.goalId) });
79
+ let sawAgentActivity = false;
80
+ const invocation = {
81
+ agentId: options.agentId,
82
+ prompt: this.buildPrompt(goal.goalId),
83
+ onActivity: (activity) => {
84
+ sawAgentActivity = true;
85
+ events.emitAgentActivity(activity.stream, activity.text, attemptContext);
86
+ },
87
+ };
88
+ const result = await this.agentGateway.invoke(invocation);
89
+ if (!sawAgentActivity) {
90
+ this.emitReturnedAgentOutput(events, result, attemptContext);
91
+ }
81
92
  if (await this.isGoalRefined(goal.goalId)) {
82
- this.emit(options, {
83
- daemon: REFINER_EVENT_SOURCE,
84
- status: "completed",
85
- source: REFINER_EVENT_SOURCE,
86
- goalId: goal.goalId,
87
- attempt,
88
- maxRetries: options.maxRetries,
93
+ events.emit("completed", REFINER_EVENT_COPY.completed.category, REFINER_EVENT_COPY.completed.message, {
94
+ phase: "completed",
95
+ ...attemptContext,
89
96
  exitCode: result.exitCode,
90
- ...REFINER_EVENT_COPY.completed,
91
97
  });
92
98
  this.track(startedAt, { status: "completed", attempts: attempt, goalId: goal.goalId, agentExitCode: result.exitCode });
93
99
  return { status: "completed", goalId: goal.goalId, attempts: attempt };
94
100
  }
95
101
  const retryExhausted = attempt === options.maxRetries;
96
- this.emit(options, {
97
- daemon: REFINER_EVENT_SOURCE,
98
- status: retryExhausted ? "exhausted" : "skipped",
99
- source: REFINER_EVENT_SOURCE,
100
- goalId: goal.goalId,
101
- attempt,
102
- maxRetries: options.maxRetries,
102
+ events.emit(retryExhausted ? "exhausted" : "skipped", retryExhausted ? REFINER_EVENT_COPY.exhausted.category : REFINER_EVENT_COPY.skipped.category, retryExhausted ? REFINER_EVENT_COPY.exhausted.message : REFINER_EVENT_COPY.skipped.message, {
103
+ phase: retryExhausted ? "exhausted" : "retry",
104
+ ...attemptContext,
103
105
  exitCode: result.exitCode,
104
- ...(retryExhausted ? REFINER_EVENT_COPY.exhausted : REFINER_EVENT_COPY.skipped),
105
106
  ...this.agentFailureProperties(result),
106
107
  });
108
+ if (!retryExhausted) {
109
+ events.emit("processing", "retry", "retrying refinement", {
110
+ phase: "retry",
111
+ ...attemptContext,
112
+ });
113
+ }
107
114
  }
108
115
  this.track(startedAt, { status: "exhausted", attempts: options.maxRetries, goalId: goal.goalId });
109
116
  return { status: "exhausted", goalId: goal.goalId, attempts: options.maxRetries };
@@ -116,15 +123,16 @@ export class RefinerProcessManager {
116
123
  .sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
117
124
  }
118
125
  buildPrompt(goalId) {
119
- return `Run the Jumbo refinement workflow for goal ${goalId}. Execute: jumbo goal refine --id ${goalId}`;
126
+ return [
127
+ `Continue the Jumbo refinement workflow for goal ${goalId}.`,
128
+ "The daemon has already moved the goal into refinement.",
129
+ `Update the goal context as needed, then complete refinement with: jumbo goal commit --id ${goalId}`,
130
+ ].join(" ");
120
131
  }
121
132
  async isGoalRefined(goalId) {
122
133
  const goal = await this.goalReader.findById(goalId);
123
134
  return goal?.status === GoalStatus.REFINED;
124
135
  }
125
- emit(options, event) {
126
- options.emit?.(event);
127
- }
128
136
  track(startedAt, properties) {
129
137
  this.telemetryClient.track("refiner_process_completed", {
130
138
  daemon: "refiner",
@@ -132,6 +140,14 @@ export class RefinerProcessManager {
132
140
  ...properties,
133
141
  });
134
142
  }
143
+ emitReturnedAgentOutput(events, result, context) {
144
+ if (result.stdout !== undefined) {
145
+ events.emitAgentActivity("stdout", result.stdout, context);
146
+ }
147
+ if (result.stderr !== undefined) {
148
+ events.emitAgentActivity("stderr", result.stderr, context);
149
+ }
150
+ }
135
151
  errorProperties(error) {
136
152
  if (error instanceof Error) {
137
153
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"RefinerProcessManager.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/refine/RefinerProcessManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RefinerProcessManager.js","sourceRoot":"","sources":["../../../../../src/application/context/goals/refine/RefinerProcessManager.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,8 @@ export declare class ReviewerProcessManager implements IProcessManager {
20
20
  selectEligibleGoals(): Promise<GoalView[]>;
21
21
  buildPrompt(goalId: string): string;
22
22
  private isReviewComplete;
23
- private emit;
24
- private emitModelOutput;
25
23
  private track;
24
+ private emitReturnedAgentOutput;
26
25
  private errorProperties;
27
26
  }
28
27
  //# sourceMappingURL=ReviewerProcessManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewerProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/review/ReviewerProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAuB,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AACxI,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAgC7E,qBAAa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,0BAA0B,EACtC,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA8E1E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAQhD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YAIrB,gBAAgB;IAK9B,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,eAAe;IA0BvB,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,eAAe;CAexB"}
1
+ {"version":3,"file":"ReviewerProcessManager.d.ts","sourceRoot":"","sources":["../../../../../src/application/context/goals/review/ReviewerProcessManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAEnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAE1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAgC7E,qBAAa,sBAAuB,YAAW,eAAe;IAE1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe;gBANf,gBAAgB,EAAE,iBAAiB,EACnC,UAAU,EAAE,0BAA0B,EACtC,WAAW,EAAE,eAAe,EAC5B,oBAAoB,EAAE,qBAAqB,EAC3C,oBAAoB,EAAE,oBAAoB,EAC1C,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,gBAAgB;IAG9C,WAAW,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAmF1E,mBAAmB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;IAQhD,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;YASrB,gBAAgB;IAK9B,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,eAAe;CAexB"}
@@ -1,3 +1,4 @@
1
+ import { ProcessManagerEventEmitter } from "../../../daemons/ProcessManagerEventEmitter.js";
1
2
  import { GoalStatus } from "../../../../domain/goals/Constants.js";
2
3
  const REVIEW_COMPLETE_STATUSES = new Set([GoalStatus.QUALIFIED, GoalStatus.REJECTED]);
3
4
  const REVIEWER_EVENT_SOURCE = "reviewer";
@@ -40,71 +41,76 @@ export class ReviewerProcessManager {
40
41
  }
41
42
  async processNext(options) {
42
43
  const startedAt = process.hrtime.bigint();
44
+ const events = new ProcessManagerEventEmitter(REVIEWER_EVENT_SOURCE, options, startedAt);
45
+ events.emit("processing", "polling", "polling for submitted goals", { phase: "polling" });
43
46
  const goals = await this.selectEligibleGoals();
44
47
  if (goals.length === 0) {
45
- this.emit(options, {
46
- daemon: REVIEWER_EVENT_SOURCE,
47
- status: "idle",
48
- source: REVIEWER_EVENT_SOURCE,
49
- ...REVIEWER_EVENT_COPY.noWork,
50
- });
48
+ events.emit("idle", REVIEWER_EVENT_COPY.noWork.category, REVIEWER_EVENT_COPY.noWork.message, { phase: "idle" });
51
49
  this.track(startedAt, { status: "idle", attempts: 0 });
52
50
  return { status: "idle", attempts: 0 };
53
51
  }
54
52
  const goal = goals[0];
53
+ events.emit("processing", "selection", "selected goal for review", {
54
+ phase: "selection",
55
+ goalId: goal.goalId,
56
+ });
55
57
  try {
56
58
  await this.reviewGoalController.handle({ goalId: goal.goalId });
57
59
  }
58
60
  catch (error) {
59
61
  const errorProperties = this.errorProperties(error);
60
- this.emit(options, {
61
- daemon: REVIEWER_EVENT_SOURCE,
62
- status: "failed",
63
- source: REVIEWER_EVENT_SOURCE,
62
+ events.emit("failed", REVIEWER_EVENT_COPY.failed.category, REVIEWER_EVENT_COPY.failed.message, {
63
+ phase: "failed",
64
64
  goalId: goal.goalId,
65
- ...REVIEWER_EVENT_COPY.failed,
66
65
  ...errorProperties,
67
66
  });
68
67
  this.track(startedAt, { status: "failed", attempts: 0, goalId: goal.goalId, ...errorProperties });
69
68
  return { status: "failed", goalId: goal.goalId, attempts: 0 };
70
69
  }
71
70
  for (let attempt = 1; attempt <= options.maxRetries; attempt++) {
72
- this.emit(options, {
73
- daemon: REVIEWER_EVENT_SOURCE,
74
- status: "processing",
75
- source: REVIEWER_EVENT_SOURCE,
71
+ const attemptContext = {
76
72
  goalId: goal.goalId,
77
73
  attempt,
78
74
  maxRetries: options.maxRetries,
79
- ...REVIEWER_EVENT_COPY.workStarted,
75
+ };
76
+ events.emit("processing", REVIEWER_EVENT_COPY.workStarted.category, REVIEWER_EVENT_COPY.workStarted.message, {
77
+ phase: "working",
78
+ ...attemptContext,
80
79
  });
81
- const result = await this.agentGateway.invoke({ agentId: options.agentId, prompt: this.buildPrompt(goal.goalId) });
82
- this.emitModelOutput(options, goal.goalId, result.stdout);
80
+ let sawAgentActivity = false;
81
+ const invocation = {
82
+ agentId: options.agentId,
83
+ prompt: this.buildPrompt(goal.goalId),
84
+ onActivity: (activity) => {
85
+ sawAgentActivity = true;
86
+ events.emitAgentActivity(activity.stream, activity.text, attemptContext);
87
+ },
88
+ };
89
+ const result = await this.agentGateway.invoke(invocation);
90
+ if (!sawAgentActivity) {
91
+ this.emitReturnedAgentOutput(events, result, attemptContext);
92
+ }
83
93
  if (await this.isReviewComplete(goal.goalId)) {
84
- this.emit(options, {
85
- daemon: REVIEWER_EVENT_SOURCE,
86
- status: "completed",
87
- source: REVIEWER_EVENT_SOURCE,
88
- goalId: goal.goalId,
89
- attempt,
90
- maxRetries: options.maxRetries,
94
+ events.emit("completed", REVIEWER_EVENT_COPY.completed.category, REVIEWER_EVENT_COPY.completed.message, {
95
+ phase: "completed",
96
+ ...attemptContext,
91
97
  exitCode: result.exitCode,
92
- ...REVIEWER_EVENT_COPY.completed,
93
98
  });
94
99
  this.track(startedAt, { status: "completed", attempts: attempt, goalId: goal.goalId, agentExitCode: result.exitCode });
95
100
  return { status: "completed", goalId: goal.goalId, attempts: attempt };
96
101
  }
97
102
  const retryExhausted = attempt === options.maxRetries;
98
- this.emit(options, {
99
- daemon: REVIEWER_EVENT_SOURCE,
100
- status: retryExhausted ? "exhausted" : "skipped",
101
- source: REVIEWER_EVENT_SOURCE,
102
- goalId: goal.goalId,
103
- attempt,
104
- maxRetries: options.maxRetries,
103
+ events.emit(retryExhausted ? "exhausted" : "skipped", retryExhausted ? REVIEWER_EVENT_COPY.exhausted.category : REVIEWER_EVENT_COPY.skipped.category, retryExhausted ? REVIEWER_EVENT_COPY.exhausted.message : REVIEWER_EVENT_COPY.skipped.message, {
104
+ phase: retryExhausted ? "exhausted" : "retry",
105
+ ...attemptContext,
105
106
  exitCode: result.exitCode,
106
- ...(retryExhausted ? REVIEWER_EVENT_COPY.exhausted : REVIEWER_EVENT_COPY.skipped),
107
107
  });
108
+ if (!retryExhausted) {
109
+ events.emit("processing", "retry", "retrying review", {
110
+ phase: "retry",
111
+ ...attemptContext,
112
+ });
113
+ }
108
114
  }
109
115
  this.track(startedAt, { status: "exhausted", attempts: options.maxRetries, goalId: goal.goalId });
110
116
  return { status: "exhausted", goalId: goal.goalId, attempts: options.maxRetries };
@@ -117,34 +123,17 @@ export class ReviewerProcessManager {
117
123
  .sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
118
124
  }
119
125
  buildPrompt(goalId) {
120
- return `Run the Jumbo review workflow for goal ${goalId}. Execute: jumbo goal review --id ${goalId}`;
126
+ return [
127
+ `Continue the Jumbo review workflow for goal ${goalId}.`,
128
+ "The daemon has already moved the goal into review.",
129
+ `If the implementation passes QA, run: jumbo goal approve --id ${goalId}`,
130
+ `If it fails QA, run: jumbo goal reject --id ${goalId} --review-issues "describe the issues"`,
131
+ ].join(" ");
121
132
  }
122
133
  async isReviewComplete(goalId) {
123
134
  const goal = await this.goalReader.findById(goalId);
124
135
  return REVIEW_COMPLETE_STATUSES.has(goal?.status ?? "unknown");
125
136
  }
126
- emit(options, event) {
127
- options.emit?.(event);
128
- }
129
- emitModelOutput(options, goalId, stdout) {
130
- if (stdout === undefined) {
131
- return;
132
- }
133
- const lines = stdout
134
- .split(/\r?\n/)
135
- .map((line) => line.trim())
136
- .filter((line) => line.length > 0);
137
- for (const line of lines) {
138
- this.emit(options, {
139
- daemon: REVIEWER_EVENT_SOURCE,
140
- status: "processing",
141
- source: REVIEWER_EVENT_SOURCE,
142
- category: "model-output",
143
- message: limitTextTail(line, REVIEWER_EVENT_TEXT_FIELD_MAX_LENGTH),
144
- goalId,
145
- });
146
- }
147
- }
148
137
  track(startedAt, properties) {
149
138
  this.telemetryClient.track("reviewer_process_completed", {
150
139
  daemon: "reviewer",
@@ -152,6 +141,14 @@ export class ReviewerProcessManager {
152
141
  ...properties,
153
142
  });
154
143
  }
144
+ emitReturnedAgentOutput(events, result, context) {
145
+ if (result.stdout !== undefined) {
146
+ events.emitAgentActivity("stdout", result.stdout, context);
147
+ }
148
+ if (result.stderr !== undefined) {
149
+ events.emitAgentActivity("stderr", result.stderr, context);
150
+ }
151
+ }
155
152
  errorProperties(error) {
156
153
  if (error instanceof Error) {
157
154
  return {