github-issue-tower-defence-management 2.153.5 → 2.153.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/domain/usecases/StaleTaskPullRequestCloseUseCase.js +15 -5
- package/bin/domain/usecases/StaleTaskPullRequestCloseUseCase.js.map +1 -1
- package/package.json +1 -1
- package/types/domain/usecases/StaleTaskPullRequestCloseUseCase.d.ts +2 -2
- package/types/domain/usecases/StaleTaskPullRequestCloseUseCase.d.ts.map +1 -1
|
@@ -10,14 +10,24 @@ class StaleTaskPullRequestCloseUseCase {
|
|
|
10
10
|
const evaluatedAt = input.evaluatedAt ?? new Date();
|
|
11
11
|
const minimumPullRequestAgeMs = input.minimumPullRequestAgeMs ?? exports.DEFAULT_MINIMUM_PULL_REQUEST_AGE_MS;
|
|
12
12
|
const closedTaskIssues = input.issues.filter((issue) => !issue.isPr && issue.isClosed);
|
|
13
|
-
const
|
|
13
|
+
const closedTaskIssueUrlsInInputOrder = closedTaskIssues.map((issue) => issue.url);
|
|
14
|
+
const closedTaskIssueUrls = new Set(closedTaskIssueUrlsInInputOrder);
|
|
15
|
+
const relatedOpenPrUrlsByIssueUrl = await this.issueRepository.findRelatedOpenPrUrls(closedTaskIssueUrlsInInputOrder);
|
|
16
|
+
const unresolvedClosedTaskIssueUrls = [];
|
|
14
17
|
const candidatePullRequestUrls = new Set();
|
|
15
|
-
for (const
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
for (const closedTaskIssueUrl of closedTaskIssueUrlsInInputOrder) {
|
|
19
|
+
const relatedOpenPrUrls = relatedOpenPrUrlsByIssueUrl.get(closedTaskIssueUrl);
|
|
20
|
+
if (relatedOpenPrUrls === undefined) {
|
|
21
|
+
unresolvedClosedTaskIssueUrls.push(closedTaskIssueUrl);
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
for (const relatedOpenPrUrl of relatedOpenPrUrls) {
|
|
25
|
+
candidatePullRequestUrls.add(relatedOpenPrUrl);
|
|
19
26
|
}
|
|
20
27
|
}
|
|
28
|
+
if (unresolvedClosedTaskIssueUrls.length > 0) {
|
|
29
|
+
console.warn(`StaleTaskPullRequestCloseUseCase: skipping closed task issues whose related open pull requests could not be resolved in this run. count: ${unresolvedClosedTaskIssueUrls.length} issueUrls: ${unresolvedClosedTaskIssueUrls.join(', ')}`);
|
|
30
|
+
}
|
|
21
31
|
for (const pullRequestUrl of candidatePullRequestUrls) {
|
|
22
32
|
const pullRequestIssue = await this.issueRepository.getIssueByUrl(pullRequestUrl);
|
|
23
33
|
if (!pullRequestIssue || pullRequestIssue.isClosed) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaleTaskPullRequestCloseUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/StaleTaskPullRequestCloseUseCase.ts"],"names":[],"mappings":";;;AAEA,2EAA2E;AAE9D,QAAA,mCAAmC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvE,MAAa,gCAAgC;IAC3C,YACW,eAOR;QAPQ,oBAAe,GAAf,eAAe,CAOvB;QAGH,QAAG,GAAG,KAAK,EAAE,KAIZ,EAAiB,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC;YACpD,MAAM,uBAAuB,GAC3B,KAAK,CAAC,uBAAuB,IAAI,2CAAmC,CAAC;YACvE,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAC1C,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CACzC,CAAC;YACF,MAAM,
|
|
1
|
+
{"version":3,"file":"StaleTaskPullRequestCloseUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/StaleTaskPullRequestCloseUseCase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -2,8 +2,8 @@ import type { Issue } from '../entities/Issue';
|
|
|
2
2
|
import type { IssueRepository } from './adapter-interfaces/IssueRepository';
|
|
3
3
|
export declare const DEFAULT_MINIMUM_PULL_REQUEST_AGE_MS: number;
|
|
4
4
|
export declare class StaleTaskPullRequestCloseUseCase {
|
|
5
|
-
readonly issueRepository: Pick<IssueRepository, 'closePullRequest' | 'createCommentByUrl' | 'getIssueOrPullRequestComments' | '
|
|
6
|
-
constructor(issueRepository: Pick<IssueRepository, 'closePullRequest' | 'createCommentByUrl' | 'getIssueOrPullRequestComments' | '
|
|
5
|
+
readonly issueRepository: Pick<IssueRepository, 'closePullRequest' | 'createCommentByUrl' | 'getIssueOrPullRequestComments' | 'findRelatedOpenPrUrls' | 'getIssueByUrl'>;
|
|
6
|
+
constructor(issueRepository: Pick<IssueRepository, 'closePullRequest' | 'createCommentByUrl' | 'getIssueOrPullRequestComments' | 'findRelatedOpenPrUrls' | 'getIssueByUrl'>);
|
|
7
7
|
run: (input: {
|
|
8
8
|
issues: Issue[];
|
|
9
9
|
evaluatedAt?: Date;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StaleTaskPullRequestCloseUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/StaleTaskPullRequestCloseUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAG5E,eAAO,MAAM,mCAAmC,QAAsB,CAAC;AAEvE,qBAAa,gCAAgC;IAEzC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAC5B,eAAe,EACb,kBAAkB,GAClB,oBAAoB,GACpB,+BAA+B,GAC/B,
|
|
1
|
+
{"version":3,"file":"StaleTaskPullRequestCloseUseCase.d.ts","sourceRoot":"","sources":["../../../src/domain/usecases/StaleTaskPullRequestCloseUseCase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAG5E,eAAO,MAAM,mCAAmC,QAAsB,CAAC;AAEvE,qBAAa,gCAAgC;IAEzC,QAAQ,CAAC,eAAe,EAAE,IAAI,CAC5B,eAAe,EACb,kBAAkB,GAClB,oBAAoB,GACpB,+BAA+B,GAC/B,uBAAuB,GACvB,eAAe,CAClB;gBAPQ,eAAe,EAAE,IAAI,CAC5B,eAAe,EACb,kBAAkB,GAClB,oBAAoB,GACpB,+BAA+B,GAC/B,uBAAuB,GACvB,eAAe,CAClB;IAGH,GAAG,GAAU,OAAO;QAClB,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,WAAW,CAAC,EAAE,IAAI,CAAC;QACnB,uBAAuB,CAAC,EAAE,MAAM,CAAC;KAClC,KAAG,OAAO,CAAC,IAAI,CAAC,CAmEf;IAEF,OAAO,CAAC,2BAA2B,CAgBjC;CACH"}
|