github-issue-tower-defence-management 1.147.0 → 1.147.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/README.md +2 -1
- package/bin/adapter/entry-points/cli/index.js +3 -0
- package/bin/adapter/entry-points/cli/index.js.map +1 -1
- package/bin/adapter/entry-points/cli/projectConfig.js +4 -0
- package/bin/adapter/entry-points/cli/projectConfig.js.map +1 -1
- package/bin/adapter/repositories/ProxyClaudeTokenUsageRepository.js +17 -1
- package/bin/adapter/repositories/ProxyClaudeTokenUsageRepository.js.map +1 -1
- package/bin/domain/usecases/CheckIssueReviewReadinessUseCase.js +2 -1
- package/bin/domain/usecases/CheckIssueReviewReadinessUseCase.js.map +1 -1
- package/bin/domain/usecases/HandleScheduledEventUseCase.js +2 -0
- package/bin/domain/usecases/HandleScheduledEventUseCase.js.map +1 -1
- package/bin/domain/usecases/IssueRejectionEvaluator.js +3 -3
- package/bin/domain/usecases/IssueRejectionEvaluator.js.map +1 -1
- package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js +4 -3
- package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js +3 -2
- package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js.map +1 -1
- package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js +5 -4
- package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/StartPreparationUseCase.js +5 -3
- package/bin/domain/usecases/StartPreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/resolveLabelsNotRequiringPullRequest.js +9 -0
- package/bin/domain/usecases/resolveLabelsNotRequiringPullRequest.js.map +1 -0
- package/package.json +1 -1
- package/src/adapter/entry-points/cli/index.test.ts +4 -0
- package/src/adapter/entry-points/cli/index.ts +6 -0
- package/src/adapter/entry-points/cli/projectConfig.ts +9 -0
- package/src/adapter/repositories/ProxyClaudeTokenUsageRepository.test.ts +74 -0
- package/src/adapter/repositories/ProxyClaudeTokenUsageRepository.ts +17 -1
- package/src/domain/entities/ClaudeTokenUsage.ts +1 -0
- package/src/domain/usecases/CheckIssueReviewReadinessUseCase.test.ts +18 -0
- package/src/domain/usecases/CheckIssueReviewReadinessUseCase.ts +3 -1
- package/src/domain/usecases/HandleScheduledEventUseCase.ts +3 -0
- package/src/domain/usecases/IssueRejectionEvaluator.ts +4 -4
- package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.test.ts +30 -0
- package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts +8 -3
- package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.test.ts +23 -0
- package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.ts +4 -2
- package/src/domain/usecases/RevertOrphanedPreparationUseCase.test.ts +37 -0
- package/src/domain/usecases/RevertOrphanedPreparationUseCase.ts +7 -5
- package/src/domain/usecases/StartPreparationUseCase.test.ts +12 -0
- package/src/domain/usecases/StartPreparationUseCase.ts +8 -1
- package/src/domain/usecases/resolveLabelsNotRequiringPullRequest.test.ts +33 -0
- package/src/domain/usecases/resolveLabelsNotRequiringPullRequest.ts +7 -0
- package/types/adapter/entry-points/cli/index.d.ts.map +1 -1
- package/types/adapter/entry-points/cli/projectConfig.d.ts +1 -0
- package/types/adapter/entry-points/cli/projectConfig.d.ts.map +1 -1
- package/types/adapter/repositories/ProxyClaudeTokenUsageRepository.d.ts +1 -0
- package/types/adapter/repositories/ProxyClaudeTokenUsageRepository.d.ts.map +1 -1
- package/types/domain/entities/ClaudeTokenUsage.d.ts +1 -0
- package/types/domain/entities/ClaudeTokenUsage.d.ts.map +1 -1
- package/types/domain/usecases/CheckIssueReviewReadinessUseCase.d.ts +1 -0
- package/types/domain/usecases/CheckIssueReviewReadinessUseCase.d.ts.map +1 -1
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts +1 -0
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts.map +1 -1
- package/types/domain/usecases/IssueRejectionEvaluator.d.ts +1 -1
- package/types/domain/usecases/IssueRejectionEvaluator.d.ts.map +1 -1
- package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts +1 -0
- package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts +1 -0
- package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts.map +1 -1
- package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts +1 -0
- package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/StartPreparationUseCase.d.ts +1 -1
- package/types/domain/usecases/StartPreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/resolveLabelsNotRequiringPullRequest.d.ts +5 -0
- package/types/domain/usecases/resolveLabelsNotRequiringPullRequest.d.ts.map +1 -0
|
@@ -106,6 +106,24 @@ describe('CheckIssueReviewReadinessUseCase', () => {
|
|
|
106
106
|
]);
|
|
107
107
|
});
|
|
108
108
|
|
|
109
|
+
it('should return reviewReady=true when the issue label is only in labelsNotRequiringPullRequest and no pull request exists', async () => {
|
|
110
|
+
const issue = createMockIssue({ labels: ['story'] });
|
|
111
|
+
mockIssueRepository.getIssueByUrl.mockResolvedValue(issue);
|
|
112
|
+
mockIssueCommentRepository.getCommentsFromIssue.mockResolvedValue([
|
|
113
|
+
createMockComment(),
|
|
114
|
+
]);
|
|
115
|
+
mockIssueRepository.findRelatedOpenPRs.mockResolvedValue([]);
|
|
116
|
+
|
|
117
|
+
const result = await useCase.run({
|
|
118
|
+
issueUrl: 'https://github.com/user/repo/issues/1',
|
|
119
|
+
labelsAsLlmAgentName: ['chore'],
|
|
120
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
expect(result.rejections).toEqual([]);
|
|
124
|
+
expect(result.reviewReady).toBe(true);
|
|
125
|
+
});
|
|
126
|
+
|
|
109
127
|
it('should return reviewReady=false with NO_REPORT_FROM_AGENT_BOT when no comments exist', async () => {
|
|
110
128
|
const issue = createMockIssue();
|
|
111
129
|
mockIssueRepository.getIssueByUrl.mockResolvedValue(issue);
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
IssueRejectionEvaluator,
|
|
5
5
|
PrRejectedReasonType,
|
|
6
6
|
} from './IssueRejectionEvaluator';
|
|
7
|
+
import { resolveLabelsNotRequiringPullRequest } from './resolveLabelsNotRequiringPullRequest';
|
|
7
8
|
|
|
8
9
|
type RejectedReasonType =
|
|
9
10
|
| 'ISSUE_NOT_FOUND'
|
|
@@ -40,6 +41,7 @@ export class CheckIssueReviewReadinessUseCase {
|
|
|
40
41
|
issueUrl: string;
|
|
41
42
|
allowedIssueAuthors?: string[] | null;
|
|
42
43
|
labelsAsLlmAgentName?: string[] | null;
|
|
44
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
43
45
|
}): Promise<IssueReviewReadinessResult> => {
|
|
44
46
|
const issue = await this.issueRepository.getIssueByUrl(params.issueUrl);
|
|
45
47
|
|
|
@@ -83,7 +85,7 @@ export class CheckIssueReviewReadinessUseCase {
|
|
|
83
85
|
const { rejections: prRejections } =
|
|
84
86
|
await this.issueRejectionEvaluator.evaluate(
|
|
85
87
|
issue,
|
|
86
|
-
params
|
|
88
|
+
resolveLabelsNotRequiringPullRequest(params),
|
|
87
89
|
);
|
|
88
90
|
|
|
89
91
|
const allRejections = [...rejections, ...prRejections];
|
|
@@ -156,6 +156,7 @@ export class HandleScheduledEventUseCase {
|
|
|
156
156
|
urlOfStoryView: string;
|
|
157
157
|
disabled: boolean;
|
|
158
158
|
labelsAsLlmAgentName?: string[] | null;
|
|
159
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
159
160
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
160
161
|
allowedIssueAuthors?: string[] | null;
|
|
161
162
|
autoAssignManagerAuthors?: string[] | null;
|
|
@@ -408,6 +409,7 @@ ${JSON.stringify(e)}
|
|
|
408
409
|
projectUrl: input.projectUrl,
|
|
409
410
|
manager: input.manager,
|
|
410
411
|
labelsAsLlmAgentName,
|
|
412
|
+
labelsNotRequiringPullRequest: input.labelsNotRequiringPullRequest,
|
|
411
413
|
changeTargetPathAliases: input.changeTargetPathAliases,
|
|
412
414
|
allowedIssueAuthors,
|
|
413
415
|
});
|
|
@@ -437,6 +439,7 @@ ${JSON.stringify(e)}
|
|
|
437
439
|
awaitingQualityCheckStatus:
|
|
438
440
|
input.startPreparation.awaitingQualityCheckStatus ?? undefined,
|
|
439
441
|
labelsAsLlmAgentName,
|
|
442
|
+
labelsNotRequiringPullRequest: input.labelsNotRequiringPullRequest,
|
|
440
443
|
});
|
|
441
444
|
}
|
|
442
445
|
const preparationResult = await this.startPreparationUseCase.run({
|
|
@@ -46,7 +46,7 @@ export class IssueRejectionEvaluator {
|
|
|
46
46
|
labels: string[];
|
|
47
47
|
isPr: boolean;
|
|
48
48
|
},
|
|
49
|
-
|
|
49
|
+
labelsNotRequiringPullRequest: string[] = [],
|
|
50
50
|
options: EvaluateOptions = {},
|
|
51
51
|
): Promise<PrRejectionResult> => {
|
|
52
52
|
const rejections: { type: PrRejectedReasonType; detail: string }[] = [];
|
|
@@ -58,13 +58,13 @@ export class IssueRejectionEvaluator {
|
|
|
58
58
|
const hasLlmAgentLabel = issue.labels.some(
|
|
59
59
|
(l) => l === 'llm-agent' || l.startsWith('llm-agent:'),
|
|
60
60
|
);
|
|
61
|
-
const
|
|
62
|
-
|
|
61
|
+
const hasLabelNotRequiringPullRequest = issue.labels.some((label) =>
|
|
62
|
+
labelsNotRequiringPullRequest.includes(label),
|
|
63
63
|
);
|
|
64
64
|
|
|
65
65
|
if (
|
|
66
66
|
!hasLlmAgentLabel &&
|
|
67
|
-
!
|
|
67
|
+
!hasLabelNotRequiringPullRequest &&
|
|
68
68
|
(categoryLabels.length <= 0 || categoryLabels.includes('category:e2e'))
|
|
69
69
|
) {
|
|
70
70
|
let prsToCheck: RelatedPullRequest[];
|
|
@@ -1087,6 +1087,36 @@ describe('NotifyFinishedIssuePreparationUseCase', () => {
|
|
|
1087
1087
|
);
|
|
1088
1088
|
});
|
|
1089
1089
|
|
|
1090
|
+
it('should not reject a missing PR when the issue label is only in labelsNotRequiringPullRequest', async () => {
|
|
1091
|
+
const issue = createMockIssue({
|
|
1092
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
1093
|
+
status: 'Preparation',
|
|
1094
|
+
labels: ['story'],
|
|
1095
|
+
});
|
|
1096
|
+
|
|
1097
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
1098
|
+
mockIssueRepository.get.mockResolvedValue(issue);
|
|
1099
|
+
mockIssueCommentRepository.getCommentsFromIssue.mockResolvedValue([
|
|
1100
|
+
createMockComment({ content: 'From: :robot: Test report' }),
|
|
1101
|
+
]);
|
|
1102
|
+
mockIssueRepository.findRelatedOpenPRs.mockResolvedValue([]);
|
|
1103
|
+
|
|
1104
|
+
await useCase.run({
|
|
1105
|
+
projectUrl: 'https://github.com/users/user/projects/1',
|
|
1106
|
+
issueUrl: 'https://github.com/user/repo/issues/1',
|
|
1107
|
+
thresholdForAutoReject: 3,
|
|
1108
|
+
workflowBlockerResolvedWebhookUrl: null,
|
|
1109
|
+
allowedIssueAuthors: null,
|
|
1110
|
+
labelsAsLlmAgentName: ['chore', 'accounting'],
|
|
1111
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
1112
|
+
});
|
|
1113
|
+
|
|
1114
|
+
expect(mockIssueCommentRepository.createComment).not.toHaveBeenCalledWith(
|
|
1115
|
+
expect.anything(),
|
|
1116
|
+
expect.stringContaining('PULL_REQUEST_NOT_FOUND'),
|
|
1117
|
+
);
|
|
1118
|
+
});
|
|
1119
|
+
|
|
1090
1120
|
it('should reject when multiple PRs are found', async () => {
|
|
1091
1121
|
const issue = createMockIssue({
|
|
1092
1122
|
url: 'https://github.com/user/repo/issues/1',
|
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
PrRejectedReasonType,
|
|
14
14
|
} from './IssueRejectionEvaluator';
|
|
15
15
|
import { ChangeTargetPullRequestApprover } from './ChangeTargetPullRequestApprover';
|
|
16
|
+
import { resolveLabelsNotRequiringPullRequest } from './resolveLabelsNotRequiringPullRequest';
|
|
16
17
|
|
|
17
18
|
export class IssueNotFoundError extends Error {
|
|
18
19
|
constructor(issueUrl: string) {
|
|
@@ -76,6 +77,7 @@ export class NotifyFinishedIssuePreparationUseCase {
|
|
|
76
77
|
workflowBlockerResolvedWebhookUrl: string | null;
|
|
77
78
|
allowedIssueAuthors?: string[] | null;
|
|
78
79
|
labelsAsLlmAgentName?: string[] | null;
|
|
80
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
79
81
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
80
82
|
}): Promise<void> => {
|
|
81
83
|
const project = await this.projectRepository.getByUrl(params.projectUrl);
|
|
@@ -181,7 +183,7 @@ export class NotifyFinishedIssuePreparationUseCase {
|
|
|
181
183
|
issue,
|
|
182
184
|
comments,
|
|
183
185
|
isTrustedAuthor,
|
|
184
|
-
params
|
|
186
|
+
resolveLabelsNotRequiringPullRequest(params),
|
|
185
187
|
);
|
|
186
188
|
|
|
187
189
|
const rejectionStatusMessage =
|
|
@@ -287,7 +289,7 @@ export class NotifyFinishedIssuePreparationUseCase {
|
|
|
287
289
|
issue: { url: string; labels: string[]; isPr: boolean },
|
|
288
290
|
comments: { author: string; content: string }[],
|
|
289
291
|
isTrustedAuthor: (author: string) => boolean,
|
|
290
|
-
|
|
292
|
+
labelsNotRequiringPullRequest: string[],
|
|
291
293
|
): Promise<{
|
|
292
294
|
rejections: { type: RejectedReasonType; detail: string }[];
|
|
293
295
|
approvedPrUrl: string | null;
|
|
@@ -312,7 +314,10 @@ export class NotifyFinishedIssuePreparationUseCase {
|
|
|
312
314
|
}
|
|
313
315
|
|
|
314
316
|
const { rejections: prRejections, approvedPrUrl } =
|
|
315
|
-
await this.issueRejectionEvaluator.evaluate(
|
|
317
|
+
await this.issueRejectionEvaluator.evaluate(
|
|
318
|
+
issue,
|
|
319
|
+
labelsNotRequiringPullRequest,
|
|
320
|
+
);
|
|
316
321
|
return { rejections: [...rejections, ...prRejections], approvedPrUrl };
|
|
317
322
|
};
|
|
318
323
|
|
|
@@ -301,6 +301,29 @@ describe('RevertNotReadyReviewQueueIssueUseCase', () => {
|
|
|
301
301
|
expect(mockIssueCommentRepository.createComment).not.toHaveBeenCalled();
|
|
302
302
|
});
|
|
303
303
|
|
|
304
|
+
it('should not revert a story-labeled issue with no linked PR when story is only in labelsNotRequiringPullRequest', async () => {
|
|
305
|
+
const issue = createMockIssue({
|
|
306
|
+
status: 'Awaiting Quality Check',
|
|
307
|
+
labels: ['story'],
|
|
308
|
+
});
|
|
309
|
+
mockIssueRepository.getAllIssues.mockResolvedValue({
|
|
310
|
+
project: mockProject,
|
|
311
|
+
issues: [issue],
|
|
312
|
+
cacheUsed: false,
|
|
313
|
+
});
|
|
314
|
+
|
|
315
|
+
await useCase.run({
|
|
316
|
+
manager: 'manager-user',
|
|
317
|
+
projectUrl: 'https://github.com/users/user/projects/1',
|
|
318
|
+
labelsAsLlmAgentName: ['chore', 'accounting'],
|
|
319
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
320
|
+
allowedIssueAuthors: ['owner'],
|
|
321
|
+
});
|
|
322
|
+
|
|
323
|
+
expect(mockIssueRepository.updateStatus).not.toHaveBeenCalled();
|
|
324
|
+
expect(mockIssueCommentRepository.createComment).not.toHaveBeenCalled();
|
|
325
|
+
});
|
|
326
|
+
|
|
304
327
|
it('should not revert a chore-labeled issue with no linked PR when chore is in labelsAsLlmAgentName', async () => {
|
|
305
328
|
const issue = createMockIssue({
|
|
306
329
|
status: 'Awaiting Quality Check',
|
|
@@ -4,6 +4,7 @@ import { ProjectRepository } from './adapter-interfaces/ProjectRepository';
|
|
|
4
4
|
import { IssueCommentRepository } from './adapter-interfaces/IssueCommentRepository';
|
|
5
5
|
import { IssueRejectionEvaluator } from './IssueRejectionEvaluator';
|
|
6
6
|
import { ChangeTargetPullRequestApprover } from './ChangeTargetPullRequestApprover';
|
|
7
|
+
import { resolveLabelsNotRequiringPullRequest } from './resolveLabelsNotRequiringPullRequest';
|
|
7
8
|
import {
|
|
8
9
|
AWAITING_QUALITY_CHECK_STATUS_NAME,
|
|
9
10
|
AWAITING_WORKSPACE_STATUS_NAME,
|
|
@@ -71,6 +72,7 @@ export class RevertNotReadyReviewQueueIssueUseCase {
|
|
|
71
72
|
projectUrl: string;
|
|
72
73
|
manager: string;
|
|
73
74
|
labelsAsLlmAgentName?: string[] | null;
|
|
75
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
74
76
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
75
77
|
allowedIssueAuthors?: string[] | null;
|
|
76
78
|
}): Promise<void> => {
|
|
@@ -122,7 +124,7 @@ export class RevertNotReadyReviewQueueIssueUseCase {
|
|
|
122
124
|
const { rejections, approvedPrUrl } =
|
|
123
125
|
await this.issueRejectionEvaluator.evaluate(
|
|
124
126
|
issue,
|
|
125
|
-
params
|
|
127
|
+
resolveLabelsNotRequiringPullRequest(params),
|
|
126
128
|
{
|
|
127
129
|
relatedOpenPrUrls:
|
|
128
130
|
relatedOpenPrUrlsByIssueUrl.get(issue.url) ?? null,
|
|
@@ -195,7 +197,7 @@ export class RevertNotReadyReviewQueueIssueUseCase {
|
|
|
195
197
|
try {
|
|
196
198
|
const { rejections } = await this.issueRejectionEvaluator.evaluate(
|
|
197
199
|
pullRequest,
|
|
198
|
-
params
|
|
200
|
+
resolveLabelsNotRequiringPullRequest(params),
|
|
199
201
|
);
|
|
200
202
|
if (rejections.length > 0) {
|
|
201
203
|
if (!pullRequest.assignees.includes(params.manager)) {
|
|
@@ -369,6 +369,43 @@ describe('RevertOrphanedPreparationUseCase', () => {
|
|
|
369
369
|
expect(mockIssueRepository.updateStatus.mock.calls[0][2]).toBe('4');
|
|
370
370
|
});
|
|
371
371
|
|
|
372
|
+
it('should advance an orphaned issue whose label is only in labelsNotRequiringPullRequest to Awaiting Quality Check without PR check', async () => {
|
|
373
|
+
const stuckIssue = createMockIssue({
|
|
374
|
+
url: 'https://github.com/user/repo/issues/10',
|
|
375
|
+
status: 'Preparation',
|
|
376
|
+
labels: ['story'],
|
|
377
|
+
});
|
|
378
|
+
mockIssueRepository.getAllIssues.mockResolvedValue({
|
|
379
|
+
project: mockProject,
|
|
380
|
+
issues: [stuckIssue],
|
|
381
|
+
cacheUsed: false,
|
|
382
|
+
});
|
|
383
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
384
|
+
stdout: '',
|
|
385
|
+
stderr: '',
|
|
386
|
+
exitCode: 1,
|
|
387
|
+
});
|
|
388
|
+
mockIssueCommentRepository.getCommentsFromIssue.mockResolvedValue([
|
|
389
|
+
{
|
|
390
|
+
author: 'bot',
|
|
391
|
+
content: 'From: :robot: agent report',
|
|
392
|
+
createdAt: new Date(),
|
|
393
|
+
},
|
|
394
|
+
]);
|
|
395
|
+
|
|
396
|
+
await useCase.run({
|
|
397
|
+
projectUrl: 'https://github.com/user/repo',
|
|
398
|
+
preparationProcessCheckCommand: 'pgrep -fa "claude-agent.*{URL}"',
|
|
399
|
+
thresholdForAutoReject: 3,
|
|
400
|
+
labelsAsLlmAgentName: ['chore'],
|
|
401
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
402
|
+
});
|
|
403
|
+
|
|
404
|
+
expect(mockIssueRepository.findRelatedOpenPRs.mock.calls).toHaveLength(0);
|
|
405
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(1);
|
|
406
|
+
expect(mockIssueRepository.updateStatus.mock.calls[0][2]).toBe('4');
|
|
407
|
+
});
|
|
408
|
+
|
|
372
409
|
it('should revert orphaned issue to Awaiting Workspace when its label is not in labelsAsLlmAgentName and no PR is found', async () => {
|
|
373
410
|
const stuckIssue = createMockIssue({
|
|
374
411
|
url: 'https://github.com/user/repo/issues/10',
|
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
FAILED_PREPARATION_STATUS_NAME,
|
|
14
14
|
PREPARATION_STATUS_NAME,
|
|
15
15
|
} from '../entities/WorkflowStatus';
|
|
16
|
+
import { resolveLabelsNotRequiringPullRequest } from './resolveLabelsNotRequiringPullRequest';
|
|
16
17
|
|
|
17
18
|
const ORPHANED_PREPARATION_REJECTION_DETAIL = 'ORPHANED_PREPARATION';
|
|
18
19
|
|
|
@@ -44,6 +45,7 @@ export class RevertOrphanedPreparationUseCase {
|
|
|
44
45
|
awLogStaleThresholdMinutes?: number;
|
|
45
46
|
awaitingQualityCheckStatus?: string | null;
|
|
46
47
|
labelsAsLlmAgentName?: string[] | null;
|
|
48
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
47
49
|
}): Promise<void> => {
|
|
48
50
|
const projectId = await this.projectRepository.findProjectIdByUrl(
|
|
49
51
|
params.projectUrl,
|
|
@@ -87,7 +89,7 @@ export class RevertOrphanedPreparationUseCase {
|
|
|
87
89
|
}
|
|
88
90
|
const { hasRejections, comments } = await this.evaluateHasRejections(
|
|
89
91
|
issue,
|
|
90
|
-
params
|
|
92
|
+
resolveLabelsNotRequiringPullRequest(params),
|
|
91
93
|
);
|
|
92
94
|
if (!hasRejections) {
|
|
93
95
|
if (awaitingQualityCheckStatusOption) {
|
|
@@ -150,7 +152,7 @@ export class RevertOrphanedPreparationUseCase {
|
|
|
150
152
|
|
|
151
153
|
private evaluateHasRejections = async (
|
|
152
154
|
issue: Issue,
|
|
153
|
-
|
|
155
|
+
labelsNotRequiringPullRequest: string[],
|
|
154
156
|
): Promise<{ hasRejections: boolean; comments: Comment[] }> => {
|
|
155
157
|
if (issue.isClosed) {
|
|
156
158
|
return { hasRejections: false, comments: [] };
|
|
@@ -171,12 +173,12 @@ export class RevertOrphanedPreparationUseCase {
|
|
|
171
173
|
const hasLlmAgentLabel = issue.labels.some(
|
|
172
174
|
(l) => l === 'llm-agent' || l.startsWith('llm-agent:'),
|
|
173
175
|
);
|
|
174
|
-
const
|
|
175
|
-
|
|
176
|
+
const hasLabelNotRequiringPullRequest = issue.labels.some((label) =>
|
|
177
|
+
labelsNotRequiringPullRequest.includes(label),
|
|
176
178
|
);
|
|
177
179
|
if (
|
|
178
180
|
hasLlmAgentLabel ||
|
|
179
|
-
|
|
181
|
+
hasLabelNotRequiringPullRequest ||
|
|
180
182
|
(categoryLabels.length > 0 && !categoryLabels.includes('category:e2e'))
|
|
181
183
|
) {
|
|
182
184
|
return { hasRejections: false, comments };
|
|
@@ -6689,4 +6689,16 @@ describe('StartPreparationUseCase.getTokenConcurrentLimit', () => {
|
|
|
6689
6689
|
const sevenDayDominant = useCase.getTokenConcurrentLimit(0.85, 0.94);
|
|
6690
6690
|
expect(sevenDayDominant).toBe(2);
|
|
6691
6691
|
});
|
|
6692
|
+
|
|
6693
|
+
it('scales the limit down by the token selection weight', () => {
|
|
6694
|
+
expect(useCase.getTokenConcurrentLimit(0.1, 0.1, 0.5)).toBe(3);
|
|
6695
|
+
});
|
|
6696
|
+
|
|
6697
|
+
it('keeps the full limit when the token carries no selection weight', () => {
|
|
6698
|
+
expect(useCase.getTokenConcurrentLimit(0.1, 0.1, undefined)).toBe(6);
|
|
6699
|
+
});
|
|
6700
|
+
|
|
6701
|
+
it('never lets a selection weight take the limit below one slot', () => {
|
|
6702
|
+
expect(useCase.getTokenConcurrentLimit(0.1, 0.1, 0.01)).toBe(1);
|
|
6703
|
+
});
|
|
6692
6704
|
});
|
|
@@ -4,6 +4,7 @@ import { LocalCommandRunner } from './adapter-interfaces/LocalCommandRunner';
|
|
|
4
4
|
import { ClaudeTokenUsageRepository } from './adapter-interfaces/ClaudeTokenUsageRepository';
|
|
5
5
|
import { TakeOwnershipSpawnRepository } from './adapter-interfaces/TakeOwnershipSpawnRepository';
|
|
6
6
|
import { ClaudeTokenUsage } from '../entities/ClaudeTokenUsage';
|
|
7
|
+
import { DEFAULT_SELECTION_WEIGHT } from './OauthTokenSelectUseCase';
|
|
7
8
|
import {
|
|
8
9
|
AWAITING_WORKSPACE_STATUS_NAME,
|
|
9
10
|
PREPARATION_STATUS_NAME,
|
|
@@ -140,6 +141,7 @@ export class StartPreparationUseCase {
|
|
|
140
141
|
getTokenConcurrentLimit = (
|
|
141
142
|
fiveHourUtilization: number,
|
|
142
143
|
sevenDayUtilization: number,
|
|
144
|
+
selectionWeight?: number,
|
|
143
145
|
): number => {
|
|
144
146
|
const sevenDayLimit = this.taperedConcurrentLimit(
|
|
145
147
|
sevenDayUtilization,
|
|
@@ -149,7 +151,11 @@ export class StartPreparationUseCase {
|
|
|
149
151
|
fiveHourUtilization,
|
|
150
152
|
FIVE_HOUR_THROTTLE_START_THRESHOLD,
|
|
151
153
|
);
|
|
152
|
-
|
|
154
|
+
const weight = selectionWeight ?? DEFAULT_SELECTION_WEIGHT;
|
|
155
|
+
return Math.max(
|
|
156
|
+
1,
|
|
157
|
+
Math.floor(Math.min(sevenDayLimit, fiveHourLimit) * weight),
|
|
158
|
+
);
|
|
153
159
|
};
|
|
154
160
|
|
|
155
161
|
private selectRotationTokens = (
|
|
@@ -206,6 +212,7 @@ export class StartPreparationUseCase {
|
|
|
206
212
|
limit: this.getTokenConcurrentLimit(
|
|
207
213
|
usage.fiveHourUtilization,
|
|
208
214
|
usage.sevenDayUtilization,
|
|
215
|
+
usage.selectionWeight,
|
|
209
216
|
),
|
|
210
217
|
secondsUntilSevenDayReset: this.secondsUntilSevenDayReset(
|
|
211
218
|
usage,
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { resolveLabelsNotRequiringPullRequest } from './resolveLabelsNotRequiringPullRequest';
|
|
2
|
+
|
|
3
|
+
describe('resolveLabelsNotRequiringPullRequest', () => {
|
|
4
|
+
it('combines both lists so an agent-name label keeps exempting the issue', () => {
|
|
5
|
+
expect(
|
|
6
|
+
resolveLabelsNotRequiringPullRequest({
|
|
7
|
+
labelsAsLlmAgentName: ['chore', 'accounting'],
|
|
8
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
9
|
+
}),
|
|
10
|
+
).toEqual(['chore', 'accounting', 'story']);
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('returns only the agent-name labels when no exemption list is configured', () => {
|
|
14
|
+
expect(
|
|
15
|
+
resolveLabelsNotRequiringPullRequest({
|
|
16
|
+
labelsAsLlmAgentName: ['chore'],
|
|
17
|
+
}),
|
|
18
|
+
).toEqual(['chore']);
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('returns only the exemption labels when no agent-name label is configured', () => {
|
|
22
|
+
expect(
|
|
23
|
+
resolveLabelsNotRequiringPullRequest({
|
|
24
|
+
labelsAsLlmAgentName: null,
|
|
25
|
+
labelsNotRequiringPullRequest: ['story'],
|
|
26
|
+
}),
|
|
27
|
+
).toEqual(['story']);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
it('returns an empty array when neither list is present', () => {
|
|
31
|
+
expect(resolveLabelsNotRequiringPullRequest({})).toEqual([]);
|
|
32
|
+
});
|
|
33
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export const resolveLabelsNotRequiringPullRequest = (source: {
|
|
2
|
+
labelsAsLlmAgentName?: string[] | null;
|
|
3
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
4
|
+
}): string[] => [
|
|
5
|
+
...(source.labelsAsLlmAgentName ?? []),
|
|
6
|
+
...(source.labelsNotRequiringPullRequest ?? []),
|
|
7
|
+
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAoKzB,eAAO,MAAM,OAAO,SAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAoKzB,eAAO,MAAM,OAAO,SAAgB,CAAC;AA28BrC,eAAO,MAAM,uBAAuB,GAAI,OAAO,OAAO,KAAG,IAGxD,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EAAE,EACd,kBAAkB,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,KACzC,OAAO,CAAC,IAAI,CAMd,CAAC"}
|
|
@@ -18,6 +18,7 @@ export type ConfigFile = {
|
|
|
18
18
|
awLogDirectoryPath?: string;
|
|
19
19
|
awLogStaleThresholdMinutes?: number;
|
|
20
20
|
labelsAsLlmAgentName?: string[];
|
|
21
|
+
labelsNotRequiringPullRequest?: string[];
|
|
21
22
|
changeTargetPathAliases?: Record<string, string>;
|
|
22
23
|
consoleAccessToken?: string;
|
|
23
24
|
consoleProjects?: Record<string, string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/projectConfig.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iCAAiC,CAAC,EAAE,MAAM,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,wCAAwC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAsDF,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CACH,CAAC;AA4CvE,eAAO,MAAM,cAAc,GAAI,gBAAgB,MAAM,KAAG,
|
|
1
|
+
{"version":3,"file":"projectConfig.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/cli/projectConfig.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iCAAiC,CAAC,EAAE,MAAM,CAAC;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC;IACzC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,wCAAwC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClE,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAsDF,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CACH,CAAC;AA4CvE,eAAO,MAAM,cAAc,GAAI,gBAAgB,MAAM,KAAG,UAuEvD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,MAAM,EACd,aAAa,MAAM,KAClB,UAuEF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,YAAY,UAAU,EACtB,cAAc,UAAU,EACxB,iBAAiB,UAAU,KAC1B,UAmFD,CAAC;AAkBH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,MAAM,EAClB,OAAO,MAAM,KACZ,OAAO,CAAC,MAAM,GAAG,IAAI,CAoDvB,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare class ProxyClaudeTokenUsageRepository implements ClaudeTokenUsage
|
|
|
7
7
|
ensureObservable: () => Promise<void>;
|
|
8
8
|
getAvailableTokenUsages: () => Promise<ClaudeTokenUsage[]>;
|
|
9
9
|
getTokenInFlightCounts: () => Promise<Record<string, number>>;
|
|
10
|
+
private isPreparationWorkerProcess;
|
|
10
11
|
private readParentPid;
|
|
11
12
|
proxyBaseUrl: () => string;
|
|
12
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProxyClaudeTokenUsageRepository.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/ProxyClaudeTokenUsageRepository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qEAAqE,CAAC;
|
|
1
|
+
{"version":3,"file":"ProxyClaudeTokenUsageRepository.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/ProxyClaudeTokenUsageRepository.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qEAAqE,CAAC;AAOjH,qBAAa,+BAAgC,YAAW,0BAA0B;IAE9E,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,IAAI;gBADJ,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,IAAI,GAAE,MAAmB;IAG5C,gBAAgB,QAAa,OAAO,CAAC,IAAI,CAAC,CAExC;IAEF,uBAAuB,QAAa,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAuF7D;IAEF,sBAAsB,QAAa,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAkChE;IAEF,OAAO,CAAC,0BAA0B,CAShC;IAEF,OAAO,CAAC,aAAa,CAYnB;IAEF,YAAY,QAAO,MAAM,CAAoC;CAC9D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClaudeTokenUsage.d.ts","sourceRoot":"","sources":["../../../src/domain/entities/ClaudeTokenUsage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAC1D,iBAAiB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ClaudeTokenUsage.d.ts","sourceRoot":"","sources":["../../../src/domain/entities/ClaudeTokenUsage.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IAC1D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC"}
|
|
@@ -18,6 +18,7 @@ export declare class CheckIssueReviewReadinessUseCase {
|
|
|
18
18
|
issueUrl: string;
|
|
19
19
|
allowedIssueAuthors?: string[] | null;
|
|
20
20
|
labelsAsLlmAgentName?: string[] | null;
|
|
21
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
21
22
|
}) => Promise<IssueReviewReadinessResult>;
|
|
22
23
|
private isAuthorTrusted;
|
|
23
24
|
private reportBodyHasNextStep;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckIssueReviewReadinessUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/CheckIssueReviewReadinessUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAEL,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"CheckIssueReviewReadinessUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/CheckIssueReviewReadinessUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAEL,oBAAoB,EACrB,MAAM,2BAA2B,CAAC;AAGnC,KAAK,kBAAkB,GACnB,iBAAiB,GACjB,0BAA0B,GAC1B,sBAAsB,GACtB,oBAAoB,CAAC;AAEzB,MAAM,MAAM,0BAA0B,GAAG;IACvC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE;QAAE,IAAI,EAAE,kBAAkB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5D,CAAC;AAEF,qBAAa,gCAAgC;IAIzC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAQhC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAXzC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0B;gBAG/C,eAAe,EAAE,IAAI,CACpC,eAAe,EACb,eAAe,GACf,oBAAoB,GACpB,oBAAoB,GACpB,gCAAgC,GAChC,iCAAiC,CACpC,EACgB,sBAAsB,EAAE,IAAI,CAC3C,sBAAsB,EACtB,sBAAsB,CACvB;IAKH,GAAG,GAAU,QAAQ;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACvC,6BAA6B,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KACjD,KAAG,OAAO,CAAC,0BAA0B,CAAC,CAoDrC;IAEF,OAAO,CAAC,eAAe,CAIgD;IAEvE,OAAO,CAAC,qBAAqB,CAuB3B;CACH"}
|
|
@@ -72,6 +72,7 @@ export declare class HandleScheduledEventUseCase {
|
|
|
72
72
|
urlOfStoryView: string;
|
|
73
73
|
disabled: boolean;
|
|
74
74
|
labelsAsLlmAgentName?: string[] | null;
|
|
75
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
75
76
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
76
77
|
allowedIssueAuthors?: string[] | null;
|
|
77
78
|
autoAssignManagerAuthors?: string[] | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandleScheduledEventUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"HandleScheduledEventUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/HandleScheduledEventUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ export declare class IssueRejectionEvaluator {
|
|
|
17
17
|
url: string;
|
|
18
18
|
labels: string[];
|
|
19
19
|
isPr: boolean;
|
|
20
|
-
},
|
|
20
|
+
}, labelsNotRequiringPullRequest?: string[], options?: EvaluateOptions) => Promise<PrRejectionResult>;
|
|
21
21
|
private resolveOpenPrsForPrItem;
|
|
22
22
|
private resolveOpenPrsFromUrls;
|
|
23
23
|
private extractChangeTargetMustPaths;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IssueRejectionEvaluator.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/IssueRejectionEvaluator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEhB,MAAM,sCAAsC,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAC5B,wBAAwB,GACxB,8BAA8B,GAC9B,uBAAuB,GACvB,yBAAyB,GACzB,kCAAkC,GAClC,+BAA+B,GAC/B,iCAAiC,GACjC,qCAAqC,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE;QAAE,IAAI,EAAE,oBAAoB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7D,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAQ5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,IAAI,CACpC,eAAe,EACb,oBAAoB,GACpB,oBAAoB,GACpB,gCAAgC,GAChC,iCAAiC,CACpC;IAGH,QAAQ,GACN,OAAO;QACL,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,IAAI,EAAE,OAAO,CAAC;KACf,EACD,
|
|
1
|
+
{"version":3,"file":"IssueRejectionEvaluator.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/IssueRejectionEvaluator.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEhB,MAAM,sCAAsC,CAAC;AAE9C,MAAM,MAAM,oBAAoB,GAC5B,wBAAwB,GACxB,8BAA8B,GAC9B,uBAAuB,GACvB,yBAAyB,GACzB,kCAAkC,GAClC,+BAA+B,GAC/B,iCAAiC,GACjC,qCAAqC,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE;QAAE,IAAI,EAAE,oBAAoB,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC7D,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAQ5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACrC,CAAC;AAEF,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,IAAI,CACpC,eAAe,EACb,oBAAoB,GACpB,oBAAoB,GACpB,gCAAgC,GAChC,iCAAiC,CACpC;IAGH,QAAQ,GACN,OAAO;QACL,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,IAAI,EAAE,OAAO,CAAC;KACf,EACD,gCAA+B,MAAM,EAAO,EAC5C,UAAS,eAAoB,KAC5B,OAAO,CAAC,iBAAiB,CAAC,CAqI3B;IAKF,OAAO,CAAC,uBAAuB,CAgB7B;IAcF,OAAO,CAAC,sBAAsB,CAsB5B;IAEF,OAAO,CAAC,4BAA4B,CAYlC;IAEF,OAAO,CAAC,mBAAmB,CAIwC;CACpE"}
|
|
@@ -23,6 +23,7 @@ export declare class NotifyFinishedIssuePreparationUseCase {
|
|
|
23
23
|
workflowBlockerResolvedWebhookUrl: string | null;
|
|
24
24
|
allowedIssueAuthors?: string[] | null;
|
|
25
25
|
labelsAsLlmAgentName?: string[] | null;
|
|
26
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
26
27
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
27
28
|
}) => Promise<void>;
|
|
28
29
|
private isAuthorTrusted;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotifyFinishedIssuePreparationUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"NotifyFinishedIssuePreparationUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAc3E,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,QAAQ,EAAE,MAAM;CAI7B;AACD,qBAAa,uBAAwB,SAAQ,KAAK;gBAE9C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GAAG,IAAI,EAC5B,cAAc,EAAE,MAAM,GAAG,IAAI;CAOhC;AAID,qBAAa,qCAAqC;IAK9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAahC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAIvC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAtBpC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0B;IAClE,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAkC;gBAG/D,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,EACtD,eAAe,EAAE,IAAI,CACpC,eAAe,EACb,KAAK,GACL,QAAQ,GACR,cAAc,GACd,oBAAoB,GACpB,mBAAmB,GACnB,oBAAoB,GACpB,gCAAgC,GAChC,oBAAoB,GACpB,iCAAiC,GACjC,qBAAqB,CACxB,EACgB,sBAAsB,EAAE,IAAI,CAC3C,sBAAsB,EACtB,sBAAsB,GAAG,eAAe,CACzC,EACgB,iBAAiB,EAAE,IAAI,CACtC,iBAAiB,EACjB,gBAAgB,CACjB;IAQH,GAAG,GAAU,QAAQ;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,iCAAiC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjD,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACvC,6BAA6B,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAChD,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;KACzD,KAAG,OAAO,CAAC,IAAI,CAAC,CAsMf;IAEF,OAAO,CAAC,eAAe,CAIgD;IAEvE,OAAO,CAAC,iBAAiB,CAkCvB;IAEF,OAAO,CAAC,qBAAqB,CAuB3B;IAEF,OAAO,CAAC,gCAAgC,CAoBtC;IAEF,OAAO,CAAC,uBAAuB,CAQ7B;IAEF,OAAO,CAAC,+BAA+B,CAgCrC;CACH"}
|
|
@@ -12,6 +12,7 @@ export declare class RevertNotReadyReviewQueueIssueUseCase {
|
|
|
12
12
|
projectUrl: string;
|
|
13
13
|
manager: string;
|
|
14
14
|
labelsAsLlmAgentName?: string[] | null;
|
|
15
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
15
16
|
changeTargetPathAliases?: Record<string, string> | null;
|
|
16
17
|
allowedIssueAuthors?: string[] | null;
|
|
17
18
|
}) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RevertNotReadyReviewQueueIssueUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"RevertNotReadyReviewQueueIssueUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAoCrF,qBAAa,qCAAqC;IAK9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAIlC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAWhC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAnBzC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0B;IAClE,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAkC;gBAG/D,iBAAiB,EAAE,IAAI,CACtC,iBAAiB,EACjB,oBAAoB,GAAG,YAAY,CACpC,EACgB,eAAe,EAAE,IAAI,CACpC,eAAe,EACb,cAAc,GACd,cAAc,GACd,aAAa,GACb,oBAAoB,GACpB,oBAAoB,GACpB,gCAAgC,GAChC,oBAAoB,GACpB,iCAAiC,CACpC,EACgB,sBAAsB,EAAE,IAAI,CAC3C,sBAAsB,EACtB,eAAe,CAChB;IAQH,GAAG,GAAU,QAAQ;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACvC,6BAA6B,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAChD,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;QACxD,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KACvC,KAAG,OAAO,CAAC,IAAI,CAAC,CAqKf;IAQF,OAAO,CAAC,gCAAgC,CAsBtC;CACH"}
|
|
@@ -16,6 +16,7 @@ export declare class RevertOrphanedPreparationUseCase {
|
|
|
16
16
|
awLogStaleThresholdMinutes?: number;
|
|
17
17
|
awaitingQualityCheckStatus?: string | null;
|
|
18
18
|
labelsAsLlmAgentName?: string[] | null;
|
|
19
|
+
labelsNotRequiringPullRequest?: string[] | null;
|
|
19
20
|
}) => Promise<void>;
|
|
20
21
|
private evaluateHasRejections;
|
|
21
22
|
private resolveOpenPrsForPrItem;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RevertOrphanedPreparationUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/RevertOrphanedPreparationUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEhB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"RevertOrphanedPreparationUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/RevertOrphanedPreparationUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAEhB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAa7E,qBAAa,gCAAgC;IAEzC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAC9B,iBAAiB,EACjB,oBAAoB,GAAG,YAAY,CACpC;IACD,QAAQ,CAAC,eAAe,EAAE,IAAI,CAC5B,eAAe,EACb,cAAc,GACd,cAAc,GACd,oBAAoB,GACpB,oBAAoB,CACvB;IACD,QAAQ,CAAC,sBAAsB,EAAE,IAAI,CACnC,sBAAsB,EACtB,sBAAsB,GAAG,eAAe,CACzC;IACD,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB;gBAftC,iBAAiB,EAAE,IAAI,CAC9B,iBAAiB,EACjB,oBAAoB,GAAG,YAAY,CACpC,EACQ,eAAe,EAAE,IAAI,CAC5B,eAAe,EACb,cAAc,GACd,cAAc,GACd,oBAAoB,GACpB,oBAAoB,CACvB,EACQ,sBAAsB,EAAE,IAAI,CACnC,sBAAsB,EACtB,sBAAsB,GAAG,eAAe,CACzC,EACQ,kBAAkB,EAAE,kBAAkB;IAGjD,GAAG,GAAU,QAAQ;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,8BAA8B,EAAE,MAAM,CAAC;QACvC,sBAAsB,EAAE,MAAM,CAAC;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,0BAA0B,CAAC,EAAE,MAAM,CAAC;QACpC,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3C,oBAAoB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACvC,6BAA6B,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;KACjD,KAAG,OAAO,CAAC,IAAI,CAAC,CAsGf;IAEF,OAAO,CAAC,qBAAqB,CAgD3B;IAEF,OAAO,CAAC,uBAAuB,CAQ7B;IAEF,OAAO,CAAC,qBAAqB,CAuB3B;IAEF,OAAO,CAAC,eAAe,CA6BrB;IAEF,OAAO,CAAC,YAAY,CA+BlB;CACH"}
|