@jungjaehoon/mama-os 0.8.2 → 0.8.3

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 (75) hide show
  1. package/README.md +1 -1
  2. package/dist/agent/codex-cli-wrapper.d.ts.map +1 -1
  3. package/dist/agent/codex-cli-wrapper.js +16 -13
  4. package/dist/agent/codex-cli-wrapper.js.map +1 -1
  5. package/dist/api/graph-api-types.d.ts +2 -0
  6. package/dist/api/graph-api-types.d.ts.map +1 -1
  7. package/dist/api/graph-api.d.ts.map +1 -1
  8. package/dist/api/graph-api.js +141 -12
  9. package/dist/api/graph-api.js.map +1 -1
  10. package/dist/cli/commands/start.d.ts.map +1 -1
  11. package/dist/cli/commands/start.js +92 -5
  12. package/dist/cli/commands/start.js.map +1 -1
  13. package/dist/cli/config/config-manager.d.ts.map +1 -1
  14. package/dist/cli/config/config-manager.js +61 -2
  15. package/dist/cli/config/config-manager.js.map +1 -1
  16. package/dist/cli/config/types.d.ts +8 -0
  17. package/dist/cli/config/types.d.ts.map +1 -1
  18. package/dist/cli/config/types.js.map +1 -1
  19. package/dist/gateways/discord.d.ts +4 -0
  20. package/dist/gateways/discord.d.ts.map +1 -1
  21. package/dist/gateways/discord.js +94 -8
  22. package/dist/gateways/discord.js.map +1 -1
  23. package/dist/gateways/slack.d.ts +4 -0
  24. package/dist/gateways/slack.d.ts.map +1 -1
  25. package/dist/gateways/slack.js +4 -2
  26. package/dist/gateways/slack.js.map +1 -1
  27. package/dist/multi-agent/agent-message-queue.d.ts +2 -2
  28. package/dist/multi-agent/agent-message-queue.d.ts.map +1 -1
  29. package/dist/multi-agent/agent-message-queue.js.map +1 -1
  30. package/dist/multi-agent/agent-process-manager.d.ts +11 -6
  31. package/dist/multi-agent/agent-process-manager.d.ts.map +1 -1
  32. package/dist/multi-agent/agent-process-manager.js +118 -55
  33. package/dist/multi-agent/agent-process-manager.js.map +1 -1
  34. package/dist/multi-agent/agent-process-pool.d.ts +6 -6
  35. package/dist/multi-agent/agent-process-pool.d.ts.map +1 -1
  36. package/dist/multi-agent/agent-process-pool.js +2 -2
  37. package/dist/multi-agent/agent-process-pool.js.map +1 -1
  38. package/dist/multi-agent/delegation-format-validator.d.ts.map +1 -1
  39. package/dist/multi-agent/delegation-format-validator.js +2 -8
  40. package/dist/multi-agent/delegation-format-validator.js.map +1 -1
  41. package/dist/multi-agent/multi-agent-base.d.ts +2 -2
  42. package/dist/multi-agent/multi-agent-base.d.ts.map +1 -1
  43. package/dist/multi-agent/multi-agent-base.js +23 -10
  44. package/dist/multi-agent/multi-agent-base.js.map +1 -1
  45. package/dist/multi-agent/multi-agent-discord.d.ts +13 -4
  46. package/dist/multi-agent/multi-agent-discord.d.ts.map +1 -1
  47. package/dist/multi-agent/multi-agent-discord.js +171 -50
  48. package/dist/multi-agent/multi-agent-discord.js.map +1 -1
  49. package/dist/multi-agent/multi-agent-slack.d.ts +19 -2
  50. package/dist/multi-agent/multi-agent-slack.d.ts.map +1 -1
  51. package/dist/multi-agent/multi-agent-slack.js +145 -14
  52. package/dist/multi-agent/multi-agent-slack.js.map +1 -1
  53. package/dist/multi-agent/multi-bot-manager.d.ts.map +1 -1
  54. package/dist/multi-agent/multi-bot-manager.js +83 -27
  55. package/dist/multi-agent/multi-bot-manager.js.map +1 -1
  56. package/dist/multi-agent/orchestrator.d.ts +9 -0
  57. package/dist/multi-agent/orchestrator.d.ts.map +1 -1
  58. package/dist/multi-agent/orchestrator.js +49 -15
  59. package/dist/multi-agent/orchestrator.js.map +1 -1
  60. package/dist/multi-agent/pr-review-poller.d.ts +32 -4
  61. package/dist/multi-agent/pr-review-poller.d.ts.map +1 -1
  62. package/dist/multi-agent/pr-review-poller.js +128 -55
  63. package/dist/multi-agent/pr-review-poller.js.map +1 -1
  64. package/dist/multi-agent/runtime-process.d.ts +37 -0
  65. package/dist/multi-agent/runtime-process.d.ts.map +1 -0
  66. package/dist/multi-agent/runtime-process.js +89 -0
  67. package/dist/multi-agent/runtime-process.js.map +1 -0
  68. package/dist/multi-agent/swarm/swarm-task-runner.js.map +1 -1
  69. package/dist/multi-agent/types.d.ts +37 -1
  70. package/dist/multi-agent/types.d.ts.map +1 -1
  71. package/dist/multi-agent/types.js +3 -0
  72. package/dist/multi-agent/types.js.map +1 -1
  73. package/dist/onboarding/phase-7-integrations.js +1 -1
  74. package/package.json +1 -1
  75. package/public/viewer/js/modules/settings.js +101 -3
@@ -7,15 +7,30 @@
7
7
  * Flow:
8
8
  * 1. Agent pushes and posts PR URL in channel
9
9
  * 2. Poller detects URL → starts polling `gh api` every 60s
10
- * 3. New review comments → formatted and sent to Slack as @Sisyphus mention
10
+ * 3. New review comments → posted through callback (e.g., as lightweight reminders)
11
11
  * 4. Sisyphus analyzes severity → delegates fixes to @DevBot
12
12
  * 5. DevBot fixes → @Reviewer → approve or request changes
13
13
  * 6. Poller detects new comments or Approved → loop continues or ends
14
14
  */
15
+ type PRPollerItemKind = 'review' | 'comment' | 'thread';
16
+ type PRPollerSeverity = 'high' | 'medium' | 'low';
17
+ export interface PRPollerBatchItem {
18
+ id: string;
19
+ kind: PRPollerItemKind;
20
+ severity: PRPollerSeverity;
21
+ summary: string;
22
+ isReminder: boolean;
23
+ }
24
+ export interface PRPollerBatchDigest {
25
+ items: PRPollerBatchItem[];
26
+ newItems: PRPollerBatchItem[];
27
+ reminderItems: PRPollerBatchItem[];
28
+ }
15
29
  /**
16
30
  * Callback for sending messages to Slack
17
31
  */
18
32
  type MessageSender = (channelId: string, text: string) => Promise<void>;
33
+ type BatchItemCallback = (channelId: string, summary: string, item: PRPollerBatchItem) => Promise<void>;
19
34
  /**
20
35
  * PR Review Poller
21
36
  *
@@ -24,6 +39,7 @@ type MessageSender = (channelId: string, text: string) => Promise<void>;
24
39
  export declare class PRReviewPoller {
25
40
  private sessions;
26
41
  private messageSender;
42
+ private onBatchItem;
27
43
  private onBatchComplete;
28
44
  private logger;
29
45
  /**
@@ -34,11 +50,16 @@ export declare class PRReviewPoller {
34
50
  * Set the message sender callback (Slack WebClient wrapper)
35
51
  */
36
52
  setMessageSender(sender: MessageSender): void;
53
+ /**
54
+ * Set callback fired once per logical poll item (before chunking/sending).
55
+ * Useful for counting poll items and passing compact summaries upstream.
56
+ */
57
+ setOnBatchItem(callback: BatchItemCallback): void;
37
58
  /**
38
59
  * Set callback fired after all message chunks for a poll cycle are sent.
39
- * Used by Discord handler to trigger agent processing once (not per-chunk).
60
+ * Used by handlers to trigger lead wake-up once per poll cycle (not per-chunk).
40
61
  */
41
- setOnBatchComplete(callback: (channelId: string) => Promise<void>): void;
62
+ setOnBatchComplete(callback: (channelId: string, digest?: PRPollerBatchDigest) => Promise<void>): void;
42
63
  /**
43
64
  * Set the target agent's Slack user ID for @mentions in review messages
44
65
  * (typically the orchestrator/Sisyphus, who analyzes and delegates to DevBot)
@@ -86,6 +107,8 @@ export declare class PRReviewPoller {
86
107
  * Format PR comments with full details grouped by file.
87
108
  * Enables parallel delegation — independent files can be fixed simultaneously.
88
109
  */
110
+ private classifyCommentBatchSeverity;
111
+ private addPollerBatchItem;
89
112
  private formatComments;
90
113
  /**
91
114
  * Fetch PR review comments via gh API
@@ -97,7 +120,7 @@ export declare class PRReviewPoller {
97
120
  private fetchReviews;
98
121
  /**
99
122
  * Handle post-push: check unresolved threads, auto-reply to addressed ones,
100
- * and re-inject truly unresolved comments to Slack.
123
+ * and keep unresolved-thread state fresh for the next poll cycle.
101
124
  *
102
125
  * @param allComments - Pre-fetched comments (to avoid N+1 API calls)
103
126
  */
@@ -148,6 +171,11 @@ export declare class PRReviewPoller {
148
171
  * Send message to Slack via callback
149
172
  */
150
173
  private sendMessage;
174
+ /**
175
+ * Build a compact, single-line summary for orchestrator wake-up prompts.
176
+ * Keep the text intentionally short to avoid PR wake-up context bloat.
177
+ */
178
+ private extractBatchSummary;
151
179
  }
152
180
  export {};
153
181
  //# sourceMappingURL=pr-review-poller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pr-review-poller.d.ts","sourceRoot":"","sources":["../../src/multi-agent/pr-review-poller.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAoFH;;GAEG;AACH,KAAK,aAAa,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAExE;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,eAAe,CAAuD;IAC9E,OAAO,CAAC,MAAM,CAAqC;IAEnD;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAI7C;;;OAGG;IACH,kBAAkB,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAIxE;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAC,CAAS;IACnC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI1C;;;;;OAKG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAuFtE;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAehC;;OAEG;IACH,OAAO,IAAI,IAAI;IAUf;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,iBAAiB,IAAI;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;KACtB,EAAE;IAUH;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;YACW,IAAI;IAwOlB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAkCtB;;OAEG;YACW,aAAa;IAkB3B;;OAEG;YACW,YAAY;IAe1B;;;;;OAKG;YACW,cAAc;IAiF5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAuC/B;;OAEG;YACW,sBAAsB;IAyEpC;;OAEG;YACW,aAAa;IAqC3B;;OAEG;YACW,YAAY;IAU1B;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;YACW,YAAY;YAiBZ,gBAAgB;YAWhB,YAAY;YAQZ,UAAU;YAkBV,YAAY;IAa1B,OAAO,CAAC,WAAW;YAML,iBAAiB;IA2D/B;;OAEG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAYjF;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAK5C;;OAEG;YACW,WAAW;CA0B1B"}
1
+ {"version":3,"file":"pr-review-poller.d.ts","sourceRoot":"","sources":["../../src/multi-agent/pr-review-poller.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  * Flow:
9
9
  * 1. Agent pushes and posts PR URL in channel
10
10
  * 2. Poller detects URL → starts polling `gh api` every 60s
11
- * 3. New review comments → formatted and sent to Slack as @Sisyphus mention
11
+ * 3. New review comments → posted through callback (e.g., as lightweight reminders)
12
12
  * 4. Sisyphus analyzes severity → delegates fixes to @DevBot
13
13
  * 5. DevBot fixes → @Reviewer → approve or request changes
14
14
  * 6. Poller detects new comments or Approved → loop continues or ends
@@ -55,10 +55,13 @@ const os_1 = require("os");
55
55
  const fs_1 = require("fs");
56
56
  const promises_1 = require("fs/promises");
57
57
  const debugLogger = __importStar(require("@jungjaehoon/mama-core/debug-logger"));
58
+ const message_splitter_js_1 = require("../gateways/message-splitter.js");
58
59
  const execFileAsync = (0, util_1.promisify)(child_process_1.execFile);
59
60
  const { DebugLogger } = debugLogger;
60
61
  /** Default polling interval (60 seconds) */
61
62
  const POLL_INTERVAL_MS = 60 * 1000;
63
+ /** Reminder interval for unresolved threads (15 minutes) */
64
+ const REMIND_INTERVAL_MS = 15 * 60 * 1000;
62
65
  /** Max polling duration before auto-stop (2 hours) */
63
66
  const MAX_POLL_DURATION_MS = 2 * 60 * 60 * 1000;
64
67
  /** Marker prefix for auto-reply comments */
@@ -71,6 +74,7 @@ const FIXED_REPLY_PREFIX = '✅ Fixed in';
71
74
  class PRReviewPoller {
72
75
  sessions = new Map();
73
76
  messageSender = null;
77
+ onBatchItem = null;
74
78
  onBatchComplete = null;
75
79
  logger = new DebugLogger('PRReviewPoller');
76
80
  /**
@@ -85,9 +89,16 @@ class PRReviewPoller {
85
89
  setMessageSender(sender) {
86
90
  this.messageSender = sender;
87
91
  }
92
+ /**
93
+ * Set callback fired once per logical poll item (before chunking/sending).
94
+ * Useful for counting poll items and passing compact summaries upstream.
95
+ */
96
+ setOnBatchItem(callback) {
97
+ this.onBatchItem = callback;
98
+ }
88
99
  /**
89
100
  * Set callback fired after all message chunks for a poll cycle are sent.
90
- * Used by Discord handler to trigger agent processing once (not per-chunk).
101
+ * Used by handlers to trigger lead wake-up once per poll cycle (not per-chunk).
91
102
  */
92
103
  setOnBatchComplete(callback) {
93
104
  this.onBatchComplete = callback;
@@ -168,6 +179,7 @@ class PRReviewPoller {
168
179
  seenReviewIds,
169
180
  addressedCommentIds: new Set(),
170
181
  seenUnresolvedThreadIds: new Map(),
182
+ lastUnresolvedReminderAt: 0,
171
183
  lastHeadSha,
172
184
  startedAt: Date.now(),
173
185
  isPolling: false,
@@ -255,8 +267,20 @@ class PRReviewPoller {
255
267
  return;
256
268
  }
257
269
  session.isPolling = true;
258
- // Track if any new data is found (for onBatchComplete trigger)
259
- let hasNewData = false;
270
+ // Track batch items discovered in this poll cycle.
271
+ const cycleDigest = {
272
+ items: [],
273
+ newItems: [],
274
+ reminderItems: [],
275
+ };
276
+ const seenItemIds = new Set();
277
+ const registerItem = async (text, item) => {
278
+ if (!this.addPollerBatchItem(session.channelId, item, cycleDigest, seenItemIds)) {
279
+ return;
280
+ }
281
+ await this.sendMessage(session.channelId, text, item);
282
+ this.logger.info(`[PRPoller] Sent ${item.kind} item for ${sessionKey}${item.isReminder ? ' (reminder)' : ''}: ${item.id}`);
283
+ };
260
284
  try {
261
285
  // Auto-stop after max duration
262
286
  if (Date.now() - session.startedAt > MAX_POLL_DURATION_MS) {
@@ -291,13 +315,20 @@ class PRReviewPoller {
291
315
  for (const review of newReviews) {
292
316
  session.seenReviewIds.add(review.id);
293
317
  if (review.state === 'APPROVED') {
318
+ const summary = `✅ *PR Review* — ${sessionKey} **APPROVED** by ${review.user.login}. Polling stopped.`;
319
+ const item = {
320
+ id: `${sessionKey}:review:${review.id}`,
321
+ kind: 'review',
322
+ severity: 'high',
323
+ summary,
324
+ isReminder: false,
325
+ };
294
326
  try {
295
- await this.sendMessage(session.channelId, `✅ *PR Review* — ${sessionKey} **APPROVED** by ${review.user.login}. Polling stopped.`);
296
- hasNewData = true; // Set flag for APPROVED review
297
- // Trigger onBatchComplete for LEAD agent to handle commit+push
327
+ await registerItem(summary, item);
328
+ // Trigger onBatchComplete for follow-up workflow.
298
329
  if (this.onBatchComplete) {
299
330
  try {
300
- await this.onBatchComplete(session.channelId);
331
+ await this.onBatchComplete(session.channelId, cycleDigest);
301
332
  }
302
333
  catch (err) {
303
334
  this.logger.error(`[PRPoller] onBatchComplete error after APPROVE:`, err);
@@ -313,8 +344,15 @@ class PRReviewPoller {
313
344
  return;
314
345
  }
315
346
  if (review.state === 'CHANGES_REQUESTED') {
316
- await this.sendMessage(session.channelId, `🔴 *PR Review* — ${sessionKey} **CHANGES REQUESTED** by ${review.user.login}`);
317
- hasNewData = true; // Set flag for CHANGES_REQUESTED review
347
+ const summary = `🔴 *PR Review* — ${sessionKey} **CHANGES REQUESTED** by ${review.user.login}`;
348
+ const item = {
349
+ id: `${sessionKey}:review:${review.id}`,
350
+ kind: 'review',
351
+ severity: 'high',
352
+ summary,
353
+ isReminder: false,
354
+ };
355
+ await registerItem(summary, item);
318
356
  }
319
357
  }
320
358
  }
@@ -351,7 +389,7 @@ class PRReviewPoller {
351
389
  // After a push, check unresolved threads and auto-reply to addressed ones
352
390
  if (newPush && changedFiles.length > 0) {
353
391
  try {
354
- await this.handlePostPush(session, sessionKey, changedFiles, allComments);
392
+ await this.handlePostPush(session, changedFiles, allComments);
355
393
  }
356
394
  catch (err) {
357
395
  this.logger.error(`[PRPoller] Failed to handle post-push:`, err);
@@ -364,13 +402,19 @@ class PRReviewPoller {
364
402
  // Format and send new comments
365
403
  const formatted = this.formatComments(sessionKey, newComments);
366
404
  const mention = this.targetAgentUserId ? `<@${this.targetAgentUserId}> ` : '';
367
- await this.sendMessage(session.channelId, `${mention}${formatted}`);
405
+ const summary = `${mention}${formatted}`;
406
+ const item = {
407
+ id: `${sessionKey}:comments:${newComments.map((comment) => comment.id).join(',')}`,
408
+ kind: 'comment',
409
+ severity: this.classifyCommentBatchSeverity(newComments),
410
+ summary: summary,
411
+ isReminder: false,
412
+ };
413
+ await registerItem(summary, item);
368
414
  // Mark as seen only after successful send
369
415
  for (const c of newComments) {
370
416
  session.seenCommentIds.add(c.id);
371
417
  }
372
- // Set flag to trigger onBatchComplete
373
- hasNewData = true;
374
418
  this.logger.info(`[PRPoller] Sent ${newComments.length} new comments for ${sessionKey}`);
375
419
  }
376
420
  }
@@ -382,26 +426,37 @@ class PRReviewPoller {
382
426
  const threads = await this.fetchUnresolvedThreads(session.owner, session.repo, session.prNumber);
383
427
  const allUnresolved = threads.filter((t) => !t.isResolved);
384
428
  const now = Date.now();
385
- const REMIND_INTERVAL_MS = 60 * 1000; // Re-remind after 1 minute
386
- // New = never seen, or seen but still unresolved after remind interval
429
+ // Report unresolved threads only when they are first seen, and remind at bounded intervals.
387
430
  const toReport = allUnresolved.filter((t) => {
388
431
  const lastReported = session.seenUnresolvedThreadIds.get(t.id);
389
- if (!lastReported)
390
- return true; // never reported
391
- return now - lastReported >= REMIND_INTERVAL_MS; // stale reminder
432
+ return !lastReported;
392
433
  });
434
+ const needsReminder = toReport.length === 0 &&
435
+ now - session.lastUnresolvedReminderAt >= REMIND_INTERVAL_MS &&
436
+ allUnresolved.length > 0;
437
+ if (needsReminder) {
438
+ toReport.push(...allUnresolved.slice(0, 20));
439
+ }
393
440
  if (toReport.length > 0) {
394
- hasNewData = true;
395
- // More accurate reminder detection: only if ALL threads are already seen
396
- const seenCount = toReport.filter((t) => session.seenUnresolvedThreadIds.has(t.id)).length;
397
- const isReminder = seenCount === toReport.length && seenCount > 0;
441
+ const isReminder = needsReminder;
398
442
  const prefix = isReminder ? '🔔 *Reminder*: ' : '';
399
443
  const formatted = this.formatUnresolvedThreads(sessionKey, toReport, threads.length);
400
444
  const mention = this.targetAgentUserId ? `<@${this.targetAgentUserId}> ` : '';
401
- await this.sendMessage(session.channelId, `${mention}${prefix}${formatted}`);
445
+ const summary = `${mention}${prefix}${formatted}`;
446
+ const item = {
447
+ id: `${sessionKey}:threads:${toReport.map((thread) => thread.id).join(':')}`,
448
+ kind: 'thread',
449
+ severity: 'high',
450
+ summary,
451
+ isReminder,
452
+ };
453
+ await registerItem(summary, item);
402
454
  for (const t of toReport) {
403
455
  session.seenUnresolvedThreadIds.set(t.id, now);
404
456
  }
457
+ // Update lastUnresolvedReminderAt on all notifications (not just reminders)
458
+ // to prevent immediate reminder on the next poll after initial report
459
+ session.lastUnresolvedReminderAt = now;
405
460
  this.logger.info(`[PRPoller] Sent ${toReport.length} unresolved threads for ${sessionKey}${isReminder ? ' (reminder)' : ''}`);
406
461
  }
407
462
  // Clean up resolved threads from seen map
@@ -416,9 +471,10 @@ class PRReviewPoller {
416
471
  this.logger.error(`[PRPoller] Failed to check unresolved threads:`, err);
417
472
  }
418
473
  // Notify batch complete — triggers agent processing once after all chunks (only when new data found)
419
- if (hasNewData && this.onBatchComplete) {
474
+ if (cycleDigest.newItems.length + cycleDigest.reminderItems.length > 0 &&
475
+ this.onBatchComplete) {
420
476
  try {
421
- await this.onBatchComplete(session.channelId);
477
+ await this.onBatchComplete(session.channelId, cycleDigest);
422
478
  }
423
479
  catch (err) {
424
480
  this.logger.error(`[PRPoller] onBatchComplete error:`, err);
@@ -438,6 +494,29 @@ class PRReviewPoller {
438
494
  * Format PR comments with full details grouped by file.
439
495
  * Enables parallel delegation — independent files can be fixed simultaneously.
440
496
  */
497
+ classifyCommentBatchSeverity(comments) {
498
+ const hasFixHint = comments.some((comment) => comment.body.toLowerCase().includes('must') || comment.body.toLowerCase().includes('fail'));
499
+ return hasFixHint ? 'high' : comments.length > 2 ? 'medium' : 'low';
500
+ }
501
+ addPollerBatchItem(channelId, item, digest, seenItemIds) {
502
+ if (seenItemIds.has(item.id)) {
503
+ return false;
504
+ }
505
+ seenItemIds.add(item.id);
506
+ digest.items.push(item);
507
+ if (item.isReminder) {
508
+ digest.reminderItems.push(item);
509
+ }
510
+ else {
511
+ digest.newItems.push(item);
512
+ }
513
+ if (this.onBatchItem) {
514
+ this.onBatchItem(channelId, this.extractBatchSummary(item.summary), item).catch((err) => {
515
+ this.logger.error('[PRPoller] Failed to report batch item:', err);
516
+ });
517
+ }
518
+ return true;
519
+ }
441
520
  formatComments(sessionKey, comments) {
442
521
  // Group by file
443
522
  const byFile = new Map();
@@ -495,11 +574,11 @@ class PRReviewPoller {
495
574
  }
496
575
  /**
497
576
  * Handle post-push: check unresolved threads, auto-reply to addressed ones,
498
- * and re-inject truly unresolved comments to Slack.
577
+ * and keep unresolved-thread state fresh for the next poll cycle.
499
578
  *
500
579
  * @param allComments - Pre-fetched comments (to avoid N+1 API calls)
501
580
  */
502
- async handlePostPush(session, sessionKey, changedFiles, allComments) {
581
+ async handlePostPush(session, changedFiles, allComments) {
503
582
  const changedFileSet = new Set(changedFiles);
504
583
  // Fetch unresolved threads via GraphQL
505
584
  const threads = await this.fetchUnresolvedThreads(session.owner, session.repo, session.prNumber);
@@ -543,14 +622,10 @@ class PRReviewPoller {
543
622
  this.logger.error(`[PRPoller] Failed to reply to thread:`, err);
544
623
  }
545
624
  }
546
- this.logger.info(`[PRPoller] Auto-replied to ${addressed.length} addressed threads for ${sessionKey}`);
625
+ this.logger.info(`[PRPoller] Auto-replied to ${addressed.length} addressed threads for ${session.owner}/${session.repo}#${session.prNumber}`);
547
626
  }
548
- // Report still-unresolved threads to Slack
549
627
  if (stillUnresolved.length > 0) {
550
- const formatted = this.formatUnresolvedThreads(sessionKey, stillUnresolved, threads.length);
551
- const mention = this.targetAgentUserId ? `<@${this.targetAgentUserId}> ` : '';
552
- await this.sendMessage(session.channelId, `${mention}${formatted}`);
553
- this.logger.info(`[PRPoller] Sent ${stillUnresolved.length} unresolved threads for ${sessionKey}`);
628
+ this.logger.info(`[PRPoller] Detected ${stillUnresolved.length} still-unresolved threads in push context for ${session.owner}/${session.repo}#${session.prNumber}`);
554
629
  }
555
630
  }
556
631
  /**
@@ -829,32 +904,30 @@ class PRReviewPoller {
829
904
  /**
830
905
  * Send message to Slack via callback
831
906
  */
832
- async sendMessage(channelId, text) {
907
+ async sendMessage(channelId, text, _batchItem) {
833
908
  if (!this.messageSender) {
834
909
  this.logger.error('[PRPoller] No message sender configured');
835
- return;
910
+ throw new Error('[PRPoller] No message sender configured');
836
911
  }
837
912
  // Discord has a 2000 char limit; split long messages
838
- this.logger.info(`[PRPoller] sendMessage: ${text.length} chars`);
839
- if (text.length <= 1900) {
840
- await this.messageSender(channelId, text);
841
- return;
842
- }
843
- // Split by lines, keeping chunks under 1900 chars
844
- const lines = text.split('\n');
845
- let chunk = '';
846
- for (const line of lines) {
847
- if (chunk.length + line.length + 1 > 1900) {
848
- if (chunk)
849
- await this.messageSender(channelId, chunk);
850
- chunk = line;
851
- }
852
- else {
853
- chunk += (chunk ? '\n' : '') + line;
854
- }
855
- }
856
- if (chunk)
913
+ const chunks = (0, message_splitter_js_1.splitForDiscord)(text);
914
+ this.logger.info(`[PRPoller] sendMessage split into ${chunks.length} chunk(s)`);
915
+ for (const chunk of chunks) {
857
916
  await this.messageSender(channelId, chunk);
917
+ }
918
+ }
919
+ /**
920
+ * Build a compact, single-line summary for orchestrator wake-up prompts.
921
+ * Keep the text intentionally short to avoid PR wake-up context bloat.
922
+ */
923
+ extractBatchSummary(text) {
924
+ const stripped = text
925
+ .replace(/<@[^>]+>\s*/g, '')
926
+ .replace(/\*\*/g, '')
927
+ .trim()
928
+ .replace(/\s+/g, ' ');
929
+ const maxLength = 320;
930
+ return stripped.length > maxLength ? `${stripped.slice(0, maxLength)}…` : stripped;
858
931
  }
859
932
  }
860
933
  exports.PRReviewPoller = PRReviewPoller;
@@ -1 +1 @@
1
- {"version":3,"file":"pr-review-poller.js","sourceRoot":"","sources":["../../src/multi-agent/pr-review-poller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pr-review-poller.js","sourceRoot":"","sources":["../../src/multi-agent/pr-review-poller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { EventEmitter } from 'events';
2
+ import type { PromptCallbacks as ClaudePromptCallbacks, PromptResult as ClaudePromptResult } from '../agent/persistent-cli-process.js';
3
+ export interface AgentRuntimeProcess {
4
+ sendMessage(content: string, callbacks?: ClaudePromptCallbacks): Promise<ClaudePromptResult>;
5
+ isReady(): boolean;
6
+ stop(): void;
7
+ on(event: 'idle' | 'close' | 'error', listener: (...args: unknown[]) => void): this;
8
+ }
9
+ export interface CodexRuntimeProcessOptions {
10
+ model?: string;
11
+ systemPrompt?: string;
12
+ codexHome?: string;
13
+ cwd?: string;
14
+ sandbox?: 'read-only' | 'workspace-write' | 'danger-full-access';
15
+ profile?: string;
16
+ ephemeral?: boolean;
17
+ addDirs?: string[];
18
+ configOverrides?: string[];
19
+ skipGitRepoCheck?: boolean;
20
+ requestTimeout?: number;
21
+ }
22
+ /**
23
+ * Session-persistent Codex wrapper with the same minimal contract used by
24
+ * multi-agent runtime (sendMessage/isReady/stop + idle events).
25
+ */
26
+ export declare class CodexRuntimeProcess extends EventEmitter implements AgentRuntimeProcess {
27
+ private wrapper;
28
+ private state;
29
+ private seeded;
30
+ private stoppedDuringExecution;
31
+ private readonly systemPrompt?;
32
+ constructor(options: CodexRuntimeProcessOptions);
33
+ sendMessage(content: string, callbacks?: ClaudePromptCallbacks): Promise<ClaudePromptResult>;
34
+ isReady(): boolean;
35
+ stop(): void;
36
+ }
37
+ //# sourceMappingURL=runtime-process.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-process.d.ts","sourceRoot":"","sources":["../../src/multi-agent/runtime-process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMtC,OAAO,KAAK,EACV,eAAe,IAAI,qBAAqB,EACxC,YAAY,IAAI,kBAAkB,EACnC,MAAM,oCAAoC,CAAC;AAE5C,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC7F,OAAO,IAAI,OAAO,CAAC;IACnB,IAAI,IAAI,IAAI,CAAC;IACb,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;CACrF;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,YAAa,YAAW,mBAAmB;IAClF,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,sBAAsB,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAS;gBAE3B,OAAO,EAAE,0BAA0B;IAmBzC,WAAW,CACf,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,qBAAqB,GAChC,OAAO,CAAC,kBAAkB,CAAC;IAkD9B,OAAO,IAAI,OAAO;IAIlB,IAAI,IAAI,IAAI;CAKb"}