hungry-ghost-hive 0.40.2 → 0.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +2 -0
  2. package/dist/cli/commands/init.d.ts.map +1 -1
  3. package/dist/cli/commands/init.js +8 -0
  4. package/dist/cli/commands/init.js.map +1 -1
  5. package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.d.ts +2 -0
  6. package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.d.ts.map +1 -0
  7. package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.js +462 -0
  8. package/dist/cli/commands/manager/auto-reject-comment-only-reviews.test.js.map +1 -0
  9. package/dist/cli/commands/manager/index.d.ts +12 -0
  10. package/dist/cli/commands/manager/index.d.ts.map +1 -1
  11. package/dist/cli/commands/manager/index.js +143 -0
  12. package/dist/cli/commands/manager/index.js.map +1 -1
  13. package/dist/cli/wizard/init-wizard.d.ts +2 -1
  14. package/dist/cli/wizard/init-wizard.d.ts.map +1 -1
  15. package/dist/cli/wizard/init-wizard.js +56 -3
  16. package/dist/cli/wizard/init-wizard.js.map +1 -1
  17. package/dist/cli/wizard/init-wizard.test.js +56 -9
  18. package/dist/cli/wizard/init-wizard.test.js.map +1 -1
  19. package/dist/config/schema.d.ts +389 -0
  20. package/dist/config/schema.d.ts.map +1 -1
  21. package/dist/config/schema.js +18 -0
  22. package/dist/config/schema.js.map +1 -1
  23. package/dist/context-files/index.test.js +6 -0
  24. package/dist/context-files/index.test.js.map +1 -1
  25. package/dist/git/github.d.ts +9 -0
  26. package/dist/git/github.d.ts.map +1 -1
  27. package/dist/git/github.js +15 -0
  28. package/dist/git/github.js.map +1 -1
  29. package/dist/git/github.test.js +77 -0
  30. package/dist/git/github.test.js.map +1 -1
  31. package/dist/orchestrator/scheduler.d.ts.map +1 -1
  32. package/dist/orchestrator/scheduler.js +1 -0
  33. package/dist/orchestrator/scheduler.js.map +1 -1
  34. package/dist/utils/open-browser.d.ts +2 -1
  35. package/dist/utils/open-browser.d.ts.map +1 -1
  36. package/dist/utils/open-browser.js +25 -5
  37. package/dist/utils/open-browser.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/cli/commands/init.ts +8 -0
  40. package/src/cli/commands/manager/auto-reject-comment-only-reviews.test.ts +589 -0
  41. package/src/cli/commands/manager/index.ts +190 -0
  42. package/src/cli/wizard/init-wizard.test.ts +62 -9
  43. package/src/cli/wizard/init-wizard.ts +66 -4
  44. package/src/config/schema.ts +20 -0
  45. package/src/context-files/index.test.ts +6 -0
  46. package/src/git/github.test.ts +93 -0
  47. package/src/git/github.ts +28 -0
  48. package/src/orchestrator/scheduler.ts +1 -0
  49. package/src/utils/open-browser.ts +24 -6
package/README.md CHANGED
@@ -705,6 +705,8 @@ We appreciate contributions from everyone! This project is built and maintained
705
705
  <tr>
706
706
  <td align="center"><a href="https://github.com/nikrich"><img src="https://avatars.githubusercontent.com/u/8254123?v=4?s=100" width="100px;" alt=""/><br /><sub><b>nikrich</b></sub></a><br /><a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=nikrich" title="Code">💻</a> <a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=nikrich" title="Documentation">📖</a> <a href="#infra-nikrich" title="Infrastructure">🚀</a> <a href="#maintenance-nikrich" title="Maintenance">🚧</a></td>
707
707
  <td align="center"><a href="https://github.com/aleeuwen73"><img src="https://avatars.githubusercontent.com/u/73424841?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Alastair van Leeuwen</b></sub></a><br /><a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=aleeuwen73" title="Code">💻</a></td>
708
+ <td align="center"><a href="https://github.com/tzone85"><img src="https://avatars.githubusercontent.com/u/6205552?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Thando Mini</b></sub></a><br /><a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=tzone85" title="Code">💻</a> <a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=tzone85" title="Security">🛡️</a></td>
709
+ <td align="center"><a href="https://github.com/verigateart"><img src="https://avatars.githubusercontent.com/u/219031990?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Arthur</b></sub></a><br /><a href="https://github.com/nikrich/hungry-ghost-hive/commits?author=verigateart" title="Code">💻</a></td>
708
710
  </tr>
709
711
  </table>
710
712
 
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,eAAO,MAAM,WAAW,SA8FrB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,eAAO,MAAM,WAAW,SAsGrB,CAAC"}
@@ -66,6 +66,14 @@ export const initCommand = new Command('init')
66
66
  if (wizardResult.e2e_tests) {
67
67
  config.e2e_tests = wizardResult.e2e_tests;
68
68
  }
69
+ if (wizardResult.personas) {
70
+ for (const [agentType, personas] of Object.entries(wizardResult.personas)) {
71
+ const modelKey = agentType;
72
+ if (config.models[modelKey]) {
73
+ config.models[modelKey].personas = personas;
74
+ }
75
+ }
76
+ }
69
77
  saveConfig(paths.hiveDir, config);
70
78
  console.log();
71
79
  console.log(chalk.bold('Next steps:'));
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=auto-reject-comment-only-reviews.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-reject-comment-only-reviews.test.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/manager/auto-reject-comment-only-reviews.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,462 @@
1
+ // Licensed under the Hungry Ghost Hive License. See LICENSE.
2
+ import { beforeEach, describe, expect, it, vi } from 'vitest';
3
+ import { AgentState } from '../../../state-detectors/types.js';
4
+ // ── Mocks ──────────────────────────────────────────────────────────────────
5
+ vi.mock('../../../db/queries/pull-requests.js', () => ({
6
+ getPullRequestsByStatus: vi.fn(() => []),
7
+ updatePullRequest: vi.fn(),
8
+ getApprovedPullRequests: vi.fn(() => []),
9
+ backfillGithubPrNumbers: vi.fn(),
10
+ createPullRequest: vi.fn(),
11
+ getMergeQueue: vi.fn(() => []),
12
+ getOpenPullRequestsByStory: vi.fn(() => []),
13
+ }));
14
+ vi.mock('../../../db/queries/stories.js', () => ({
15
+ getStoriesByStatus: vi.fn(() => []),
16
+ getStoryById: vi.fn(),
17
+ updateStory: vi.fn(),
18
+ }));
19
+ vi.mock('../../../db/queries/logs.js', () => ({
20
+ createLog: vi.fn(),
21
+ }));
22
+ vi.mock('../../../db/queries/teams.js', () => ({
23
+ getAllTeams: vi.fn(() => []),
24
+ }));
25
+ vi.mock('../../../db/client.js', () => ({
26
+ queryAll: vi.fn(() => []),
27
+ queryOne: vi.fn(),
28
+ withTransaction: vi.fn((_db, fn, saveFn) => {
29
+ fn();
30
+ saveFn();
31
+ }),
32
+ }));
33
+ vi.mock('../../../git/github.js', () => ({
34
+ getPullRequestReviews: vi.fn(() => Promise.resolve([])),
35
+ getPullRequestComments: vi.fn(() => Promise.resolve([])),
36
+ isGitHubAuthenticated: vi.fn(),
37
+ isGitHubCLIAvailable: vi.fn(),
38
+ }));
39
+ vi.mock('../../../tmux/manager.js', () => ({
40
+ sendMessageWithConfirmation: vi.fn(),
41
+ getHiveSessions: vi.fn(),
42
+ sendToTmuxSession: vi.fn(),
43
+ sendEnterToTmuxSession: vi.fn(),
44
+ captureTmuxPane: vi.fn(),
45
+ isManagerRunning: vi.fn(),
46
+ stopManager: vi.fn(),
47
+ killTmuxSession: vi.fn(),
48
+ }));
49
+ vi.mock('./agent-monitoring.js', () => ({
50
+ agentStates: new Map(),
51
+ createManagerNudgeEnvelope: vi.fn((msg) => ({
52
+ text: `[START]${msg}[END]`,
53
+ nudgeId: 'nudge-123',
54
+ })),
55
+ submitManagerNudgeWithVerification: vi.fn(() => Promise.resolve({ confirmed: true, enterPresses: 1, retryEnters: 0, checks: 1 })),
56
+ detectAgentState: vi.fn(),
57
+ enforceBypassMode: vi.fn(),
58
+ forwardMessages: vi.fn(),
59
+ getAgentSafetyMode: vi.fn(),
60
+ handlePermissionPrompt: vi.fn(),
61
+ handlePlanApproval: vi.fn(),
62
+ nudgeAgent: vi.fn(),
63
+ updateAgentStateTracking: vi.fn(),
64
+ }));
65
+ vi.mock('./auto-assignment.js', () => ({
66
+ autoAssignPlannedStories: vi.fn(),
67
+ }));
68
+ vi.mock('./done-intelligence.js', () => ({
69
+ assessCompletionFromOutput: vi.fn(),
70
+ }));
71
+ vi.mock('./escalation-handler.js', () => ({
72
+ handleEscalationAndNudge: vi.fn(),
73
+ }));
74
+ vi.mock('./feature-sign-off.js', () => ({
75
+ checkFeatureSignOff: vi.fn(),
76
+ }));
77
+ vi.mock('./feature-test-result.js', () => ({
78
+ checkFeatureTestResult: vi.fn(),
79
+ }));
80
+ vi.mock('./handoff-recovery.js', () => ({
81
+ handleStalledPlanningHandoff: vi.fn(),
82
+ }));
83
+ vi.mock('./merged-story-cleanup.js', () => ({
84
+ cleanupAgentsReferencingMergedStory: vi.fn(),
85
+ }));
86
+ vi.mock('./orphaned-escalations.js', () => ({
87
+ shouldAutoResolveOrphanedManagerEscalation: vi.fn(),
88
+ }));
89
+ vi.mock('./session-resolution.js', () => ({
90
+ findSessionForAgent: vi.fn(),
91
+ }));
92
+ vi.mock('./spin-down.js', () => ({
93
+ spinDownIdleAgents: vi.fn(),
94
+ spinDownMergedAgents: vi.fn(),
95
+ }));
96
+ vi.mock('./stale-escalations.js', () => ({
97
+ findStaleSessionEscalations: vi.fn(() => []),
98
+ }));
99
+ vi.mock('../../../utils/auto-merge.js', () => ({
100
+ autoMergeApprovedPRs: vi.fn(),
101
+ }));
102
+ vi.mock('../../../utils/cli-commands.js', () => ({
103
+ getAvailableCommands: vi.fn(() => ({})),
104
+ }));
105
+ vi.mock('../../../utils/pr-sync.js', () => ({
106
+ fetchOpenGitHubPRs: vi.fn(),
107
+ getExistingPRIdentifiers: vi.fn(),
108
+ ghRepoSlug: vi.fn(),
109
+ }));
110
+ vi.mock('../../../utils/story-id.js', () => ({
111
+ extractStoryIdFromBranch: vi.fn(),
112
+ }));
113
+ vi.mock('../../../utils/with-hive-context.js', () => ({
114
+ withHiveContext: vi.fn(),
115
+ withHiveRoot: vi.fn(),
116
+ }));
117
+ vi.mock('../../../utils/paths.js', () => ({
118
+ findHiveRoot: vi.fn(),
119
+ getHivePaths: vi.fn(() => ({ hiveDir: '/tmp/.hive' })),
120
+ }));
121
+ vi.mock('../../../orchestrator/scheduler.js', () => ({
122
+ Scheduler: vi.fn().mockImplementation(() => ({})),
123
+ }));
124
+ // ── Imports (after mocks) ──────────────────────────────────────────────────
125
+ import { createLog } from '../../../db/queries/logs.js';
126
+ import { getPullRequestsByStatus, updatePullRequest } from '../../../db/queries/pull-requests.js';
127
+ import { updateStory } from '../../../db/queries/stories.js';
128
+ import { getAllTeams } from '../../../db/queries/teams.js';
129
+ import { getPullRequestComments, getPullRequestReviews } from '../../../git/github.js';
130
+ import { sendToTmuxSession } from '../../../tmux/manager.js';
131
+ import { agentStates } from './agent-monitoring.js';
132
+ import { autoRejectCommentOnlyReviews } from './index.js';
133
+ // ── Helpers ────────────────────────────────────────────────────────────────
134
+ function makeMockCtx(overrides = {}) {
135
+ const mockDb = { db: {}, save: vi.fn(), close: vi.fn() };
136
+ return {
137
+ root: '/test/project',
138
+ verbose: false,
139
+ config: { manager: {} },
140
+ paths: { hiveDir: '/test/project/.hive' },
141
+ withDb: vi.fn(async (fn) => fn(mockDb, {})),
142
+ hiveSessions: [],
143
+ counters: {
144
+ nudged: 0,
145
+ nudgeEnterPresses: 0,
146
+ nudgeEnterRetries: 0,
147
+ nudgeSubmitUnconfirmed: 0,
148
+ autoProgressed: 0,
149
+ messagesForwarded: 0,
150
+ escalationsCreated: 0,
151
+ escalationsResolved: 0,
152
+ queuedPRCount: 0,
153
+ reviewingPRCount: 0,
154
+ handoffPromoted: 0,
155
+ handoffAutoAssigned: 0,
156
+ plannedAutoAssigned: 0,
157
+ jiraSynced: 0,
158
+ featureTestsSpawned: 0,
159
+ },
160
+ escalatedSessions: new Set(),
161
+ agentsBySessionName: new Map(),
162
+ messagesToMarkRead: [],
163
+ ...overrides,
164
+ };
165
+ }
166
+ function makeReviewingPR(overrides = {}) {
167
+ return {
168
+ id: 'pr-test-1',
169
+ story_id: 'STORY-001',
170
+ team_id: 'team-1',
171
+ branch_name: 'feature/STORY-001-test',
172
+ github_pr_number: 42,
173
+ github_pr_url: 'https://github.com/test/repo/pull/42',
174
+ status: 'reviewing',
175
+ submitted_by: 'hive-senior-test',
176
+ reviewed_by: 'hive-qa-test',
177
+ review_notes: null,
178
+ created_at: new Date().toISOString(),
179
+ updated_at: new Date().toISOString(),
180
+ reviewed_at: null,
181
+ ...overrides,
182
+ };
183
+ }
184
+ // ── Tests ──────────────────────────────────────────────────────────────────
185
+ describe('autoRejectCommentOnlyReviews', () => {
186
+ beforeEach(() => {
187
+ vi.clearAllMocks();
188
+ agentStates.clear();
189
+ });
190
+ it('should return early when no PRs are in reviewing status', async () => {
191
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([]);
192
+ const ctx = makeMockCtx();
193
+ await autoRejectCommentOnlyReviews(ctx);
194
+ expect(getPullRequestReviews).not.toHaveBeenCalled();
195
+ expect(getPullRequestComments).not.toHaveBeenCalled();
196
+ expect(updatePullRequest).not.toHaveBeenCalled();
197
+ });
198
+ it('should return early when reviewing PRs have no github_pr_number', async () => {
199
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([
200
+ makeReviewingPR({ github_pr_number: null }),
201
+ ]);
202
+ const ctx = makeMockCtx();
203
+ await autoRejectCommentOnlyReviews(ctx);
204
+ expect(getPullRequestReviews).not.toHaveBeenCalled();
205
+ });
206
+ it('should skip PRs where QA agent is not idle', async () => {
207
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
208
+ vi.mocked(getAllTeams).mockReturnValue([
209
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
210
+ ]);
211
+ const ctx = makeMockCtx({
212
+ agentsBySessionName: new Map([
213
+ ['hive-qa-test', { status: 'working', session_name: 'hive-qa-test' }],
214
+ ]),
215
+ });
216
+ // QA agent is working, not idle
217
+ agentStates.set('hive-qa-test', {
218
+ lastState: AgentState.TOOL_RUNNING,
219
+ lastStateChangeTime: Date.now(),
220
+ lastNudgeTime: 0,
221
+ });
222
+ await autoRejectCommentOnlyReviews(ctx);
223
+ expect(getPullRequestReviews).not.toHaveBeenCalled();
224
+ expect(updatePullRequest).not.toHaveBeenCalled();
225
+ });
226
+ it('should skip PRs when QA has formal APPROVED review on GitHub', async () => {
227
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
228
+ vi.mocked(getAllTeams).mockReturnValue([
229
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
230
+ ]);
231
+ const ctx = makeMockCtx({
232
+ agentsBySessionName: new Map([
233
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
234
+ ]),
235
+ });
236
+ agentStates.set('hive-qa-test', {
237
+ lastState: AgentState.IDLE_AT_PROMPT,
238
+ lastStateChangeTime: Date.now(),
239
+ lastNudgeTime: 0,
240
+ });
241
+ vi.mocked(getPullRequestReviews).mockResolvedValue([
242
+ { author: 'qa-bot', state: 'APPROVED', body: 'Looks good!' },
243
+ ]);
244
+ vi.mocked(getPullRequestComments).mockResolvedValue([]);
245
+ await autoRejectCommentOnlyReviews(ctx);
246
+ expect(getPullRequestReviews).toHaveBeenCalledWith('/test/project/repos/mini-marty', 42);
247
+ expect(updatePullRequest).not.toHaveBeenCalled();
248
+ });
249
+ it('should auto-reject when QA left CHANGES_REQUESTED review', async () => {
250
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
251
+ vi.mocked(getAllTeams).mockReturnValue([
252
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
253
+ ]);
254
+ const ctx = makeMockCtx({
255
+ agentsBySessionName: new Map([
256
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
257
+ ]),
258
+ hiveSessions: [{ name: 'hive-senior-test' }],
259
+ });
260
+ agentStates.set('hive-qa-test', {
261
+ lastState: AgentState.IDLE_AT_PROMPT,
262
+ lastStateChangeTime: Date.now(),
263
+ lastNudgeTime: 0,
264
+ });
265
+ vi.mocked(getPullRequestReviews).mockResolvedValue([
266
+ { author: 'qa-bot', state: 'CHANGES_REQUESTED', body: 'Coverage below 80%.' },
267
+ ]);
268
+ vi.mocked(getPullRequestComments).mockResolvedValue([]);
269
+ await autoRejectCommentOnlyReviews(ctx);
270
+ expect(updatePullRequest).toHaveBeenCalledWith(expect.anything(), 'pr-test-1', expect.objectContaining({
271
+ status: 'rejected',
272
+ reviewNotes: expect.stringContaining('Coverage below 80%'),
273
+ }));
274
+ expect(updateStory).toHaveBeenCalledWith(expect.anything(), 'STORY-001', {
275
+ status: 'qa_failed',
276
+ });
277
+ expect(createLog).toHaveBeenCalledWith(expect.anything(), expect.objectContaining({
278
+ agentId: 'manager',
279
+ eventType: 'PR_REJECTED',
280
+ storyId: 'STORY-001',
281
+ metadata: expect.objectContaining({ auto_rejected: true }),
282
+ }));
283
+ });
284
+ it('should auto-reject when QA left substantive comments (>= 20 chars)', async () => {
285
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
286
+ vi.mocked(getAllTeams).mockReturnValue([
287
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
288
+ ]);
289
+ const ctx = makeMockCtx({
290
+ agentsBySessionName: new Map([
291
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
292
+ ]),
293
+ hiveSessions: [{ name: 'hive-senior-test' }],
294
+ });
295
+ agentStates.set('hive-qa-test', {
296
+ lastState: AgentState.IDLE_AT_PROMPT,
297
+ lastStateChangeTime: Date.now(),
298
+ lastNudgeTime: 0,
299
+ });
300
+ vi.mocked(getPullRequestReviews).mockResolvedValue([]);
301
+ vi.mocked(getPullRequestComments).mockResolvedValue([
302
+ {
303
+ author: 'qa-agent',
304
+ body: 'The test coverage thresholds are not met. Please add more tests.',
305
+ createdAt: '2026-03-01T10:00:00Z',
306
+ },
307
+ ]);
308
+ await autoRejectCommentOnlyReviews(ctx);
309
+ expect(updatePullRequest).toHaveBeenCalledWith(expect.anything(), 'pr-test-1', expect.objectContaining({
310
+ status: 'rejected',
311
+ reviewNotes: expect.stringContaining('test coverage thresholds'),
312
+ }));
313
+ });
314
+ it('should ignore short comments (< 20 chars) and not reject', async () => {
315
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
316
+ vi.mocked(getAllTeams).mockReturnValue([
317
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
318
+ ]);
319
+ const ctx = makeMockCtx({
320
+ agentsBySessionName: new Map([
321
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
322
+ ]),
323
+ });
324
+ agentStates.set('hive-qa-test', {
325
+ lastState: AgentState.IDLE_AT_PROMPT,
326
+ lastStateChangeTime: Date.now(),
327
+ lastNudgeTime: 0,
328
+ });
329
+ vi.mocked(getPullRequestReviews).mockResolvedValue([]);
330
+ vi.mocked(getPullRequestComments).mockResolvedValue([
331
+ { author: 'user', body: 'LGTM', createdAt: '2026-03-01T10:00:00Z' },
332
+ ]);
333
+ await autoRejectCommentOnlyReviews(ctx);
334
+ // Short comments should be filtered out → no rejection
335
+ expect(updatePullRequest).not.toHaveBeenCalled();
336
+ });
337
+ it('should skip bot "Looks good to me" comments under 100 chars', async () => {
338
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
339
+ vi.mocked(getAllTeams).mockReturnValue([
340
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
341
+ ]);
342
+ const ctx = makeMockCtx({
343
+ agentsBySessionName: new Map([
344
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
345
+ ]),
346
+ });
347
+ agentStates.set('hive-qa-test', {
348
+ lastState: AgentState.IDLE_AT_PROMPT,
349
+ lastStateChangeTime: Date.now(),
350
+ lastNudgeTime: 0,
351
+ });
352
+ vi.mocked(getPullRequestReviews).mockResolvedValue([]);
353
+ vi.mocked(getPullRequestComments).mockResolvedValue([
354
+ {
355
+ author: 'ellipsis-bot',
356
+ body: 'Looks good to me. No major issues.',
357
+ createdAt: '2026-03-01T10:00:00Z',
358
+ },
359
+ ]);
360
+ await autoRejectCommentOnlyReviews(ctx);
361
+ expect(updatePullRequest).not.toHaveBeenCalled();
362
+ });
363
+ it('should gracefully skip PR when GitHub API call fails', async () => {
364
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
365
+ vi.mocked(getAllTeams).mockReturnValue([
366
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
367
+ ]);
368
+ const ctx = makeMockCtx({
369
+ agentsBySessionName: new Map([
370
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
371
+ ]),
372
+ });
373
+ agentStates.set('hive-qa-test', {
374
+ lastState: AgentState.IDLE_AT_PROMPT,
375
+ lastStateChangeTime: Date.now(),
376
+ lastNudgeTime: 0,
377
+ });
378
+ // Both API calls fail
379
+ vi.mocked(getPullRequestReviews).mockRejectedValue(new Error('gh CLI not found'));
380
+ vi.mocked(getPullRequestComments).mockRejectedValue(new Error('gh CLI not found'));
381
+ await autoRejectCommentOnlyReviews(ctx);
382
+ // Should not throw, should not reject
383
+ expect(updatePullRequest).not.toHaveBeenCalled();
384
+ });
385
+ it('should notify developer agent via tmux after rejection', async () => {
386
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
387
+ vi.mocked(getAllTeams).mockReturnValue([
388
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
389
+ ]);
390
+ const ctx = makeMockCtx({
391
+ agentsBySessionName: new Map([
392
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
393
+ ]),
394
+ hiveSessions: [{ name: 'hive-senior-test' }],
395
+ });
396
+ agentStates.set('hive-qa-test', {
397
+ lastState: AgentState.IDLE_AT_PROMPT,
398
+ lastStateChangeTime: Date.now(),
399
+ lastNudgeTime: 0,
400
+ });
401
+ vi.mocked(getPullRequestReviews).mockResolvedValue([
402
+ { author: 'qa', state: 'CHANGES_REQUESTED', body: 'Tests failing.' },
403
+ ]);
404
+ vi.mocked(getPullRequestComments).mockResolvedValue([]);
405
+ await autoRejectCommentOnlyReviews(ctx);
406
+ // Phase 4: Should notify the developer
407
+ expect(sendToTmuxSession).toHaveBeenCalledWith('hive-senior-test', expect.stringContaining('PR AUTO-REJECTED'));
408
+ });
409
+ it('should handle idle status from agent record even without agentStates entry', async () => {
410
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
411
+ vi.mocked(getAllTeams).mockReturnValue([
412
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
413
+ ]);
414
+ const ctx = makeMockCtx({
415
+ agentsBySessionName: new Map([
416
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
417
+ ]),
418
+ });
419
+ // No agentStates entry - but the agent record shows idle
420
+ vi.mocked(getPullRequestReviews).mockResolvedValue([
421
+ { author: 'qa', state: 'CHANGES_REQUESTED', body: 'Missing error handling in module.' },
422
+ ]);
423
+ vi.mocked(getPullRequestComments).mockResolvedValue([]);
424
+ await autoRejectCommentOnlyReviews(ctx);
425
+ expect(updatePullRequest).toHaveBeenCalledWith(expect.anything(), 'pr-test-1', expect.objectContaining({ status: 'rejected' }));
426
+ });
427
+ it('should combine feedback from both reviews and comments in rejection reason', async () => {
428
+ vi.mocked(getPullRequestsByStatus).mockReturnValue([makeReviewingPR()]);
429
+ vi.mocked(getAllTeams).mockReturnValue([
430
+ { id: 'team-1', repo_path: 'repos/mini-marty' },
431
+ ]);
432
+ const ctx = makeMockCtx({
433
+ agentsBySessionName: new Map([
434
+ ['hive-qa-test', { status: 'idle', session_name: 'hive-qa-test' }],
435
+ ]),
436
+ hiveSessions: [{ name: 'hive-senior-test' }],
437
+ });
438
+ agentStates.set('hive-qa-test', {
439
+ lastState: AgentState.IDLE_AT_PROMPT,
440
+ lastStateChangeTime: Date.now(),
441
+ lastNudgeTime: 0,
442
+ });
443
+ vi.mocked(getPullRequestReviews).mockResolvedValue([
444
+ { author: 'qa', state: 'CHANGES_REQUESTED', body: 'Coverage below threshold.' },
445
+ ]);
446
+ vi.mocked(getPullRequestComments).mockResolvedValue([
447
+ {
448
+ author: 'qa',
449
+ body: 'Also the vitest config needs updating for proper coverage.',
450
+ createdAt: '2026-03-01T10:00:00Z',
451
+ },
452
+ ]);
453
+ await autoRejectCommentOnlyReviews(ctx);
454
+ expect(updatePullRequest).toHaveBeenCalledWith(expect.anything(), 'pr-test-1', expect.objectContaining({
455
+ reviewNotes: expect.stringContaining('Coverage below threshold'),
456
+ }));
457
+ expect(updatePullRequest).toHaveBeenCalledWith(expect.anything(), 'pr-test-1', expect.objectContaining({
458
+ reviewNotes: expect.stringContaining('vitest config needs updating'),
459
+ }));
460
+ });
461
+ });
462
+ //# sourceMappingURL=auto-reject-comment-only-reviews.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-reject-comment-only-reviews.test.js","sourceRoot":"","sources":["../../../../src/cli/commands/manager/auto-reject-comment-only-reviews.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Command } from 'commander';
2
2
  import { AgentState } from '../../../state-detectors/types.js';
3
+ import type { ManagerCheckContext } from './types.js';
3
4
  interface NoActionSummarySnapshot {
4
5
  pendingEscalations: number;
5
6
  pendingActionableStories: number;
@@ -26,5 +27,16 @@ export declare function classifyNoActionSummary(snapshot: NoActionSummarySnapsho
26
27
  export declare function shouldTreatUnknownAsStuckWaiting(snapshot: UnknownStateStuckHeuristicSnapshot): boolean;
27
28
  export declare function shouldDeferStuckReminderUntilStaticWindow(snapshot: StuckReminderDeferralSnapshot): boolean;
28
29
  export declare const managerCommand: Command;
30
+ /**
31
+ * Auto-reject PRs where the QA agent posted review comments/feedback on GitHub
32
+ * but never formally approved or rejected via `hive pr approve/reject`.
33
+ *
34
+ * Detection: PR is in 'reviewing' status, the assigned QA agent is idle,
35
+ * and there are GitHub comments or CHANGES_REQUESTED reviews on the PR.
36
+ *
37
+ * Action: Auto-reject the PR with the QA's feedback as the rejection reason,
38
+ * which triggers the standard qa_failed flow back to the developer agent.
39
+ */
40
+ export declare function autoRejectCommentOnlyReviews(ctx: ManagerCheckContext): Promise<void>;
29
41
  export {};
30
42
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/manager/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2CpC,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAmF/D,UAAU,uBAAuB;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,kCAAkC;IAC1C,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,UAAU,6BAA6B;IACrC,KAAK,EAAE,UAAU,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,WAAW,CA0BtF;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,kCAAkC,GAC3C,OAAO,CAOT;AAED,wBAAgB,yCAAyC,CACvD,QAAQ,EAAE,6BAA6B,GACtC,OAAO,CAMT;AAqWD,eAAO,MAAM,cAAc,SAE1B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/manager/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4CpC,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AA8C/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAqCtD,UAAU,uBAAuB;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,kCAAkC;IAC1C,KAAK,EAAE,UAAU,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,UAAU,6BAA6B;IACrC,KAAK,EAAE,UAAU,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,2BAA2B,EAAE,MAAM,CAAC;CACrC;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,WAAW,CA0BtF;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,kCAAkC,GAC3C,OAAO,CAOT;AAED,wBAAgB,yCAAyC,CACvD,QAAQ,EAAE,6BAA6B,GACtC,OAAO,CAMT;AAqWD,eAAO,MAAM,cAAc,SAE1B,CAAC;AAyoDF;;;;;;;;;GASG;AACH,wBAAsB,4BAA4B,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+K1F"}