github-issue-tower-defence-management 1.156.3 → 1.157.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 (54) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +6 -6
  3. package/bin/adapter/entry-points/cli/index.js +6 -1
  4. package/bin/adapter/entry-points/cli/index.js.map +1 -1
  5. package/bin/adapter/entry-points/cli/projectConfig.js +6 -0
  6. package/bin/adapter/entry-points/cli/projectConfig.js.map +1 -1
  7. package/bin/adapter/entry-points/console/consoleDataDelivery.js +3 -10
  8. package/bin/adapter/entry-points/console/consoleDataDelivery.js.map +1 -1
  9. package/bin/adapter/entry-points/console/consoleTabNames.js +32 -0
  10. package/bin/adapter/entry-points/console/consoleTabNames.js.map +1 -0
  11. package/bin/adapter/entry-points/console/webServer.js +1 -1
  12. package/bin/adapter/entry-points/console/webServer.js.map +1 -1
  13. package/bin/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.js +82 -0
  14. package/bin/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.js.map +1 -0
  15. package/bin/adapter/entry-points/handlers/consoleListsWriter.js +2 -10
  16. package/bin/adapter/entry-points/handlers/consoleListsWriter.js.map +1 -1
  17. package/bin/adapter/repositories/FileSystemSubAgentLivenessResolver.js +1 -19
  18. package/bin/adapter/repositories/FileSystemSubAgentLivenessResolver.js.map +1 -1
  19. package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js +49 -1
  20. package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js.map +1 -1
  21. package/bin/domain/usecases/adapter-interfaces/ConsoleTabsRepository.js +3 -0
  22. package/bin/domain/usecases/adapter-interfaces/ConsoleTabsRepository.js.map +1 -0
  23. package/package.json +1 -1
  24. package/src/adapter/entry-points/cli/index.ts +8 -0
  25. package/src/adapter/entry-points/cli/projectConfig.test.ts +56 -0
  26. package/src/adapter/entry-points/cli/projectConfig.ts +8 -0
  27. package/src/adapter/entry-points/console/consoleDataDelivery.ts +3 -10
  28. package/src/adapter/entry-points/console/consoleTabNames.test.ts +51 -0
  29. package/src/adapter/entry-points/console/consoleTabNames.ts +37 -0
  30. package/src/adapter/entry-points/console/webServer.ts +1 -1
  31. package/src/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.test.ts +217 -0
  32. package/src/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.ts +113 -0
  33. package/src/adapter/entry-points/handlers/consoleListsWriter.ts +2 -12
  34. package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.test.ts +12 -4
  35. package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts +1 -21
  36. package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.test.ts +159 -0
  37. package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts +59 -0
  38. package/src/domain/usecases/adapter-interfaces/ConsoleTabsRepository.ts +12 -0
  39. package/types/adapter/entry-points/cli/index.d.ts.map +1 -1
  40. package/types/adapter/entry-points/cli/projectConfig.d.ts +1 -0
  41. package/types/adapter/entry-points/cli/projectConfig.d.ts.map +1 -1
  42. package/types/adapter/entry-points/console/consoleDataDelivery.d.ts +2 -1
  43. package/types/adapter/entry-points/console/consoleDataDelivery.d.ts.map +1 -1
  44. package/types/adapter/entry-points/console/consoleTabNames.d.ts +4 -0
  45. package/types/adapter/entry-points/console/consoleTabNames.d.ts.map +1 -0
  46. package/types/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.d.ts +13 -0
  47. package/types/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.d.ts.map +1 -0
  48. package/types/adapter/entry-points/handlers/consoleListsWriter.d.ts.map +1 -1
  49. package/types/adapter/repositories/FileSystemSubAgentLivenessResolver.d.ts +0 -1
  50. package/types/adapter/repositories/FileSystemSubAgentLivenessResolver.d.ts.map +1 -1
  51. package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts +5 -1
  52. package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts.map +1 -1
  53. package/types/domain/usecases/adapter-interfaces/ConsoleTabsRepository.d.ts +9 -0
  54. package/types/domain/usecases/adapter-interfaces/ConsoleTabsRepository.d.ts.map +1 -0
@@ -2,6 +2,7 @@ import { IssueRepository } from './adapter-interfaces/IssueRepository';
2
2
  import { ProjectRepository } from './adapter-interfaces/ProjectRepository';
3
3
  import { IssueCommentRepository } from './adapter-interfaces/IssueCommentRepository';
4
4
  import { WebhookRepository } from './adapter-interfaces/WebhookRepository';
5
+ import { ConsoleTabsRepository } from './adapter-interfaces/ConsoleTabsRepository';
5
6
  import {
6
7
  AWAITING_QUALITY_CHECK_STATUS_NAME,
7
8
  AWAITING_WORKSPACE_STATUS_NAME,
@@ -19,6 +20,11 @@ import {
19
20
  RETURNED_TO_AWAITING_WORKSPACE_MESSAGE,
20
21
  RETURNED_TO_AWAITING_WORKSPACE_MESSAGE_HEAD,
21
22
  } from './returnedToAwaitingWorkspaceMessage';
23
+ import {
24
+ ConsoleListItem,
25
+ ConsoleTabName,
26
+ } from './console/GenerateConsoleListsUseCase';
27
+ import { Issue } from '../entities/Issue';
22
28
 
23
29
  export class IssueNotFoundError extends Error {
24
30
  constructor(issueUrl: string) {
@@ -68,6 +74,7 @@ export class NotifyFinishedIssuePreparationUseCase {
68
74
  WebhookRepository,
69
75
  'sendGetRequest'
70
76
  >,
77
+ private readonly consoleTabsRepository?: ConsoleTabsRepository | null,
71
78
  ) {
72
79
  this.issueRejectionEvaluator = new IssueRejectionEvaluator(issueRepository);
73
80
  this.changeTargetPullRequestApprover = new ChangeTargetPullRequestApprover(
@@ -156,6 +163,7 @@ export class NotifyFinishedIssuePreparationUseCase {
156
163
  issue,
157
164
  awaitingWorkspaceStatusOption.id,
158
165
  );
166
+ await this.patchConsoleTab(issue);
159
167
  await this.issueCommentRepository.createComment(
160
168
  issue,
161
169
  `Issue has dependent issue URLs:\n${issue.dependedIssueUrls.map((url) => `- ${url}`).join('\n')}`,
@@ -171,6 +179,7 @@ export class NotifyFinishedIssuePreparationUseCase {
171
179
  issue,
172
180
  awaitingWorkspaceStatusOption.id,
173
181
  );
182
+ await this.patchConsoleTab(issue);
174
183
  await this.issueCommentRepository.createComment(
175
184
  issue,
176
185
  `Issue has next action date or hour set: nextActionDate=${issue.nextActionDate?.toISOString() ?? 'null'}, nextActionHour=${issue.nextActionHour ?? 'null'}`,
@@ -221,6 +230,7 @@ export class NotifyFinishedIssuePreparationUseCase {
221
230
  issue,
222
231
  failedPreparationStatusOption.id,
223
232
  );
233
+ await this.patchConsoleTab(issue);
224
234
  await this.setDependedIssueUrlForAllOpenPRs(
225
235
  issue,
226
236
  params.issueUrl,
@@ -256,6 +266,7 @@ export class NotifyFinishedIssuePreparationUseCase {
256
266
  issue,
257
267
  awaitingWorkspaceStatusOption.id,
258
268
  );
269
+ await this.patchConsoleTab(issue);
259
270
  await this.issueCommentRepository.createComment(
260
271
  issue,
261
272
  RETURNED_TO_AWAITING_WORKSPACE_MESSAGE,
@@ -276,6 +287,7 @@ export class NotifyFinishedIssuePreparationUseCase {
276
287
  issue,
277
288
  awaitingQualityCheckStatusOption.id,
278
289
  );
290
+ await this.patchConsoleTab(issue);
279
291
  await this.setDependedIssueUrlForAllOpenPRs(
280
292
  issue,
281
293
  params.issueUrl,
@@ -296,6 +308,7 @@ export class NotifyFinishedIssuePreparationUseCase {
296
308
  issue,
297
309
  awaitingWorkspaceStatusOption.id,
298
310
  );
311
+ await this.patchConsoleTab(issue);
299
312
 
300
313
  await this.setDependedIssueUrlForAllOpenPRs(
301
314
  issue,
@@ -457,4 +470,50 @@ export class NotifyFinishedIssuePreparationUseCase {
457
470
  console.warn('Failed to send workflow blocker notification:', error);
458
471
  }
459
472
  };
473
+
474
+ private resolveConsoleTargetTab = (status: string): ConsoleTabName | null => {
475
+ const lower = status.toLowerCase();
476
+ if (lower === AWAITING_QUALITY_CHECK_STATUS_NAME.toLowerCase())
477
+ return 'prs';
478
+ if (lower === FAILED_PREPARATION_STATUS_NAME.toLowerCase())
479
+ return 'failed-preparation';
480
+ return null;
481
+ };
482
+
483
+ private patchConsoleTab = async (issue: Issue): Promise<void> => {
484
+ if (!this.consoleTabsRepository) return;
485
+ const targetTabName = this.resolveConsoleTargetTab(issue.status ?? '');
486
+ const relatedOpenPullRequestUrls: string[] =
487
+ !issue.isPr && targetTabName !== null
488
+ ? (await this.issueRepository.findRelatedOpenPRs(issue.url)).map(
489
+ (pr) => pr.url,
490
+ )
491
+ : [];
492
+ const item: ConsoleListItem = {
493
+ number: issue.number,
494
+ title: issue.title,
495
+ url: issue.url,
496
+ repo: issue.nameWithOwner,
497
+ nameWithOwner: issue.nameWithOwner,
498
+ projectItemId: issue.itemId,
499
+ itemId: issue.itemId,
500
+ isPr: issue.isPr,
501
+ story: issue.story ?? '',
502
+ status: issue.status,
503
+ nextActionDate:
504
+ issue.nextActionDate === null
505
+ ? null
506
+ : issue.nextActionDate.toISOString(),
507
+ nextActionHour: issue.nextActionHour,
508
+ dependedIssueUrls: issue.dependedIssueUrls,
509
+ labels: issue.labels,
510
+ createdAt: issue.createdAt.toISOString(),
511
+ relatedOpenPullRequestUrls,
512
+ };
513
+ this.consoleTabsRepository.patchIssueTabTransition({
514
+ projectItemId: issue.itemId,
515
+ item,
516
+ targetTabName,
517
+ });
518
+ };
460
519
  }
@@ -0,0 +1,12 @@
1
+ import {
2
+ ConsoleListItem,
3
+ ConsoleTabName,
4
+ } from '../console/GenerateConsoleListsUseCase';
5
+
6
+ export interface ConsoleTabsRepository {
7
+ patchIssueTabTransition(params: {
8
+ projectItemId: string;
9
+ item: ConsoleListItem;
10
+ targetTabName: ConsoleTabName | null;
11
+ }): void;
12
+ }
@@ -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;AA6LzB,eAAO,MAAM,OAAO,SAAgB,CAAC;AAqgCrC,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"}
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;AA8LzB,eAAO,MAAM,OAAO,SAAgB,CAAC;AA4gCrC,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"}
@@ -20,6 +20,7 @@ export type ConfigFile = {
20
20
  labelsAsLlmAgentName?: string[];
21
21
  labelsNotRequiringPullRequest?: string[];
22
22
  changeTargetPathAliases?: Record<string, string>;
23
+ consoleDataOutputDir?: string;
23
24
  consoleAccessToken?: string;
24
25
  consoleProjects?: Record<string, string>;
25
26
  consoleGithubTokenFilesByRepositoryOwner?: 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,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;AA8CvE,eAAO,MAAM,cAAc,GAAI,gBAAgB,MAAM,KAAG,UAuEvD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,MAAM,EACd,aAAa,MAAM,KAClB,UA4EF,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"}
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,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,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;AA+CvE,eAAO,MAAM,cAAc,GAAI,gBAAgB,MAAM,KAAG,UAwEvD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,QAAQ,MAAM,EACd,aAAa,MAAM,KAClB,UA6EF,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,YAAY,UAAU,EACtB,cAAc,UAAU,EACxB,iBAAiB,UAAU,KAC1B,UAuFD,CAAC;AAkBH,eAAO,MAAM,kBAAkB,GAC7B,YAAY,MAAM,EAClB,OAAO,MAAM,KACZ,OAAO,CAAC,MAAM,GAAG,IAAI,CAoDvB,CAAC"}
@@ -1,4 +1,5 @@
1
- export declare const CONSOLE_LIST_TAB_NAMES: string[];
1
+ import { CONSOLE_LIST_TAB_NAMES } from './consoleTabNames';
2
+ export { CONSOLE_LIST_TAB_NAMES };
2
3
  export type ConsoleDataRoute = {
3
4
  kind: 'list';
4
5
  pjcode: string;
@@ -1 +1 @@
1
- {"version":3,"file":"consoleDataDelivery.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/console/consoleDataDelivery.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB,EAAE,MAAM,EAQ1C,CAAC;AAEF,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAO9D,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,KAClB,gBAAgB,GAAG,IAoCrB,CAAC;AA0CF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,sBAAsB,MAAM,EAC5B,OAAO,gBAAgB,KACtB,mBA6CF,CAAC"}
1
+ {"version":3,"file":"consoleDataDelivery.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/console/consoleDataDelivery.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAO9D,eAAO,MAAM,qBAAqB,GAChC,aAAa,MAAM,KAClB,gBAAgB,GAAG,IAoCrB,CAAC;AA0CF,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,sBAAsB,MAAM,EAC5B,OAAO,gBAAgB,KACtB,mBA6CF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ConsoleTabName } from '../../../domain/usecases/console/GenerateConsoleListsUseCase';
2
+ export declare const CONSOLE_LIST_TAB_NAMES: ConsoleTabName[];
3
+ export declare const sortByStoryOrder: (items: unknown[], storyOrder: string[]) => unknown[];
4
+ //# sourceMappingURL=consoleTabNames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consoleTabNames.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/console/consoleTabNames.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8DAA8D,CAAC;AAEnG,eAAO,MAAM,sBAAsB,EAAE,cAAc,EAQlD,CAAC;AAOF,eAAO,MAAM,gBAAgB,GAC3B,OAAO,OAAO,EAAE,EAChB,YAAY,MAAM,EAAE,KACnB,OAAO,EAgBT,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { ConsoleListItem, ConsoleTabName } from '../../../domain/usecases/console/GenerateConsoleListsUseCase';
2
+ import type { ConsoleTabsRepository } from '../../../domain/usecases/adapter-interfaces/ConsoleTabsRepository';
3
+ export declare class FileSystemConsoleTabsRepository implements ConsoleTabsRepository {
4
+ private readonly consoleDataOutputDir;
5
+ private readonly pjcode;
6
+ constructor(consoleDataOutputDir: string, pjcode: string);
7
+ patchIssueTabTransition(params: {
8
+ projectItemId: string;
9
+ item: ConsoleListItem;
10
+ targetTabName: ConsoleTabName | null;
11
+ }): void;
12
+ }
13
+ //# sourceMappingURL=FileSystemConsoleTabsRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileSystemConsoleTabsRepository.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EACf,MAAM,8DAA8D,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mEAAmE,CAAC;AAqD/G,qBAAa,+BAAgC,YAAW,qBAAqB;IAEzE,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,oBAAoB,EAAE,MAAM,EAC5B,MAAM,EAAE,MAAM;IAGjC,uBAAuB,CAAC,MAAM,EAAE;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,eAAe,CAAC;QACtB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;KACtC,GAAG,IAAI;CA2CT"}
@@ -1 +1 @@
1
- {"version":3,"file":"consoleListsWriter.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/consoleListsWriter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAQhE,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChD,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAYF,eAAO,MAAM,wBAAwB,GAAI,MAAM,IAAI,KAAG,MACR,CAAC;AAU/C,eAAO,MAAM,iBAAiB,GAAI,QAAQ,wBAAwB,KAAG,IAyBpE,CAAC"}
1
+ {"version":3,"file":"consoleListsWriter.d.ts","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/consoleListsWriter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAQhE,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAChD,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,MAAM,IAAI,KAAG,MACR,CAAC;AAU/C,eAAO,MAAM,iBAAiB,GAAI,QAAQ,wBAAwB,KAAG,IAyBpE,CAAC"}
@@ -6,7 +6,6 @@ export declare class FileSystemSubAgentLivenessResolver implements SubAgentLiven
6
6
  sessionName: string;
7
7
  mainTranscriptPath: string | null;
8
8
  }) => Promise<Set<string> | null>;
9
- private hasReadableRuntimeRootDirectory;
10
9
  private resolveRunningSubAgentsFilePath;
11
10
  }
12
11
  //# sourceMappingURL=FileSystemSubAgentLivenessResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileSystemSubAgentLivenessResolver.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mEAAmE,CAAC;AAU7G,qBAAa,kCAAmC,YAAW,wBAAwB;IACrE,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAApB,oBAAoB,EAAE,MAAM,GAAG,IAAI;IAEhE,sBAAsB,GAAU,QAAQ;QACtC,WAAW,EAAE,MAAM,CAAC;QACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;KACnC,KAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAwB7B;IAEF,OAAO,CAAC,+BAA+B,CASrC;IAEF,OAAO,CAAC,+BAA+B,CAoBrC;CACH"}
1
+ {"version":3,"file":"FileSystemSubAgentLivenessResolver.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mEAAmE,CAAC;AAI7G,qBAAa,kCAAmC,YAAW,wBAAwB;IACrE,OAAO,CAAC,QAAQ,CAAC,oBAAoB;gBAApB,oBAAoB,EAAE,MAAM,GAAG,IAAI;IAEhE,sBAAsB,GAAU,QAAQ;QACtC,WAAW,EAAE,MAAM,CAAC;QACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;KACnC,KAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAqB7B;IAEF,OAAO,CAAC,+BAA+B,CAoBrC;CACH"}
@@ -2,6 +2,7 @@ import { IssueRepository } from './adapter-interfaces/IssueRepository';
2
2
  import { ProjectRepository } from './adapter-interfaces/ProjectRepository';
3
3
  import { IssueCommentRepository } from './adapter-interfaces/IssueCommentRepository';
4
4
  import { WebhookRepository } from './adapter-interfaces/WebhookRepository';
5
+ import { ConsoleTabsRepository } from './adapter-interfaces/ConsoleTabsRepository';
5
6
  export declare class IssueNotFoundError extends Error {
6
7
  constructor(issueUrl: string);
7
8
  }
@@ -13,9 +14,10 @@ export declare class NotifyFinishedIssuePreparationUseCase {
13
14
  private readonly issueRepository;
14
15
  private readonly issueCommentRepository;
15
16
  private readonly webhookRepository;
17
+ private readonly consoleTabsRepository?;
16
18
  private readonly issueRejectionEvaluator;
17
19
  private readonly changeTargetPullRequestApprover;
18
- constructor(projectRepository: Pick<ProjectRepository, 'getByUrl'>, issueRepository: Pick<IssueRepository, 'get' | 'update' | 'updateStatus' | 'findRelatedOpenPRs' | 'getStoryObjectMap' | 'getOpenPullRequest' | 'getPullRequestChangedFilePaths' | 'approvePullRequest' | 'requestChangesWithInlineComment' | 'setDependedIssueUrl'>, issueCommentRepository: Pick<IssueCommentRepository, 'getCommentsFromIssue' | 'createComment'>, webhookRepository: Pick<WebhookRepository, 'sendGetRequest'>);
20
+ constructor(projectRepository: Pick<ProjectRepository, 'getByUrl'>, issueRepository: Pick<IssueRepository, 'get' | 'update' | 'updateStatus' | 'findRelatedOpenPRs' | 'getStoryObjectMap' | 'getOpenPullRequest' | 'getPullRequestChangedFilePaths' | 'approvePullRequest' | 'requestChangesWithInlineComment' | 'setDependedIssueUrl'>, issueCommentRepository: Pick<IssueCommentRepository, 'getCommentsFromIssue' | 'createComment'>, webhookRepository: Pick<WebhookRepository, 'sendGetRequest'>, consoleTabsRepository?: (ConsoleTabsRepository | null) | undefined);
19
21
  run: (params: {
20
22
  projectUrl: string;
21
23
  issueUrl: string;
@@ -32,5 +34,7 @@ export declare class NotifyFinishedIssuePreparationUseCase {
32
34
  private setDependedIssueUrlForAllOpenPRs;
33
35
  private resolveOpenPrsForPrItem;
34
36
  private sendWorkflowBlockerNotification;
37
+ private resolveConsoleTargetTab;
38
+ private patchConsoleTab;
35
39
  }
36
40
  //# sourceMappingURL=NotifyFinishedIssuePreparationUseCase.d.ts.map
@@ -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;AAmB3E,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,CA+Nf;IAEF,OAAO,CAAC,eAAe,CAIgD;IAEvE,OAAO,CAAC,iBAAiB,CAkDvB;IAEF,OAAO,CAAC,qBAAqB,CAuB3B;IAEF,OAAO,CAAC,gCAAgC,CAoBtC;IAEF,OAAO,CAAC,uBAAuB,CAQ7B;IAEF,OAAO,CAAC,+BAA+B,CAgCrC;CACH"}
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,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAwBnF,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;IAIlC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IA1BzC,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,EACgB,qBAAqB,CAAC,GAAE,qBAAqB,GAAG,IAAI,aAAA;IAQvE,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,CAqOf;IAEF,OAAO,CAAC,eAAe,CAIgD;IAEvE,OAAO,CAAC,iBAAiB,CAkDvB;IAEF,OAAO,CAAC,qBAAqB,CAuB3B;IAEF,OAAO,CAAC,gCAAgC,CAoBtC;IAEF,OAAO,CAAC,uBAAuB,CAQ7B;IAEF,OAAO,CAAC,+BAA+B,CAgCrC;IAEF,OAAO,CAAC,uBAAuB,CAO7B;IAEF,OAAO,CAAC,eAAe,CAmCrB;CACH"}
@@ -0,0 +1,9 @@
1
+ import { ConsoleListItem, ConsoleTabName } from '../console/GenerateConsoleListsUseCase';
2
+ export interface ConsoleTabsRepository {
3
+ patchIssueTabTransition(params: {
4
+ projectItemId: string;
5
+ item: ConsoleListItem;
6
+ targetTabName: ConsoleTabName | null;
7
+ }): void;
8
+ }
9
+ //# sourceMappingURL=ConsoleTabsRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConsoleTabsRepository.d.ts","sourceRoot":"","sources":["../../../../src/domain/usecases/adapter-interfaces/ConsoleTabsRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,cAAc,EACf,MAAM,wCAAwC,CAAC;AAEhD,MAAM,WAAW,qBAAqB;IACpC,uBAAuB,CAAC,MAAM,EAAE;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,IAAI,EAAE,eAAe,CAAC;QACtB,aAAa,EAAE,cAAc,GAAG,IAAI,CAAC;KACtC,GAAG,IAAI,CAAC;CACV"}