github-issue-tower-defence-management 1.129.0 → 1.131.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.
- package/CHANGELOG.md +14 -0
- package/README.md +7 -5
- package/bin/adapter/entry-points/cli/index.js +8 -0
- package/bin/adapter/entry-points/cli/index.js.map +1 -1
- package/bin/adapter/entry-points/cli/projectConfig.js +2 -0
- package/bin/adapter/entry-points/cli/projectConfig.js.map +1 -1
- package/bin/adapter/entry-points/console/consoleDataDelivery.js +1 -0
- package/bin/adapter/entry-points/console/consoleDataDelivery.js.map +1 -1
- package/bin/adapter/entry-points/console/consoleDoneStore.js +1 -0
- package/bin/adapter/entry-points/console/consoleDoneStore.js.map +1 -1
- package/bin/adapter/entry-points/console/ui-dist/assets/{index-Dr5qin37.js → index-Bz0KvgIG.js} +22 -22
- package/bin/adapter/entry-points/console/ui-dist/index.html +1 -1
- package/bin/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.js +6 -6
- package/bin/adapter/entry-points/handlers/consoleListsWriter.js +1 -0
- package/bin/adapter/entry-points/handlers/consoleListsWriter.js.map +1 -1
- package/bin/domain/usecases/HandleScheduledEventUseCase.js +1 -0
- package/bin/domain/usecases/HandleScheduledEventUseCase.js.map +1 -1
- package/bin/domain/usecases/StartPreparationUseCase.js +6 -1
- package/bin/domain/usecases/StartPreparationUseCase.js.map +1 -1
- package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js +1 -0
- package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js.map +1 -1
- package/package.json +1 -1
- package/src/adapter/entry-points/cli/index.test.ts +36 -0
- package/src/adapter/entry-points/cli/index.ts +14 -0
- package/src/adapter/entry-points/cli/projectConfig.ts +3 -0
- package/src/adapter/entry-points/console/consoleDataDelivery.test.ts +6 -0
- package/src/adapter/entry-points/console/consoleDataDelivery.ts +1 -0
- package/src/adapter/entry-points/console/consoleDoneStore.test.ts +4 -0
- package/src/adapter/entry-points/console/consoleDoneStore.ts +1 -0
- package/src/adapter/entry-points/console/ui/e2e/consoleTestHarness.ts +10 -0
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTabList.stories.tsx +4 -0
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTabList.test.tsx +2 -0
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.stories.tsx +2 -2
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.test.tsx +5 -5
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.tsx +3 -3
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.stories.tsx +8 -0
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.test.tsx +15 -0
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.tsx +2 -2
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleNavigation.test.ts +1 -0
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTabData.test.ts +2 -1
- package/src/adapter/entry-points/console/ui/src/features/console/logic/actionToast.test.ts +6 -2
- package/src/adapter/entry-points/console/ui/src/features/console/logic/actionToast.ts +7 -6
- package/src/adapter/entry-points/console/ui/src/features/console/logic/operations.test.ts +7 -5
- package/src/adapter/entry-points/console/ui/src/features/console/logic/operations.ts +3 -2
- package/src/adapter/entry-points/console/ui/src/features/console/logic/tabAdvance.test.ts +11 -1
- package/src/adapter/entry-points/console/ui/src/features/console/logic/types.ts +3 -1
- package/src/adapter/entry-points/console/ui/src/features/console/testing/fixtures.ts +1 -0
- package/src/adapter/entry-points/console/ui-dist/assets/{index-Dr5qin37.js → index-Bz0KvgIG.js} +22 -22
- package/src/adapter/entry-points/console/ui-dist/index.html +1 -1
- package/src/adapter/entry-points/console/webServer.test.ts +1 -0
- package/src/adapter/entry-points/handlers/consoleListsWriter.test.ts +21 -1
- package/src/adapter/entry-points/handlers/consoleListsWriter.ts +1 -0
- package/src/domain/usecases/HandleScheduledEventUseCase.ts +1 -0
- package/src/domain/usecases/StartPreparationUseCase.test.ts +315 -3
- package/src/domain/usecases/StartPreparationUseCase.ts +7 -1
- package/src/domain/usecases/console/GenerateConsoleListsUseCase.test.ts +26 -0
- package/src/domain/usecases/console/GenerateConsoleListsUseCase.ts +8 -1
- 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/entry-points/console/consoleDataDelivery.d.ts.map +1 -1
- package/types/adapter/entry-points/console/consoleDoneStore.d.ts.map +1 -1
- package/types/adapter/entry-points/handlers/consoleListsWriter.d.ts.map +1 -1
- package/types/domain/usecases/HandleScheduledEventUseCase.d.ts.map +1 -1
- package/types/domain/usecases/StartPreparationUseCase.d.ts +1 -0
- package/types/domain/usecases/StartPreparationUseCase.d.ts.map +1 -1
- package/types/domain/usecases/console/GenerateConsoleListsUseCase.d.ts +2 -1
- package/types/domain/usecases/console/GenerateConsoleListsUseCase.d.ts.map +1 -1
|
@@ -40,7 +40,7 @@ const createMockIssue = (overrides: Partial<Issue> = {}): Issue => ({
|
|
|
40
40
|
dependedIssueUrls: [],
|
|
41
41
|
completionDate50PercentConfidence: null,
|
|
42
42
|
url: 'https://github.com/user/repo/issues/1',
|
|
43
|
-
assignees: [],
|
|
43
|
+
assignees: ['manager-user'],
|
|
44
44
|
labels: [],
|
|
45
45
|
org: 'user',
|
|
46
46
|
repo: 'repo',
|
|
@@ -156,6 +156,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
156
156
|
maximumPreparingIssuesCount: null,
|
|
157
157
|
utilizationPercentageThreshold: 90,
|
|
158
158
|
allowedIssueAuthors: ['testuser'],
|
|
159
|
+
manager: 'manager-user',
|
|
159
160
|
codexHomeCandidates: null,
|
|
160
161
|
labelsAsLlmAgentName: null,
|
|
161
162
|
});
|
|
@@ -222,6 +223,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
222
223
|
maximumPreparingIssuesCount: null,
|
|
223
224
|
utilizationPercentageThreshold: 90,
|
|
224
225
|
allowedIssueAuthors: ['testuser'],
|
|
226
|
+
manager: 'manager-user',
|
|
225
227
|
codexHomeCandidates: null,
|
|
226
228
|
labelsAsLlmAgentName: null,
|
|
227
229
|
});
|
|
@@ -280,6 +282,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
280
282
|
maximumPreparingIssuesCount: null,
|
|
281
283
|
utilizationPercentageThreshold: 90,
|
|
282
284
|
allowedIssueAuthors: ['testuser'],
|
|
285
|
+
manager: 'manager-user',
|
|
283
286
|
codexHomeCandidates: null,
|
|
284
287
|
labelsAsLlmAgentName: null,
|
|
285
288
|
});
|
|
@@ -328,6 +331,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
328
331
|
maximumPreparingIssuesCount: null,
|
|
329
332
|
utilizationPercentageThreshold: 90,
|
|
330
333
|
allowedIssueAuthors: ['testuser'],
|
|
334
|
+
manager: 'manager-user',
|
|
331
335
|
codexHomeCandidates: null,
|
|
332
336
|
labelsAsLlmAgentName: null,
|
|
333
337
|
});
|
|
@@ -378,6 +382,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
378
382
|
maximumPreparingIssuesCount: null,
|
|
379
383
|
utilizationPercentageThreshold: 90,
|
|
380
384
|
allowedIssueAuthors: ['testuser'],
|
|
385
|
+
manager: 'manager-user',
|
|
381
386
|
codexHomeCandidates: null,
|
|
382
387
|
labelsAsLlmAgentName: null,
|
|
383
388
|
});
|
|
@@ -427,6 +432,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
427
432
|
maximumPreparingIssuesCount: null,
|
|
428
433
|
utilizationPercentageThreshold: 90,
|
|
429
434
|
allowedIssueAuthors: ['testuser'],
|
|
435
|
+
manager: 'manager-user',
|
|
430
436
|
codexHomeCandidates: null,
|
|
431
437
|
labelsAsLlmAgentName: null,
|
|
432
438
|
});
|
|
@@ -495,6 +501,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
495
501
|
maximumPreparingIssuesCount: null,
|
|
496
502
|
utilizationPercentageThreshold: 90,
|
|
497
503
|
allowedIssueAuthors: ['testuser'],
|
|
504
|
+
manager: 'manager-user',
|
|
498
505
|
codexHomeCandidates: null,
|
|
499
506
|
labelsAsLlmAgentName: null,
|
|
500
507
|
});
|
|
@@ -586,6 +593,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
586
593
|
maximumPreparingIssuesCount: null,
|
|
587
594
|
utilizationPercentageThreshold: 90,
|
|
588
595
|
allowedIssueAuthors: ['testuser'],
|
|
596
|
+
manager: 'manager-user',
|
|
589
597
|
codexHomeCandidates: null,
|
|
590
598
|
labelsAsLlmAgentName: null,
|
|
591
599
|
});
|
|
@@ -650,6 +658,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
650
658
|
maximumPreparingIssuesCount: null,
|
|
651
659
|
utilizationPercentageThreshold: 90,
|
|
652
660
|
allowedIssueAuthors: ['testuser'],
|
|
661
|
+
manager: 'manager-user',
|
|
653
662
|
codexHomeCandidates: null,
|
|
654
663
|
labelsAsLlmAgentName: null,
|
|
655
664
|
});
|
|
@@ -694,6 +703,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
694
703
|
maximumPreparingIssuesCount: null,
|
|
695
704
|
utilizationPercentageThreshold: 90,
|
|
696
705
|
allowedIssueAuthors: ['testuser'],
|
|
706
|
+
manager: 'manager-user',
|
|
697
707
|
codexHomeCandidates: null,
|
|
698
708
|
labelsAsLlmAgentName: null,
|
|
699
709
|
});
|
|
@@ -751,6 +761,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
751
761
|
maximumPreparingIssuesCount: null,
|
|
752
762
|
utilizationPercentageThreshold: 90,
|
|
753
763
|
allowedIssueAuthors: ['testuser'],
|
|
764
|
+
manager: 'manager-user',
|
|
754
765
|
codexHomeCandidates: null,
|
|
755
766
|
labelsAsLlmAgentName: null,
|
|
756
767
|
});
|
|
@@ -786,6 +797,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
786
797
|
maximumPreparingIssuesCount: null,
|
|
787
798
|
utilizationPercentageThreshold: 90,
|
|
788
799
|
allowedIssueAuthors: ['testuser'],
|
|
800
|
+
manager: 'manager-user',
|
|
789
801
|
codexHomeCandidates: null,
|
|
790
802
|
labelsAsLlmAgentName: null,
|
|
791
803
|
});
|
|
@@ -831,6 +843,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
831
843
|
maximumPreparingIssuesCount: null,
|
|
832
844
|
utilizationPercentageThreshold: 90,
|
|
833
845
|
allowedIssueAuthors: ['testuser'],
|
|
846
|
+
manager: 'manager-user',
|
|
834
847
|
codexHomeCandidates: null,
|
|
835
848
|
labelsAsLlmAgentName: null,
|
|
836
849
|
});
|
|
@@ -876,6 +889,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
876
889
|
maximumPreparingIssuesCount: null,
|
|
877
890
|
utilizationPercentageThreshold: 90,
|
|
878
891
|
allowedIssueAuthors: ['testuser'],
|
|
892
|
+
manager: 'manager-user',
|
|
879
893
|
codexHomeCandidates: null,
|
|
880
894
|
labelsAsLlmAgentName: null,
|
|
881
895
|
});
|
|
@@ -921,6 +935,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
921
935
|
maximumPreparingIssuesCount: null,
|
|
922
936
|
utilizationPercentageThreshold: 90,
|
|
923
937
|
allowedIssueAuthors: ['testuser'],
|
|
938
|
+
manager: 'manager-user',
|
|
924
939
|
codexHomeCandidates: null,
|
|
925
940
|
labelsAsLlmAgentName: null,
|
|
926
941
|
});
|
|
@@ -966,6 +981,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
966
981
|
maximumPreparingIssuesCount: null,
|
|
967
982
|
utilizationPercentageThreshold: 90,
|
|
968
983
|
allowedIssueAuthors: ['testuser'],
|
|
984
|
+
manager: 'manager-user',
|
|
969
985
|
codexHomeCandidates: null,
|
|
970
986
|
labelsAsLlmAgentName: null,
|
|
971
987
|
});
|
|
@@ -1011,6 +1027,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1011
1027
|
maximumPreparingIssuesCount: null,
|
|
1012
1028
|
utilizationPercentageThreshold: 90,
|
|
1013
1029
|
allowedIssueAuthors: ['testuser'],
|
|
1030
|
+
manager: 'manager-user',
|
|
1014
1031
|
codexHomeCandidates: null,
|
|
1015
1032
|
labelsAsLlmAgentName: null,
|
|
1016
1033
|
});
|
|
@@ -1059,6 +1076,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1059
1076
|
maximumPreparingIssuesCount: null,
|
|
1060
1077
|
utilizationPercentageThreshold: 90,
|
|
1061
1078
|
allowedIssueAuthors: ['testuser'],
|
|
1079
|
+
manager: 'manager-user',
|
|
1062
1080
|
codexHomeCandidates: null,
|
|
1063
1081
|
labelsAsLlmAgentName: null,
|
|
1064
1082
|
});
|
|
@@ -1107,6 +1125,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1107
1125
|
maximumPreparingIssuesCount: null,
|
|
1108
1126
|
utilizationPercentageThreshold: 90,
|
|
1109
1127
|
allowedIssueAuthors: ['testuser'],
|
|
1128
|
+
manager: 'manager-user',
|
|
1110
1129
|
codexHomeCandidates: null,
|
|
1111
1130
|
labelsAsLlmAgentName: null,
|
|
1112
1131
|
});
|
|
@@ -1157,6 +1176,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1157
1176
|
maximumPreparingIssuesCount: null,
|
|
1158
1177
|
utilizationPercentageThreshold: 90,
|
|
1159
1178
|
allowedIssueAuthors: ['testuser'],
|
|
1179
|
+
manager: 'manager-user',
|
|
1160
1180
|
codexHomeCandidates: null,
|
|
1161
1181
|
labelsAsLlmAgentName: null,
|
|
1162
1182
|
});
|
|
@@ -1192,6 +1212,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1192
1212
|
maximumPreparingIssuesCount: 3,
|
|
1193
1213
|
utilizationPercentageThreshold: 90,
|
|
1194
1214
|
allowedIssueAuthors: ['testuser'],
|
|
1215
|
+
manager: 'manager-user',
|
|
1195
1216
|
codexHomeCandidates: null,
|
|
1196
1217
|
labelsAsLlmAgentName: null,
|
|
1197
1218
|
});
|
|
@@ -1226,6 +1247,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1226
1247
|
maximumPreparingIssuesCount: null,
|
|
1227
1248
|
utilizationPercentageThreshold: 90,
|
|
1228
1249
|
allowedIssueAuthors: ['testuser'],
|
|
1250
|
+
manager: 'manager-user',
|
|
1229
1251
|
codexHomeCandidates: null,
|
|
1230
1252
|
labelsAsLlmAgentName: null,
|
|
1231
1253
|
});
|
|
@@ -1287,6 +1309,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1287
1309
|
maximumPreparingIssuesCount: 12,
|
|
1288
1310
|
utilizationPercentageThreshold: 90,
|
|
1289
1311
|
allowedIssueAuthors: ['testuser'],
|
|
1312
|
+
manager: 'manager-user',
|
|
1290
1313
|
codexHomeCandidates: null,
|
|
1291
1314
|
labelsAsLlmAgentName: null,
|
|
1292
1315
|
});
|
|
@@ -1357,6 +1380,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1357
1380
|
maximumPreparingIssuesCount: 20,
|
|
1358
1381
|
utilizationPercentageThreshold: 90,
|
|
1359
1382
|
allowedIssueAuthors: ['testuser'],
|
|
1383
|
+
manager: 'manager-user',
|
|
1360
1384
|
codexHomeCandidates: null,
|
|
1361
1385
|
labelsAsLlmAgentName: null,
|
|
1362
1386
|
});
|
|
@@ -1421,6 +1445,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1421
1445
|
maximumPreparingIssuesCount: null,
|
|
1422
1446
|
utilizationPercentageThreshold: 90,
|
|
1423
1447
|
allowedIssueAuthors: ['testuser'],
|
|
1448
|
+
manager: 'manager-user',
|
|
1424
1449
|
codexHomeCandidates: null,
|
|
1425
1450
|
labelsAsLlmAgentName: null,
|
|
1426
1451
|
});
|
|
@@ -1469,6 +1494,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1469
1494
|
maximumPreparingIssuesCount: null,
|
|
1470
1495
|
utilizationPercentageThreshold: 90,
|
|
1471
1496
|
allowedIssueAuthors: ['testuser'],
|
|
1497
|
+
manager: 'manager-user',
|
|
1472
1498
|
codexHomeCandidates: null,
|
|
1473
1499
|
labelsAsLlmAgentName: null,
|
|
1474
1500
|
});
|
|
@@ -1524,6 +1550,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1524
1550
|
maximumPreparingIssuesCount: null,
|
|
1525
1551
|
utilizationPercentageThreshold: 90,
|
|
1526
1552
|
allowedIssueAuthors: ['testuser'],
|
|
1553
|
+
manager: 'manager-user',
|
|
1527
1554
|
codexHomeCandidates: null,
|
|
1528
1555
|
labelsAsLlmAgentName: null,
|
|
1529
1556
|
});
|
|
@@ -1582,6 +1609,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1582
1609
|
maximumPreparingIssuesCount: null,
|
|
1583
1610
|
utilizationPercentageThreshold: 90,
|
|
1584
1611
|
allowedIssueAuthors: ['testuser'],
|
|
1612
|
+
manager: 'manager-user',
|
|
1585
1613
|
codexHomeCandidates: null,
|
|
1586
1614
|
labelsAsLlmAgentName: null,
|
|
1587
1615
|
});
|
|
@@ -1630,6 +1658,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1630
1658
|
maximumPreparingIssuesCount: null,
|
|
1631
1659
|
utilizationPercentageThreshold: 90,
|
|
1632
1660
|
allowedIssueAuthors: ['testuser'],
|
|
1661
|
+
manager: 'manager-user',
|
|
1633
1662
|
codexHomeCandidates: null,
|
|
1634
1663
|
labelsAsLlmAgentName: null,
|
|
1635
1664
|
});
|
|
@@ -1678,6 +1707,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1678
1707
|
maximumPreparingIssuesCount: null,
|
|
1679
1708
|
utilizationPercentageThreshold: 90,
|
|
1680
1709
|
allowedIssueAuthors: ['testuser'],
|
|
1710
|
+
manager: 'manager-user',
|
|
1681
1711
|
codexHomeCandidates: null,
|
|
1682
1712
|
labelsAsLlmAgentName: null,
|
|
1683
1713
|
});
|
|
@@ -1726,6 +1756,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1726
1756
|
maximumPreparingIssuesCount: null,
|
|
1727
1757
|
utilizationPercentageThreshold: 90,
|
|
1728
1758
|
allowedIssueAuthors: ['testuser'],
|
|
1759
|
+
manager: 'manager-user',
|
|
1729
1760
|
codexHomeCandidates: null,
|
|
1730
1761
|
labelsAsLlmAgentName: null,
|
|
1731
1762
|
});
|
|
@@ -1780,6 +1811,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1780
1811
|
maximumPreparingIssuesCount: null,
|
|
1781
1812
|
utilizationPercentageThreshold: 90,
|
|
1782
1813
|
allowedIssueAuthors: ['user1', 'user2'],
|
|
1814
|
+
manager: 'manager-user',
|
|
1783
1815
|
codexHomeCandidates: null,
|
|
1784
1816
|
labelsAsLlmAgentName: null,
|
|
1785
1817
|
});
|
|
@@ -1828,6 +1860,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1828
1860
|
maximumPreparingIssuesCount: null,
|
|
1829
1861
|
utilizationPercentageThreshold: 90,
|
|
1830
1862
|
allowedIssueAuthors: null,
|
|
1863
|
+
manager: 'manager-user',
|
|
1831
1864
|
codexHomeCandidates: null,
|
|
1832
1865
|
labelsAsLlmAgentName: null,
|
|
1833
1866
|
});
|
|
@@ -1865,6 +1898,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1865
1898
|
maximumPreparingIssuesCount: null,
|
|
1866
1899
|
utilizationPercentageThreshold: 90,
|
|
1867
1900
|
allowedIssueAuthors: [],
|
|
1901
|
+
manager: 'manager-user',
|
|
1868
1902
|
codexHomeCandidates: null,
|
|
1869
1903
|
labelsAsLlmAgentName: null,
|
|
1870
1904
|
});
|
|
@@ -1902,6 +1936,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1902
1936
|
maximumPreparingIssuesCount: null,
|
|
1903
1937
|
utilizationPercentageThreshold: 90,
|
|
1904
1938
|
allowedIssueAuthors: ['dependabot[bot]'],
|
|
1939
|
+
manager: 'manager-user',
|
|
1905
1940
|
codexHomeCandidates: null,
|
|
1906
1941
|
labelsAsLlmAgentName: null,
|
|
1907
1942
|
});
|
|
@@ -1939,6 +1974,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1939
1974
|
maximumPreparingIssuesCount: null,
|
|
1940
1975
|
utilizationPercentageThreshold: 90,
|
|
1941
1976
|
allowedIssueAuthors: ['owner'],
|
|
1977
|
+
manager: 'manager-user',
|
|
1942
1978
|
codexHomeCandidates: null,
|
|
1943
1979
|
labelsAsLlmAgentName: null,
|
|
1944
1980
|
});
|
|
@@ -1985,6 +2021,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
1985
2021
|
maximumPreparingIssuesCount: null,
|
|
1986
2022
|
utilizationPercentageThreshold: 90,
|
|
1987
2023
|
allowedIssueAuthors: ['user1', 'user2'],
|
|
2024
|
+
manager: 'manager-user',
|
|
1988
2025
|
codexHomeCandidates: null,
|
|
1989
2026
|
labelsAsLlmAgentName: null,
|
|
1990
2027
|
});
|
|
@@ -2025,6 +2062,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2025
2062
|
maximumPreparingIssuesCount: null,
|
|
2026
2063
|
utilizationPercentageThreshold: 90,
|
|
2027
2064
|
allowedIssueAuthors: ['user1'],
|
|
2065
|
+
manager: 'manager-user',
|
|
2028
2066
|
codexHomeCandidates: null,
|
|
2029
2067
|
labelsAsLlmAgentName: null,
|
|
2030
2068
|
});
|
|
@@ -2033,6 +2071,215 @@ describe('StartPreparationUseCase', () => {
|
|
|
2033
2071
|
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(0);
|
|
2034
2072
|
});
|
|
2035
2073
|
|
|
2074
|
+
it('should pick up an awaiting workspace issue assigned to the manager', async () => {
|
|
2075
|
+
const awaitingIssues: Issue[] = [
|
|
2076
|
+
createMockIssue({
|
|
2077
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2078
|
+
title: 'Issue assigned to manager',
|
|
2079
|
+
labels: ['category:impl'],
|
|
2080
|
+
status: 'Awaiting Workspace',
|
|
2081
|
+
author: 'testuser',
|
|
2082
|
+
assignees: ['manager-user'],
|
|
2083
|
+
}),
|
|
2084
|
+
];
|
|
2085
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
2086
|
+
mockIssueRepository.getStoryObjectMap.mockResolvedValue(
|
|
2087
|
+
createMockStoryObjectMap(awaitingIssues),
|
|
2088
|
+
);
|
|
2089
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
2090
|
+
stdout: '',
|
|
2091
|
+
stderr: '',
|
|
2092
|
+
exitCode: 0,
|
|
2093
|
+
});
|
|
2094
|
+
await useCase.run({
|
|
2095
|
+
projectUrl: 'https://github.com/user/repo',
|
|
2096
|
+
defaultAgentName: 'agent1',
|
|
2097
|
+
defaultLlmModelName: 'claude-opus',
|
|
2098
|
+
fallbackLlmModelName: null,
|
|
2099
|
+
defaultLlmAgentName: null,
|
|
2100
|
+
configFilePath: '/path/to/config.yml',
|
|
2101
|
+
maximumPreparingIssuesCount: null,
|
|
2102
|
+
utilizationPercentageThreshold: 90,
|
|
2103
|
+
allowedIssueAuthors: ['testuser'],
|
|
2104
|
+
manager: 'manager-user',
|
|
2105
|
+
codexHomeCandidates: null,
|
|
2106
|
+
labelsAsLlmAgentName: null,
|
|
2107
|
+
});
|
|
2108
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(1);
|
|
2109
|
+
expect(mockIssueRepository.updateStatus.mock.calls[0][1]).toMatchObject({
|
|
2110
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2111
|
+
status: 'Preparation',
|
|
2112
|
+
});
|
|
2113
|
+
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(1);
|
|
2114
|
+
});
|
|
2115
|
+
|
|
2116
|
+
it('should skip an awaiting workspace issue with no assignees', async () => {
|
|
2117
|
+
const awaitingIssues: Issue[] = [
|
|
2118
|
+
createMockIssue({
|
|
2119
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2120
|
+
title: 'Issue with no assignees',
|
|
2121
|
+
labels: ['category:impl'],
|
|
2122
|
+
status: 'Awaiting Workspace',
|
|
2123
|
+
author: 'testuser',
|
|
2124
|
+
assignees: [],
|
|
2125
|
+
}),
|
|
2126
|
+
];
|
|
2127
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
2128
|
+
mockIssueRepository.getStoryObjectMap.mockResolvedValue(
|
|
2129
|
+
createMockStoryObjectMap(awaitingIssues),
|
|
2130
|
+
);
|
|
2131
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
2132
|
+
stdout: '',
|
|
2133
|
+
stderr: '',
|
|
2134
|
+
exitCode: 0,
|
|
2135
|
+
});
|
|
2136
|
+
await useCase.run({
|
|
2137
|
+
projectUrl: 'https://github.com/user/repo',
|
|
2138
|
+
defaultAgentName: 'agent1',
|
|
2139
|
+
defaultLlmModelName: 'claude-opus',
|
|
2140
|
+
fallbackLlmModelName: null,
|
|
2141
|
+
defaultLlmAgentName: null,
|
|
2142
|
+
configFilePath: '/path/to/config.yml',
|
|
2143
|
+
maximumPreparingIssuesCount: null,
|
|
2144
|
+
utilizationPercentageThreshold: 90,
|
|
2145
|
+
allowedIssueAuthors: ['testuser'],
|
|
2146
|
+
manager: 'manager-user',
|
|
2147
|
+
codexHomeCandidates: null,
|
|
2148
|
+
labelsAsLlmAgentName: null,
|
|
2149
|
+
});
|
|
2150
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(0);
|
|
2151
|
+
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(0);
|
|
2152
|
+
});
|
|
2153
|
+
|
|
2154
|
+
it('should skip an awaiting workspace issue assigned only to a non-manager', async () => {
|
|
2155
|
+
const awaitingIssues: Issue[] = [
|
|
2156
|
+
createMockIssue({
|
|
2157
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2158
|
+
title: 'Issue assigned to non-manager only',
|
|
2159
|
+
labels: ['category:impl'],
|
|
2160
|
+
status: 'Awaiting Workspace',
|
|
2161
|
+
author: 'testuser',
|
|
2162
|
+
assignees: ['someone-else'],
|
|
2163
|
+
}),
|
|
2164
|
+
];
|
|
2165
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
2166
|
+
mockIssueRepository.getStoryObjectMap.mockResolvedValue(
|
|
2167
|
+
createMockStoryObjectMap(awaitingIssues),
|
|
2168
|
+
);
|
|
2169
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
2170
|
+
stdout: '',
|
|
2171
|
+
stderr: '',
|
|
2172
|
+
exitCode: 0,
|
|
2173
|
+
});
|
|
2174
|
+
await useCase.run({
|
|
2175
|
+
projectUrl: 'https://github.com/user/repo',
|
|
2176
|
+
defaultAgentName: 'agent1',
|
|
2177
|
+
defaultLlmModelName: 'claude-opus',
|
|
2178
|
+
fallbackLlmModelName: null,
|
|
2179
|
+
defaultLlmAgentName: null,
|
|
2180
|
+
configFilePath: '/path/to/config.yml',
|
|
2181
|
+
maximumPreparingIssuesCount: null,
|
|
2182
|
+
utilizationPercentageThreshold: 90,
|
|
2183
|
+
allowedIssueAuthors: ['testuser'],
|
|
2184
|
+
manager: 'manager-user',
|
|
2185
|
+
codexHomeCandidates: null,
|
|
2186
|
+
labelsAsLlmAgentName: null,
|
|
2187
|
+
});
|
|
2188
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(0);
|
|
2189
|
+
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(0);
|
|
2190
|
+
});
|
|
2191
|
+
|
|
2192
|
+
it('should pick up an awaiting workspace issue whose assignees include the manager alongside other assignees', async () => {
|
|
2193
|
+
const awaitingIssues: Issue[] = [
|
|
2194
|
+
createMockIssue({
|
|
2195
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2196
|
+
title: 'Renovate PR auto-assigned to manager',
|
|
2197
|
+
labels: ['category:impl'],
|
|
2198
|
+
status: 'Awaiting Workspace',
|
|
2199
|
+
author: 'testuser',
|
|
2200
|
+
assignees: ['renovate[bot]', 'manager-user'],
|
|
2201
|
+
}),
|
|
2202
|
+
];
|
|
2203
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
2204
|
+
mockIssueRepository.getStoryObjectMap.mockResolvedValue(
|
|
2205
|
+
createMockStoryObjectMap(awaitingIssues),
|
|
2206
|
+
);
|
|
2207
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
2208
|
+
stdout: '',
|
|
2209
|
+
stderr: '',
|
|
2210
|
+
exitCode: 0,
|
|
2211
|
+
});
|
|
2212
|
+
await useCase.run({
|
|
2213
|
+
projectUrl: 'https://github.com/user/repo',
|
|
2214
|
+
defaultAgentName: 'agent1',
|
|
2215
|
+
defaultLlmModelName: 'claude-opus',
|
|
2216
|
+
fallbackLlmModelName: null,
|
|
2217
|
+
defaultLlmAgentName: null,
|
|
2218
|
+
configFilePath: '/path/to/config.yml',
|
|
2219
|
+
maximumPreparingIssuesCount: null,
|
|
2220
|
+
utilizationPercentageThreshold: 90,
|
|
2221
|
+
allowedIssueAuthors: ['testuser'],
|
|
2222
|
+
manager: 'manager-user',
|
|
2223
|
+
codexHomeCandidates: null,
|
|
2224
|
+
labelsAsLlmAgentName: null,
|
|
2225
|
+
});
|
|
2226
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(1);
|
|
2227
|
+
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(1);
|
|
2228
|
+
});
|
|
2229
|
+
|
|
2230
|
+
it('should pick up only the manager-assigned issue among mixed assignee issues', async () => {
|
|
2231
|
+
const awaitingIssues: Issue[] = [
|
|
2232
|
+
createMockIssue({
|
|
2233
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2234
|
+
title: 'Assigned to manager',
|
|
2235
|
+
labels: ['category:impl'],
|
|
2236
|
+
status: 'Awaiting Workspace',
|
|
2237
|
+
author: 'testuser',
|
|
2238
|
+
assignees: ['manager-user'],
|
|
2239
|
+
number: 1,
|
|
2240
|
+
itemId: 'item-1',
|
|
2241
|
+
}),
|
|
2242
|
+
createMockIssue({
|
|
2243
|
+
url: 'https://github.com/user/repo/issues/2',
|
|
2244
|
+
title: 'Assigned to client only',
|
|
2245
|
+
labels: ['category:impl'],
|
|
2246
|
+
status: 'Awaiting Workspace',
|
|
2247
|
+
author: 'testuser',
|
|
2248
|
+
assignees: ['client-user'],
|
|
2249
|
+
number: 2,
|
|
2250
|
+
itemId: 'item-2',
|
|
2251
|
+
}),
|
|
2252
|
+
];
|
|
2253
|
+
mockProjectRepository.getByUrl.mockResolvedValue(mockProject);
|
|
2254
|
+
mockIssueRepository.getStoryObjectMap.mockResolvedValue(
|
|
2255
|
+
createMockStoryObjectMap(awaitingIssues),
|
|
2256
|
+
);
|
|
2257
|
+
mockLocalCommandRunner.runCommand.mockResolvedValue({
|
|
2258
|
+
stdout: '',
|
|
2259
|
+
stderr: '',
|
|
2260
|
+
exitCode: 0,
|
|
2261
|
+
});
|
|
2262
|
+
await useCase.run({
|
|
2263
|
+
projectUrl: 'https://github.com/user/repo',
|
|
2264
|
+
defaultAgentName: 'agent1',
|
|
2265
|
+
defaultLlmModelName: 'claude-opus',
|
|
2266
|
+
fallbackLlmModelName: null,
|
|
2267
|
+
defaultLlmAgentName: null,
|
|
2268
|
+
configFilePath: '/path/to/config.yml',
|
|
2269
|
+
maximumPreparingIssuesCount: null,
|
|
2270
|
+
utilizationPercentageThreshold: 90,
|
|
2271
|
+
allowedIssueAuthors: ['testuser'],
|
|
2272
|
+
manager: 'manager-user',
|
|
2273
|
+
codexHomeCandidates: null,
|
|
2274
|
+
labelsAsLlmAgentName: null,
|
|
2275
|
+
});
|
|
2276
|
+
expect(mockIssueRepository.updateStatus.mock.calls).toHaveLength(1);
|
|
2277
|
+
expect(mockIssueRepository.updateStatus.mock.calls[0][1]).toMatchObject({
|
|
2278
|
+
url: 'https://github.com/user/repo/issues/1',
|
|
2279
|
+
});
|
|
2280
|
+
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(1);
|
|
2281
|
+
});
|
|
2282
|
+
|
|
2036
2283
|
it('should not pass --codexHome when codexHomeCandidates is null', async () => {
|
|
2037
2284
|
const awaitingIssues: Issue[] = [
|
|
2038
2285
|
createMockIssue({
|
|
@@ -2062,6 +2309,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2062
2309
|
maximumPreparingIssuesCount: null,
|
|
2063
2310
|
utilizationPercentageThreshold: 90,
|
|
2064
2311
|
allowedIssueAuthors: ['testuser'],
|
|
2312
|
+
manager: 'manager-user',
|
|
2065
2313
|
codexHomeCandidates: null,
|
|
2066
2314
|
labelsAsLlmAgentName: null,
|
|
2067
2315
|
});
|
|
@@ -2110,6 +2358,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2110
2358
|
maximumPreparingIssuesCount: null,
|
|
2111
2359
|
utilizationPercentageThreshold: 90,
|
|
2112
2360
|
allowedIssueAuthors: ['testuser'],
|
|
2361
|
+
manager: 'manager-user',
|
|
2113
2362
|
codexHomeCandidates: [],
|
|
2114
2363
|
labelsAsLlmAgentName: null,
|
|
2115
2364
|
});
|
|
@@ -2158,6 +2407,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2158
2407
|
maximumPreparingIssuesCount: null,
|
|
2159
2408
|
utilizationPercentageThreshold: 90,
|
|
2160
2409
|
allowedIssueAuthors: ['testuser'],
|
|
2410
|
+
manager: 'manager-user',
|
|
2161
2411
|
codexHomeCandidates: ['.codex-dev1'],
|
|
2162
2412
|
labelsAsLlmAgentName: null,
|
|
2163
2413
|
});
|
|
@@ -2226,6 +2476,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2226
2476
|
maximumPreparingIssuesCount: null,
|
|
2227
2477
|
utilizationPercentageThreshold: 90,
|
|
2228
2478
|
allowedIssueAuthors: ['testuser'],
|
|
2479
|
+
manager: 'manager-user',
|
|
2229
2480
|
codexHomeCandidates: ['.codex-dev1', '.codex-dev2'],
|
|
2230
2481
|
labelsAsLlmAgentName: null,
|
|
2231
2482
|
});
|
|
@@ -2291,6 +2542,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2291
2542
|
maximumPreparingIssuesCount: null,
|
|
2292
2543
|
utilizationPercentageThreshold: 90,
|
|
2293
2544
|
allowedIssueAuthors: ['testuser'],
|
|
2545
|
+
manager: 'manager-user',
|
|
2294
2546
|
codexHomeCandidates: null,
|
|
2295
2547
|
labelsAsLlmAgentName: null,
|
|
2296
2548
|
});
|
|
@@ -2350,6 +2602,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2350
2602
|
maximumPreparingIssuesCount: null,
|
|
2351
2603
|
utilizationPercentageThreshold: 90,
|
|
2352
2604
|
allowedIssueAuthors: ['testuser'],
|
|
2605
|
+
manager: 'manager-user',
|
|
2353
2606
|
codexHomeCandidates: null,
|
|
2354
2607
|
labelsAsLlmAgentName: null,
|
|
2355
2608
|
});
|
|
@@ -2378,6 +2631,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2378
2631
|
maximumPreparingIssuesCount: null,
|
|
2379
2632
|
utilizationPercentageThreshold: 90,
|
|
2380
2633
|
allowedIssueAuthors: ['testuser'],
|
|
2634
|
+
manager: 'manager-user',
|
|
2381
2635
|
codexHomeCandidates: null,
|
|
2382
2636
|
labelsAsLlmAgentName: null,
|
|
2383
2637
|
});
|
|
@@ -2424,6 +2678,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2424
2678
|
maximumPreparingIssuesCount: null,
|
|
2425
2679
|
utilizationPercentageThreshold: 90,
|
|
2426
2680
|
allowedIssueAuthors: ['testuser'],
|
|
2681
|
+
manager: 'manager-user',
|
|
2427
2682
|
codexHomeCandidates: null,
|
|
2428
2683
|
labelsAsLlmAgentName: null,
|
|
2429
2684
|
});
|
|
@@ -2476,6 +2731,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2476
2731
|
maximumPreparingIssuesCount: null,
|
|
2477
2732
|
utilizationPercentageThreshold: 90,
|
|
2478
2733
|
allowedIssueAuthors: ['testuser'],
|
|
2734
|
+
manager: 'manager-user',
|
|
2479
2735
|
codexHomeCandidates: null,
|
|
2480
2736
|
labelsAsLlmAgentName: null,
|
|
2481
2737
|
});
|
|
@@ -2566,6 +2822,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2566
2822
|
maximumPreparingIssuesCount: null,
|
|
2567
2823
|
utilizationPercentageThreshold: 90,
|
|
2568
2824
|
allowedIssueAuthors: ['testuser'],
|
|
2825
|
+
manager: 'manager-user',
|
|
2569
2826
|
codexHomeCandidates: null,
|
|
2570
2827
|
labelsAsLlmAgentName: null,
|
|
2571
2828
|
});
|
|
@@ -2623,6 +2880,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2623
2880
|
maximumPreparingIssuesCount: null,
|
|
2624
2881
|
utilizationPercentageThreshold: 90,
|
|
2625
2882
|
allowedIssueAuthors: ['testuser'],
|
|
2883
|
+
manager: 'manager-user',
|
|
2626
2884
|
codexHomeCandidates: null,
|
|
2627
2885
|
labelsAsLlmAgentName: null,
|
|
2628
2886
|
});
|
|
@@ -2698,6 +2956,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2698
2956
|
maximumPreparingIssuesCount: null,
|
|
2699
2957
|
utilizationPercentageThreshold: 90,
|
|
2700
2958
|
allowedIssueAuthors: ['testuser'],
|
|
2959
|
+
manager: 'manager-user',
|
|
2701
2960
|
codexHomeCandidates: null,
|
|
2702
2961
|
labelsAsLlmAgentName: null,
|
|
2703
2962
|
});
|
|
@@ -2776,6 +3035,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2776
3035
|
maximumPreparingIssuesCount: null,
|
|
2777
3036
|
utilizationPercentageThreshold: 90,
|
|
2778
3037
|
allowedIssueAuthors: ['testuser'],
|
|
3038
|
+
manager: 'manager-user',
|
|
2779
3039
|
codexHomeCandidates: null,
|
|
2780
3040
|
labelsAsLlmAgentName: null,
|
|
2781
3041
|
});
|
|
@@ -2853,6 +3113,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2853
3113
|
maximumPreparingIssuesCount: null,
|
|
2854
3114
|
utilizationPercentageThreshold: 90,
|
|
2855
3115
|
allowedIssueAuthors: ['testuser'],
|
|
3116
|
+
manager: 'manager-user',
|
|
2856
3117
|
codexHomeCandidates: null,
|
|
2857
3118
|
labelsAsLlmAgentName: null,
|
|
2858
3119
|
});
|
|
@@ -2927,6 +3188,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
2927
3188
|
maximumPreparingIssuesCount: null,
|
|
2928
3189
|
utilizationPercentageThreshold: 90,
|
|
2929
3190
|
allowedIssueAuthors: ['testuser'],
|
|
3191
|
+
manager: 'manager-user',
|
|
2930
3192
|
codexHomeCandidates: null,
|
|
2931
3193
|
labelsAsLlmAgentName: null,
|
|
2932
3194
|
});
|
|
@@ -3014,6 +3276,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3014
3276
|
maximumPreparingIssuesCount: null,
|
|
3015
3277
|
utilizationPercentageThreshold: 90,
|
|
3016
3278
|
allowedIssueAuthors: ['testuser'],
|
|
3279
|
+
manager: 'manager-user',
|
|
3017
3280
|
codexHomeCandidates: null,
|
|
3018
3281
|
labelsAsLlmAgentName: null,
|
|
3019
3282
|
});
|
|
@@ -3080,6 +3343,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3080
3343
|
maximumPreparingIssuesCount: null,
|
|
3081
3344
|
utilizationPercentageThreshold: 90,
|
|
3082
3345
|
allowedIssueAuthors: ['testuser'],
|
|
3346
|
+
manager: 'manager-user',
|
|
3083
3347
|
codexHomeCandidates: null,
|
|
3084
3348
|
labelsAsLlmAgentName: null,
|
|
3085
3349
|
});
|
|
@@ -3147,6 +3411,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3147
3411
|
maximumPreparingIssuesCount: null,
|
|
3148
3412
|
utilizationPercentageThreshold: 90,
|
|
3149
3413
|
allowedIssueAuthors: ['testuser'],
|
|
3414
|
+
manager: 'manager-user',
|
|
3150
3415
|
codexHomeCandidates: null,
|
|
3151
3416
|
labelsAsLlmAgentName: null,
|
|
3152
3417
|
});
|
|
@@ -3216,6 +3481,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3216
3481
|
maximumPreparingIssuesCount: null,
|
|
3217
3482
|
utilizationPercentageThreshold: 90,
|
|
3218
3483
|
allowedIssueAuthors: ['testuser'],
|
|
3484
|
+
manager: 'manager-user',
|
|
3219
3485
|
codexHomeCandidates: null,
|
|
3220
3486
|
labelsAsLlmAgentName: null,
|
|
3221
3487
|
});
|
|
@@ -3288,6 +3554,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3288
3554
|
maximumPreparingIssuesCount: null,
|
|
3289
3555
|
utilizationPercentageThreshold: 90,
|
|
3290
3556
|
allowedIssueAuthors: ['testuser'],
|
|
3557
|
+
manager: 'manager-user',
|
|
3291
3558
|
codexHomeCandidates: null,
|
|
3292
3559
|
labelsAsLlmAgentName: null,
|
|
3293
3560
|
});
|
|
@@ -3402,6 +3669,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3402
3669
|
maximumPreparingIssuesCount: null,
|
|
3403
3670
|
utilizationPercentageThreshold: 90,
|
|
3404
3671
|
allowedIssueAuthors: ['testuser'],
|
|
3672
|
+
manager: 'manager-user',
|
|
3405
3673
|
codexHomeCandidates: null,
|
|
3406
3674
|
labelsAsLlmAgentName: null,
|
|
3407
3675
|
});
|
|
@@ -3487,6 +3755,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3487
3755
|
maximumPreparingIssuesCount: null,
|
|
3488
3756
|
utilizationPercentageThreshold: 90,
|
|
3489
3757
|
allowedIssueAuthors: ['testuser'],
|
|
3758
|
+
manager: 'manager-user',
|
|
3490
3759
|
codexHomeCandidates: null,
|
|
3491
3760
|
labelsAsLlmAgentName: null,
|
|
3492
3761
|
});
|
|
@@ -3547,6 +3816,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3547
3816
|
maximumPreparingIssuesCount: null,
|
|
3548
3817
|
utilizationPercentageThreshold: 90,
|
|
3549
3818
|
allowedIssueAuthors: ['testuser'],
|
|
3819
|
+
manager: 'manager-user',
|
|
3550
3820
|
codexHomeCandidates: null,
|
|
3551
3821
|
labelsAsLlmAgentName: null,
|
|
3552
3822
|
});
|
|
@@ -3613,6 +3883,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3613
3883
|
maximumPreparingIssuesCount: null,
|
|
3614
3884
|
utilizationPercentageThreshold: 90,
|
|
3615
3885
|
allowedIssueAuthors: ['testuser'],
|
|
3886
|
+
manager: 'manager-user',
|
|
3616
3887
|
codexHomeCandidates: null,
|
|
3617
3888
|
labelsAsLlmAgentName: null,
|
|
3618
3889
|
});
|
|
@@ -3679,6 +3950,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3679
3950
|
maximumPreparingIssuesCount: null,
|
|
3680
3951
|
utilizationPercentageThreshold: 90,
|
|
3681
3952
|
allowedIssueAuthors: ['testuser'],
|
|
3953
|
+
manager: 'manager-user',
|
|
3682
3954
|
codexHomeCandidates: null,
|
|
3683
3955
|
labelsAsLlmAgentName: null,
|
|
3684
3956
|
});
|
|
@@ -3745,6 +4017,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3745
4017
|
maximumPreparingIssuesCount: null,
|
|
3746
4018
|
utilizationPercentageThreshold: 90,
|
|
3747
4019
|
allowedIssueAuthors: ['testuser'],
|
|
4020
|
+
manager: 'manager-user',
|
|
3748
4021
|
codexHomeCandidates: null,
|
|
3749
4022
|
labelsAsLlmAgentName: null,
|
|
3750
4023
|
});
|
|
@@ -3814,6 +4087,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3814
4087
|
maximumPreparingIssuesCount: null,
|
|
3815
4088
|
utilizationPercentageThreshold: 90,
|
|
3816
4089
|
allowedIssueAuthors: ['testuser'],
|
|
4090
|
+
manager: 'manager-user',
|
|
3817
4091
|
codexHomeCandidates: null,
|
|
3818
4092
|
labelsAsLlmAgentName: null,
|
|
3819
4093
|
});
|
|
@@ -3861,6 +4135,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3861
4135
|
maximumPreparingIssuesCount: null,
|
|
3862
4136
|
utilizationPercentageThreshold: 90,
|
|
3863
4137
|
allowedIssueAuthors: ['testuser'],
|
|
4138
|
+
manager: 'manager-user',
|
|
3864
4139
|
codexHomeCandidates: null,
|
|
3865
4140
|
labelsAsLlmAgentName: null,
|
|
3866
4141
|
});
|
|
@@ -3930,6 +4205,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3930
4205
|
maximumPreparingIssuesCount: null,
|
|
3931
4206
|
utilizationPercentageThreshold: 90,
|
|
3932
4207
|
allowedIssueAuthors: ['testuser'],
|
|
4208
|
+
manager: 'manager-user',
|
|
3933
4209
|
codexHomeCandidates: null,
|
|
3934
4210
|
labelsAsLlmAgentName: null,
|
|
3935
4211
|
});
|
|
@@ -3999,6 +4275,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
3999
4275
|
maximumPreparingIssuesCount: null,
|
|
4000
4276
|
utilizationPercentageThreshold: 90,
|
|
4001
4277
|
allowedIssueAuthors: ['testuser'],
|
|
4278
|
+
manager: 'manager-user',
|
|
4002
4279
|
codexHomeCandidates: null,
|
|
4003
4280
|
labelsAsLlmAgentName: null,
|
|
4004
4281
|
});
|
|
@@ -4068,6 +4345,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4068
4345
|
maximumPreparingIssuesCount: null,
|
|
4069
4346
|
utilizationPercentageThreshold: 90,
|
|
4070
4347
|
allowedIssueAuthors: ['testuser'],
|
|
4348
|
+
manager: 'manager-user',
|
|
4071
4349
|
codexHomeCandidates: null,
|
|
4072
4350
|
labelsAsLlmAgentName: null,
|
|
4073
4351
|
});
|
|
@@ -4145,6 +4423,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4145
4423
|
maximumPreparingIssuesCount: null,
|
|
4146
4424
|
utilizationPercentageThreshold: 90,
|
|
4147
4425
|
allowedIssueAuthors: ['testuser'],
|
|
4426
|
+
manager: 'manager-user',
|
|
4148
4427
|
codexHomeCandidates: null,
|
|
4149
4428
|
labelsAsLlmAgentName: null,
|
|
4150
4429
|
});
|
|
@@ -4222,6 +4501,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4222
4501
|
maximumPreparingIssuesCount: null,
|
|
4223
4502
|
utilizationPercentageThreshold: 90,
|
|
4224
4503
|
allowedIssueAuthors: ['testuser'],
|
|
4504
|
+
manager: 'manager-user',
|
|
4225
4505
|
codexHomeCandidates: null,
|
|
4226
4506
|
labelsAsLlmAgentName: null,
|
|
4227
4507
|
});
|
|
@@ -4304,6 +4584,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4304
4584
|
maximumPreparingIssuesCount: null,
|
|
4305
4585
|
utilizationPercentageThreshold: 90,
|
|
4306
4586
|
allowedIssueAuthors: ['testuser'],
|
|
4587
|
+
manager: 'manager-user',
|
|
4307
4588
|
codexHomeCandidates: null,
|
|
4308
4589
|
labelsAsLlmAgentName: null,
|
|
4309
4590
|
});
|
|
@@ -4415,6 +4696,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4415
4696
|
maximumPreparingIssuesCount: null,
|
|
4416
4697
|
utilizationPercentageThreshold: 90,
|
|
4417
4698
|
allowedIssueAuthors: ['testuser'],
|
|
4699
|
+
manager: 'manager-user',
|
|
4418
4700
|
codexHomeCandidates: null,
|
|
4419
4701
|
labelsAsLlmAgentName: null,
|
|
4420
4702
|
});
|
|
@@ -4490,6 +4772,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4490
4772
|
maximumPreparingIssuesCount: null,
|
|
4491
4773
|
utilizationPercentageThreshold: 90,
|
|
4492
4774
|
allowedIssueAuthors: ['testuser'],
|
|
4775
|
+
manager: 'manager-user',
|
|
4493
4776
|
codexHomeCandidates: null,
|
|
4494
4777
|
labelsAsLlmAgentName: null,
|
|
4495
4778
|
});
|
|
@@ -4562,6 +4845,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4562
4845
|
maximumPreparingIssuesCount: null,
|
|
4563
4846
|
utilizationPercentageThreshold: 90,
|
|
4564
4847
|
allowedIssueAuthors: ['testuser'],
|
|
4848
|
+
manager: 'manager-user',
|
|
4565
4849
|
codexHomeCandidates: null,
|
|
4566
4850
|
labelsAsLlmAgentName: null,
|
|
4567
4851
|
});
|
|
@@ -4609,6 +4893,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4609
4893
|
maximumPreparingIssuesCount: null,
|
|
4610
4894
|
utilizationPercentageThreshold: 90,
|
|
4611
4895
|
allowedIssueAuthors: ['testuser'],
|
|
4896
|
+
manager: 'manager-user',
|
|
4612
4897
|
codexHomeCandidates: null,
|
|
4613
4898
|
labelsAsLlmAgentName: params.labelsAsLlmAgentName,
|
|
4614
4899
|
});
|
|
@@ -4755,6 +5040,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4755
5040
|
maximumPreparingIssuesCount: null,
|
|
4756
5041
|
utilizationPercentageThreshold: 90,
|
|
4757
5042
|
allowedIssueAuthors: ['testuser'],
|
|
5043
|
+
manager: 'manager-user',
|
|
4758
5044
|
codexHomeCandidates: null,
|
|
4759
5045
|
labelsAsLlmAgentName: null,
|
|
4760
5046
|
});
|
|
@@ -4821,6 +5107,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4821
5107
|
maximumPreparingIssuesCount: null,
|
|
4822
5108
|
utilizationPercentageThreshold: 90,
|
|
4823
5109
|
allowedIssueAuthors: ['testuser'],
|
|
5110
|
+
manager: 'manager-user',
|
|
4824
5111
|
codexHomeCandidates: null,
|
|
4825
5112
|
labelsAsLlmAgentName: null,
|
|
4826
5113
|
});
|
|
@@ -4879,6 +5166,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4879
5166
|
maximumPreparingIssuesCount: null,
|
|
4880
5167
|
utilizationPercentageThreshold: 90,
|
|
4881
5168
|
allowedIssueAuthors: ['testuser'],
|
|
5169
|
+
manager: 'manager-user',
|
|
4882
5170
|
codexHomeCandidates: null,
|
|
4883
5171
|
labelsAsLlmAgentName: null,
|
|
4884
5172
|
});
|
|
@@ -4933,6 +5221,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4933
5221
|
maximumPreparingIssuesCount: null,
|
|
4934
5222
|
utilizationPercentageThreshold: 90,
|
|
4935
5223
|
allowedIssueAuthors: ['testuser'],
|
|
5224
|
+
manager: 'manager-user',
|
|
4936
5225
|
codexHomeCandidates: null,
|
|
4937
5226
|
labelsAsLlmAgentName: null,
|
|
4938
5227
|
});
|
|
@@ -4987,6 +5276,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
4987
5276
|
maximumPreparingIssuesCount: null,
|
|
4988
5277
|
utilizationPercentageThreshold: 90,
|
|
4989
5278
|
allowedIssueAuthors: ['testuser'],
|
|
5279
|
+
manager: 'manager-user',
|
|
4990
5280
|
codexHomeCandidates: null,
|
|
4991
5281
|
labelsAsLlmAgentName: null,
|
|
4992
5282
|
});
|
|
@@ -5042,6 +5332,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5042
5332
|
maximumPreparingIssuesCount: null,
|
|
5043
5333
|
utilizationPercentageThreshold: 90,
|
|
5044
5334
|
allowedIssueAuthors: ['testuser'],
|
|
5335
|
+
manager: 'manager-user',
|
|
5045
5336
|
codexHomeCandidates: null,
|
|
5046
5337
|
labelsAsLlmAgentName: null,
|
|
5047
5338
|
});
|
|
@@ -5122,6 +5413,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5122
5413
|
maximumPreparingIssuesCount: null,
|
|
5123
5414
|
utilizationPercentageThreshold: 90,
|
|
5124
5415
|
allowedIssueAuthors: ['testuser'],
|
|
5416
|
+
manager: 'manager-user',
|
|
5125
5417
|
codexHomeCandidates: null,
|
|
5126
5418
|
labelsAsLlmAgentName: null,
|
|
5127
5419
|
});
|
|
@@ -5189,6 +5481,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5189
5481
|
maximumPreparingIssuesCount: null,
|
|
5190
5482
|
utilizationPercentageThreshold: 90,
|
|
5191
5483
|
allowedIssueAuthors: ['testuser'],
|
|
5484
|
+
manager: 'manager-user',
|
|
5192
5485
|
codexHomeCandidates: null,
|
|
5193
5486
|
labelsAsLlmAgentName: null,
|
|
5194
5487
|
});
|
|
@@ -5248,6 +5541,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5248
5541
|
maximumPreparingIssuesCount: null,
|
|
5249
5542
|
utilizationPercentageThreshold: 90,
|
|
5250
5543
|
allowedIssueAuthors: ['testuser'],
|
|
5544
|
+
manager: 'manager-user',
|
|
5251
5545
|
codexHomeCandidates: null,
|
|
5252
5546
|
labelsAsLlmAgentName: null,
|
|
5253
5547
|
});
|
|
@@ -5303,6 +5597,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5303
5597
|
maximumPreparingIssuesCount: null,
|
|
5304
5598
|
utilizationPercentageThreshold: 90,
|
|
5305
5599
|
allowedIssueAuthors: ['testuser'],
|
|
5600
|
+
manager: 'manager-user',
|
|
5306
5601
|
codexHomeCandidates: null,
|
|
5307
5602
|
labelsAsLlmAgentName: null,
|
|
5308
5603
|
});
|
|
@@ -5364,6 +5659,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5364
5659
|
maximumPreparingIssuesCount: null,
|
|
5365
5660
|
utilizationPercentageThreshold: 90,
|
|
5366
5661
|
allowedIssueAuthors: ['testuser'],
|
|
5662
|
+
manager: 'manager-user',
|
|
5367
5663
|
codexHomeCandidates: null,
|
|
5368
5664
|
labelsAsLlmAgentName: null,
|
|
5369
5665
|
});
|
|
@@ -5425,6 +5721,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5425
5721
|
maximumPreparingIssuesCount: null,
|
|
5426
5722
|
utilizationPercentageThreshold: 90,
|
|
5427
5723
|
allowedIssueAuthors: ['testuser'],
|
|
5724
|
+
manager: 'manager-user',
|
|
5428
5725
|
codexHomeCandidates: null,
|
|
5429
5726
|
labelsAsLlmAgentName: null,
|
|
5430
5727
|
});
|
|
@@ -5485,6 +5782,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5485
5782
|
maximumPreparingIssuesCount: null,
|
|
5486
5783
|
utilizationPercentageThreshold: 90,
|
|
5487
5784
|
allowedIssueAuthors: ['testuser'],
|
|
5785
|
+
manager: 'manager-user',
|
|
5488
5786
|
codexHomeCandidates: null,
|
|
5489
5787
|
labelsAsLlmAgentName: null,
|
|
5490
5788
|
});
|
|
@@ -5545,6 +5843,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5545
5843
|
maximumPreparingIssuesCount: null,
|
|
5546
5844
|
utilizationPercentageThreshold: 90,
|
|
5547
5845
|
allowedIssueAuthors: ['testuser'],
|
|
5846
|
+
manager: 'manager-user',
|
|
5548
5847
|
codexHomeCandidates: null,
|
|
5549
5848
|
labelsAsLlmAgentName: null,
|
|
5550
5849
|
});
|
|
@@ -5599,6 +5898,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5599
5898
|
maximumPreparingIssuesCount: null,
|
|
5600
5899
|
utilizationPercentageThreshold: 90,
|
|
5601
5900
|
allowedIssueAuthors: ['testuser'],
|
|
5901
|
+
manager: 'manager-user',
|
|
5602
5902
|
codexHomeCandidates: null,
|
|
5603
5903
|
labelsAsLlmAgentName: null,
|
|
5604
5904
|
});
|
|
@@ -5665,6 +5965,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5665
5965
|
maximumPreparingIssuesCount: null,
|
|
5666
5966
|
utilizationPercentageThreshold: 90,
|
|
5667
5967
|
allowedIssueAuthors: ['testuser'],
|
|
5968
|
+
manager: 'manager-user',
|
|
5668
5969
|
codexHomeCandidates: null,
|
|
5669
5970
|
labelsAsLlmAgentName: null,
|
|
5670
5971
|
});
|
|
@@ -5712,6 +6013,13 @@ describe('StartPreparationUseCase', () => {
|
|
|
5712
6013
|
number: 14,
|
|
5713
6014
|
author: 'not-allowed-user',
|
|
5714
6015
|
}),
|
|
6016
|
+
createMockIssue({
|
|
6017
|
+
url: 'https://github.com/user/repo/issues/14b',
|
|
6018
|
+
title: 'Not Assigned To Manager Issue',
|
|
6019
|
+
status: 'Awaiting Workspace',
|
|
6020
|
+
number: 145,
|
|
6021
|
+
assignees: ['someone-else'],
|
|
6022
|
+
}),
|
|
5715
6023
|
createMockIssue({
|
|
5716
6024
|
url: 'https://github.com/user/repo/issues/15',
|
|
5717
6025
|
title: 'Spawnable Issue',
|
|
@@ -5742,6 +6050,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5742
6050
|
maximumPreparingIssuesCount: null,
|
|
5743
6051
|
utilizationPercentageThreshold: 90,
|
|
5744
6052
|
allowedIssueAuthors: ['testuser'],
|
|
6053
|
+
manager: 'manager-user',
|
|
5745
6054
|
codexHomeCandidates: null,
|
|
5746
6055
|
labelsAsLlmAgentName: null,
|
|
5747
6056
|
});
|
|
@@ -5750,7 +6059,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5750
6059
|
);
|
|
5751
6060
|
expect(summaryCalls).toHaveLength(1);
|
|
5752
6061
|
expect(summaryCalls[0][0]).toBe(
|
|
5753
|
-
'Spawn candidate exclusion summary for https://github.com/user/repo: dependedIssueUrls=1, futureNextActionDate=1, nextActionHourNotReached=1, authorNotAllowed=1',
|
|
6062
|
+
'Spawn candidate exclusion summary for https://github.com/user/repo: dependedIssueUrls=1, futureNextActionDate=1, nextActionHourNotReached=1, authorNotAllowed=1, notAssignedToManager=1',
|
|
5754
6063
|
);
|
|
5755
6064
|
expect(mockLocalCommandRunner.runCommand.mock.calls).toHaveLength(1);
|
|
5756
6065
|
expect(mockLocalCommandRunner.runCommand.mock.calls[0][1][0]).toBe(
|
|
@@ -5791,6 +6100,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5791
6100
|
maximumPreparingIssuesCount: null,
|
|
5792
6101
|
utilizationPercentageThreshold: 90,
|
|
5793
6102
|
allowedIssueAuthors: ['testuser'],
|
|
6103
|
+
manager: 'manager-user',
|
|
5794
6104
|
codexHomeCandidates: null,
|
|
5795
6105
|
labelsAsLlmAgentName: null,
|
|
5796
6106
|
});
|
|
@@ -5799,7 +6109,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5799
6109
|
);
|
|
5800
6110
|
expect(summaryCalls).toHaveLength(1);
|
|
5801
6111
|
expect(summaryCalls[0][0]).toBe(
|
|
5802
|
-
'Spawn candidate exclusion summary for https://github.com/user/repo: dependedIssueUrls=0, futureNextActionDate=0, nextActionHourNotReached=0, authorNotAllowed=0',
|
|
6112
|
+
'Spawn candidate exclusion summary for https://github.com/user/repo: dependedIssueUrls=0, futureNextActionDate=0, nextActionHourNotReached=0, authorNotAllowed=0, notAssignedToManager=0',
|
|
5803
6113
|
);
|
|
5804
6114
|
consoleLogSpy.mockRestore();
|
|
5805
6115
|
});
|
|
@@ -5862,6 +6172,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5862
6172
|
maximumPreparingIssuesCount: null,
|
|
5863
6173
|
utilizationPercentageThreshold: 90,
|
|
5864
6174
|
allowedIssueAuthors: ['testuser'],
|
|
6175
|
+
manager: 'manager-user',
|
|
5865
6176
|
codexHomeCandidates: null,
|
|
5866
6177
|
labelsAsLlmAgentName: null,
|
|
5867
6178
|
});
|
|
@@ -5908,6 +6219,7 @@ describe('StartPreparationUseCase', () => {
|
|
|
5908
6219
|
maximumPreparingIssuesCount: null,
|
|
5909
6220
|
utilizationPercentageThreshold: 90,
|
|
5910
6221
|
allowedIssueAuthors: ['testuser'],
|
|
6222
|
+
manager: 'manager-user',
|
|
5911
6223
|
codexHomeCandidates: null,
|
|
5912
6224
|
labelsAsLlmAgentName: null,
|
|
5913
6225
|
});
|