github-issue-tower-defence-management 1.119.4 → 1.121.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 (117) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +7 -9
  3. package/bin/adapter/entry-points/cli/index.js +8 -14
  4. package/bin/adapter/entry-points/cli/index.js.map +1 -1
  5. package/bin/adapter/entry-points/cli/projectConfig.js +0 -6
  6. package/bin/adapter/entry-points/cli/projectConfig.js.map +1 -1
  7. package/bin/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.js +6 -12
  8. package/bin/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.js.map +1 -1
  9. package/bin/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.js +3 -10
  10. package/bin/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.js.map +1 -1
  11. package/bin/adapter/entry-points/handlers/machineStatusWriter.js +23 -19
  12. package/bin/adapter/entry-points/handlers/machineStatusWriter.js.map +1 -1
  13. package/bin/adapter/entry-points/handlers/situationFileWriter.js.map +1 -1
  14. package/bin/adapter/entry-points/handlers/staleTmuxSessionCleaner.js +1 -2
  15. package/bin/adapter/entry-points/handlers/staleTmuxSessionCleaner.js.map +1 -1
  16. package/bin/adapter/repositories/LocalStorageCacheRepository.js +25 -0
  17. package/bin/adapter/repositories/LocalStorageCacheRepository.js.map +1 -1
  18. package/bin/adapter/repositories/ProcHostMetricsRepository.js +10 -5
  19. package/bin/adapter/repositories/ProcHostMetricsRepository.js.map +1 -1
  20. package/bin/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.js +119 -59
  21. package/bin/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.js.map +1 -1
  22. package/bin/adapter/repositories/issue/GraphqlProjectItemRepository.js +12 -3
  23. package/bin/adapter/repositories/issue/GraphqlProjectItemRepository.js.map +1 -1
  24. package/bin/domain/usecases/GetStoryObjectMapUseCase.js +1 -1
  25. package/bin/domain/usecases/GetStoryObjectMapUseCase.js.map +1 -1
  26. package/bin/domain/usecases/HandleScheduledEventUseCase.js +1 -8
  27. package/bin/domain/usecases/HandleScheduledEventUseCase.js.map +1 -1
  28. package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js +2 -2
  29. package/bin/domain/usecases/NotifyFinishedIssuePreparationUseCase.js.map +1 -1
  30. package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js +1 -1
  31. package/bin/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.js.map +1 -1
  32. package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js +1 -1
  33. package/bin/domain/usecases/RevertOrphanedPreparationUseCase.js.map +1 -1
  34. package/bin/domain/usecases/SetupTowerDefenceProjectUseCase.js +1 -1
  35. package/bin/domain/usecases/SetupTowerDefenceProjectUseCase.js.map +1 -1
  36. package/bin/domain/usecases/StaleTmuxSessionKillUseCase.js +1 -1
  37. package/bin/domain/usecases/StaleTmuxSessionKillUseCase.js.map +1 -1
  38. package/bin/domain/usecases/StartPreparationUseCase.js +1 -1
  39. package/bin/domain/usecases/StartPreparationUseCase.js.map +1 -1
  40. package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js +3 -1
  41. package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js.map +1 -1
  42. package/package.json +1 -1
  43. package/src/adapter/entry-points/cli/index.test.ts +0 -5
  44. package/src/adapter/entry-points/cli/index.ts +16 -17
  45. package/src/adapter/entry-points/cli/projectConfig.ts +0 -8
  46. package/src/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.test.ts +4 -25
  47. package/src/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.ts +4 -7
  48. package/src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.test.ts +2 -25
  49. package/src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.ts +2 -4
  50. package/src/adapter/entry-points/handlers/machineStatusWriter.test.ts +29 -11
  51. package/src/adapter/entry-points/handlers/machineStatusWriter.ts +30 -19
  52. package/src/adapter/entry-points/handlers/situationFileWriter.test.ts +0 -5
  53. package/src/adapter/entry-points/handlers/situationFileWriter.ts +0 -1
  54. package/src/adapter/entry-points/handlers/staleTmuxSessionCleaner.test.ts +0 -5
  55. package/src/adapter/entry-points/handlers/staleTmuxSessionCleaner.ts +1 -9
  56. package/src/adapter/repositories/LocalStorageCacheRepository.test.ts +75 -0
  57. package/src/adapter/repositories/LocalStorageCacheRepository.ts +24 -0
  58. package/src/adapter/repositories/ProcHostMetricsRepository.test.ts +29 -8
  59. package/src/adapter/repositories/ProcHostMetricsRepository.ts +10 -6
  60. package/src/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.test.ts +198 -47
  61. package/src/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.ts +160 -81
  62. package/src/adapter/repositories/issue/GraphqlProjectItemRepository.ts +23 -3
  63. package/src/domain/usecases/GetStoryObjectMapUseCase.test.ts +7 -12
  64. package/src/domain/usecases/GetStoryObjectMapUseCase.ts +1 -5
  65. package/src/domain/usecases/HandleScheduledEventUseCase.test.ts +8 -24
  66. package/src/domain/usecases/HandleScheduledEventUseCase.ts +6 -17
  67. package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts +4 -8
  68. package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.test.ts +35 -42
  69. package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.ts +1 -5
  70. package/src/domain/usecases/RevertOrphanedPreparationUseCase.test.ts +32 -32
  71. package/src/domain/usecases/RevertOrphanedPreparationUseCase.ts +1 -5
  72. package/src/domain/usecases/SetupTowerDefenceProjectUseCase.test.ts +17 -4
  73. package/src/domain/usecases/SetupTowerDefenceProjectUseCase.ts +1 -4
  74. package/src/domain/usecases/StaleTmuxSessionKillUseCase.test.ts +1 -7
  75. package/src/domain/usecases/StaleTmuxSessionKillUseCase.ts +1 -5
  76. package/src/domain/usecases/StartPreparationUseCase.test.ts +1 -94
  77. package/src/domain/usecases/StartPreparationUseCase.ts +2 -5
  78. package/src/domain/usecases/adapter-interfaces/IssueRepository.ts +3 -10
  79. package/src/domain/usecases/console/GenerateConsoleListsUseCase.test.ts +10 -0
  80. package/src/domain/usecases/console/GenerateConsoleListsUseCase.ts +4 -1
  81. package/types/adapter/entry-points/cli/projectConfig.d.ts +0 -1
  82. package/types/adapter/entry-points/cli/projectConfig.d.ts.map +1 -1
  83. package/types/adapter/entry-points/function/getStoryObjectMap.d.ts +1 -1
  84. package/types/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.d.ts +1 -1
  85. package/types/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.d.ts.map +1 -1
  86. package/types/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.d.ts.map +1 -1
  87. package/types/adapter/entry-points/handlers/machineStatusWriter.d.ts +1 -0
  88. package/types/adapter/entry-points/handlers/machineStatusWriter.d.ts.map +1 -1
  89. package/types/adapter/entry-points/handlers/situationFileWriter.d.ts +0 -1
  90. package/types/adapter/entry-points/handlers/situationFileWriter.d.ts.map +1 -1
  91. package/types/adapter/entry-points/handlers/staleTmuxSessionCleaner.d.ts +0 -1
  92. package/types/adapter/entry-points/handlers/staleTmuxSessionCleaner.d.ts.map +1 -1
  93. package/types/adapter/repositories/LocalStorageCacheRepository.d.ts +2 -0
  94. package/types/adapter/repositories/LocalStorageCacheRepository.d.ts.map +1 -1
  95. package/types/adapter/repositories/ProcHostMetricsRepository.d.ts +1 -1
  96. package/types/adapter/repositories/ProcHostMetricsRepository.d.ts.map +1 -1
  97. package/types/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.d.ts +22 -7
  98. package/types/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.d.ts.map +1 -1
  99. package/types/adapter/repositories/issue/GraphqlProjectItemRepository.d.ts +2 -1
  100. package/types/adapter/repositories/issue/GraphqlProjectItemRepository.d.ts.map +1 -1
  101. package/types/domain/usecases/GetStoryObjectMapUseCase.d.ts +0 -1
  102. package/types/domain/usecases/GetStoryObjectMapUseCase.d.ts.map +1 -1
  103. package/types/domain/usecases/HandleScheduledEventUseCase.d.ts +0 -1
  104. package/types/domain/usecases/HandleScheduledEventUseCase.d.ts.map +1 -1
  105. package/types/domain/usecases/NotifyFinishedIssuePreparationUseCase.d.ts.map +1 -1
  106. package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts +0 -1
  107. package/types/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.d.ts.map +1 -1
  108. package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts +0 -1
  109. package/types/domain/usecases/RevertOrphanedPreparationUseCase.d.ts.map +1 -1
  110. package/types/domain/usecases/SetupTowerDefenceProjectUseCase.d.ts.map +1 -1
  111. package/types/domain/usecases/StaleTmuxSessionKillUseCase.d.ts +0 -1
  112. package/types/domain/usecases/StaleTmuxSessionKillUseCase.d.ts.map +1 -1
  113. package/types/domain/usecases/StartPreparationUseCase.d.ts +0 -1
  114. package/types/domain/usecases/StartPreparationUseCase.d.ts.map +1 -1
  115. package/types/domain/usecases/adapter-interfaces/IssueRepository.d.ts +4 -3
  116. package/types/domain/usecases/adapter-interfaces/IssueRepository.d.ts.map +1 -1
  117. package/types/domain/usecases/console/GenerateConsoleListsUseCase.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"HandleScheduledEventUseCaseHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,kDAA0B;AAC1B,4CAAoB;AACpB,+DAA2D;AAC3D,6DAAyD;AACzD,6DAAyD;AACzD,+DAA2D;AAC3D,2DAAuD;AACvD,uEAAmE;AACnE,qFAAkF;AAClF,uEAAmE;AACnE,yEAGoC;AACpC,uEAAmE;AACnE,wDAG8B;AAC9B,kFAA+E;AAC/E,sFAAmF;AACnF,gGAA6F;AAC7F,0FAAuF;AACvF,wFAAqF;AACrF,sFAAmF;AACnF,wGAAqG;AACrG,8GAA2G;AAC3G,sGAAmG;AACnG,gGAA6F;AAC7F,kGAA+F;AAC/F,gIAA6H;AAC7H,oHAAiH;AACjH,wGAAqG;AAIrG,0FAAuF;AACvF,wGAAqG;AACrG,gIAA6H;AAC7H,wGAAqG;AACrG,kIAA+H;AAC/H,8GAA2G;AAC3G,0GAAuG;AACvG,wGAAqG;AACrG,0HAAuH;AACvH,8GAA2G;AAC3G,8FAA2F;AAC3F,sFAAmF;AACnF,wGAAqG;AACrG,oGAAiG;AACjG,sGAAmG;AACnG,gHAA6G;AAC7G,0HAAuH;AACvH,kGAA+F;AAC/F,8GAA2G;AAC3G,gGAA6F;AAC7F,0EAAuE;AACvE,4EAKiD;AAEjD,MAAM,0BAA0B,GAAkB,IAAI,CAAC;AAEvD,MAAM,iBAAiB,GAAG,CACxB,WAA+B,EAC/B,QAA4B,EAC5B,YAAoB,EACZ,EAAE;IACV,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAEF,MAAa,kCAAkC;IAA/C;QACE,WAAM,GAAG,KAAK,EACZ,cAAsB,EACtB,QAAiB,EAMT,EAAE;YACV,MAAM,iBAAiB,GAAG,YAAE,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;YAClE,MAAM,KAAK,GAAY,cAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAsDrD,IAAI;;;;;+nGAAqB,KAAK,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAA2B,KAAK,EAAE,EAAE,CACjG,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAA,kCAAkB,EAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACxE,MAAM,YAAY,GAAG,MAAM;gBACzB,CAAC,CAAC,IAAA,wCAAwB,EAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC;gBACpD,CAAC,CAAC,EAAE,CAAC;YAEP,MAAM,4BAA4B,GAAG,CACnC,KAA2C,EAC1B,EAAE;gBACnB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC1C,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,KAAK;qBACT,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC,CAAC;YAEF,MAAM,WAAW,GAAG;gBAClB,GAAG,KAAK;gBACR,mBAAmB,EAAE,4BAA4B,CAC/C,KAAK,CAAC,mBAAmB,CAC1B;gBACD,sBAAsB,EACpB,YAAY,CAAC,sBAAsB,IAAI,KAAK,CAAC,sBAAsB;gBACrE,gCAAgC,EAC9B,YAAY,CAAC,gCAAgC;oBAC7C,KAAK,CAAC,gCAAgC;gBACxC,sBAAsB,EACpB,YAAY,CAAC,sBAAsB,IAAI,KAAK,CAAC,sBAAsB;gBACrE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACtC,CAAC,CAAC;wBACE,GAAG,KAAK,CAAC,gBAAgB;wBACzB,gBAAgB,EACd,YAAY,CAAC,gBAAgB;4BAC7B,KAAK,CAAC,gBAAgB,CAAC,gBAAgB;wBACzC,mBAAmB,EACjB,YAAY,CAAC,mBAAmB;4BAChC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB;wBAC5C,oBAAoB,EAClB,YAAY,CAAC,oBAAoB;4BACjC,KAAK,CAAC,gBAAgB,CAAC,oBAAoB;wBAC7C,mBAAmB,EACjB,YAAY,CAAC,mBAAmB;4BAChC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB;wBAC5C,2BAA2B,EACzB,YAAY,CAAC,2BAA2B;4BACxC,KAAK,CAAC,gBAAgB,CAAC,2BAA2B;wBACpD,8BAA8B,EAC5B,YAAY,CAAC,8BAA8B;4BAC3C,KAAK,CAAC,gBAAgB,CAAC,8BAA8B;wBACvD,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;4BACnD,CAAC,CAAC,YAAY,CAAC,mBAAmB;iCAC7B,KAAK,CAAC,GAAG,CAAC;iCACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;iCACpB,MAAM,CAAC,OAAO,CAAC;4BACpB,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB;wBAC9C,8BAA8B,EAC5B,YAAY,CAAC,8BAA8B;4BAC3C,KAAK,CAAC,gBAAgB,CAAC,8BAA8B;wBACvD,mBAAmB,EACjB,YAAY,CAAC,mBAAmB;4BAChC,KAAK,CAAC,gBAAgB,CAAC,mBAAmB;qBAC7C;oBACH,CAAC,CAAC,KAAK,CAAC,gBAAgB;aAC3B,CAAC;YAIF,MAAM,mBAAmB,GAAG,CAC1B,WAAiC,EACjC,eAAqC,EACgB,EAAE;gBACvD,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;oBACtD,OAAO,gBAAgB,CAAC;gBAC1B,CAAC;gBACD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;oBAC9D,OAAO,YAAY,CAAC;gBACtB,CAAC;gBACD,OAAO,iBAAiB,CAAC;YAC3B,CAAC,CAAC;YAEF,MAAM,qBAAqB,GAAG,CAC5B,KAA2B,EAC3B,WAAiC,EACjC,eAAqC,EAC7B,EAAE,CACV,GAAG,KAAK,IAAI,MAAM,aAAa,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC;YAEtF,OAAO,CAAC,GAAG,CACT,0CAA0C,qBAAqB,CAC7D,WAAW,CAAC,gBAAgB,EAAE,2BAA2B,EACzD,YAAY,CAAC,2BAA2B,EACxC,KAAK,CAAC,gBAAgB,EAAE,2BAA2B,CACpD,EAAE,CACJ,CAAC;YACF,OAAO,CAAC,GAAG,CACT,kCAAkC,qBAAqB,CACrD,WAAW,CAAC,gBAAgB,EAAE,mBAAmB,EACjD,YAAY,CAAC,mBAAmB,EAChC,KAAK,CAAC,gBAAgB,EAAE,mBAAmB,CAC5C,EAAE,CACJ,CAAC;YACF,OAAO,CAAC,GAAG,CACT,+BAA+B,qBAAqB,CAClD,WAAW,CAAC,gBAAgB,EAAE,gBAAgB,EAC9C,YAAY,CAAC,gBAAgB,EAC7B,KAAK,CAAC,gBAAgB,EAAE,gBAAgB,CACzC,EAAE,CACJ,CAAC;YAEF,MAAM,oBAAoB,GAAG,IAAI,2CAAoB,EAAE,CAAC;YACxD,MAAM,sBAAsB,GAAG,IAAI,+CAAsB,EAAE,CAAC;YAC5D,MAAM,2BAA2B,GAAG,IAAI,yDAA2B,CACjE,sBAAsB,EACtB,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,CACjE,CAAC;YACF,MAAM,SAAS,GAAG,eAAe,KAAK,CAAC,WAAW,EAAE,CAAC;YACrD,MAAM,2BAA2B,GAAG,IAAI,yDAA2B,CACjE,sBAAsB,EACtB,SAAS,CACV,CAAC;YACF,MAAM,sBAAsB,GAExB,CAAC,sBAAsB,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjE,MAAM,iBAAiB,GAAG,IAAI,mDAAwB,CACpD,GAAG,sBAAsB,EACzB,2BAA2B,CAC5B,CAAC;YACF,MAAM,oBAAoB,GAAG,IAAI,2CAAoB,CACnD,GAAG,sBAAsB,CAC1B,CAAC;YACF,MAAM,mBAAmB,GAAG,IAAI,yCAAmB,CACjD,GAAG,sBAAsB,CAC1B,CAAC;YACF,MAAM,4BAA4B,GAAG,IAAI,2DAA4B,CACnE,GAAG,sBAAsB,CAC1B,CAAC;YACF,MAAM,eAAe,GAAG,IAAI,iEAA+B,CACzD,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,EAC5B,2BAA2B,EAC3B,GAAG,sBAAsB,CAC1B,CAAC;YACF,MAAM,+BAA+B,GAAG,IAAI,iEAA+B,CACzE,iBAAiB,EACjB,eAAe,CAChB,CAAC;YACF,MAAM,kBAAkB,GAAG,IAAI,qDAAyB,CAAC,eAAe,CAAC,CAAC;YAC1E,MAAM,wCAAwC,GAC5C,IAAI,mFAAwC,CAAC,eAAe,CAAC,CAAC;YAChE,MAAM,0BAA0B,GAAG,IAAI,uEAAkC,CACvE,eAAe,CAChB,CAAC;YACF,MAAM,4BAA4B,GAAG,IAAI,2DAA4B,CACnE,eAAe,EACf,oBAAoB,CACrB,CAAC;YACF,MAAM,qBAAqB,GAAG,IAAI,6CAAqB,CACrD,eAAe,EACf,oBAAoB,CACrB,CAAC;YACF,MAAM,4BAA4B,GAAG,IAAI,2DAA4B,CACnE,eAAe,CAChB,CAAC;YACF,MAAM,wCAAwC,GAC5C,IAAI,mFAAwC,CAAC,eAAe,CAAC,CAAC;YAChE,MAAM,4BAA4B,GAAG,IAAI,2DAA4B,CACnE,eAAe,EACf,oBAAoB,CACrB,CAAC;YACF,MAAM,yCAAyC,GAC7C,IAAI,qFAAyC,CAAC,eAAe,CAAC,CAAC;YACjE,MAAM,+BAA+B,GAAG,IAAI,iEAA+B,CACzE,oBAAoB,EACpB,eAAe,CAChB,CAAC;YAEF,MAAM,6BAA6B,GAAG,IAAI,6DAA6B,CACrE,eAAe,CAChB,CAAC;YACF,MAAM,qBAAqB,GAAG,IAAI,2DAA4B,CAC5D,iBAAiB,EACjB,eAAe,CAChB,CAAC;YACF,MAAM,qCAAqC,GACzC,IAAI,6EAAqC,CAAC,eAAe,CAAC,CAAC;YAC7D,MAAM,+BAA+B,GAAG,IAAI,iEAA+B,CACzE,eAAe,CAChB,CAAC;YACF,MAAM,sBAAsB,GAAG,IAAI,+CAAsB,EAAE,CAAC;YAC5D,MAAM,0BAA0B,GAAG,IAAI,iEAA+B,CACpE,WAAW,CAAC,gCAAgC,IAAI,IAAI,CACrD,CAAC;YACF,MAAM,uBAAuB,GAAG,IAAI,iDAAuB,CACzD,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,0BAA0B,CAC3B,CAAC;YACF,MAAM,6BAA6B,GAAG,IAAI,6DAA6B,CACrE,WAAW,CAAC,gCAAgC,IAAI,IAAI,CACrD,CAAC;YACF,MAAM,2BAA2B,GAAG,WAAW,CAAC,gBAAgB;gBAC9D,CAAC,CAAC,IAAI,yDAA2B,CAAC,6BAA6B,CAAC;gBAChE,CAAC,CAAC,IAAI,CAAC;YACT,MAAM,sBAAsB,GAAG,IAAI,2DAA4B,CAC7D,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CACnC,CAAC;YACF,MAAM,gCAAgC,GACpC,IAAI,mEAAgC,CAClC,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,CACvB,CAAC;YACJ,MAAM,qCAAqC,GACzC,IAAI,6EAAqC,CACvC,iBAAiB,EACjB,eAAe,EACf,sBAAsB,CACvB,CAAC;YAEJ,MAAM,wBAAwB,GAAG,WAAW,CAAC,iBAAiB;gBAC5D,CAAC,CAAC,IAAI,mDAAwB,CAC1B,sBAAsB,EACtB,eAAe,EACf,IAAI,mCAAgB,EAAE,CACvB;gBACH,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,2BAA2B,GAAG,IAAI,yDAA2B,CACjE,+BAA+B,EAC/B,kBAAkB,EAClB,wCAAwC,EACxC,0BAA0B,EAC1B,4BAA4B,EAC5B,qBAAqB,EACrB,4BAA4B,EAC5B,wCAAwC,EACxC,4BAA4B,EAC5B,yCAAyC,EACzC,+BAA+B,EAC/B,6BAA6B,EAC7B,qBAAqB,EACrB,qCAAqC,EACrC,+BAA+B,EAC/B,uBAAuB,EACvB,gCAAgC,EAChC,qCAAqC,EACrC,2BAA2B,EAC3B,wBAAwB,EACxB,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,eAAe,CAChB,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAClE,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,MAAM,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;oBAClC,IAAA,gDAAsB,EAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBAC/C,CAAC;gBACD,MAAM,IAAA,wCAAkB,EAAC;oBACvB,SAAS;oBACT,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;oBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,WAAW,EAAE;wBACX,0BAA0B,EAAE,mDAAkC;wBAC9D,iBAAiB,EAAE,wCAAuB;wBAC1C,uBAAuB,EAAE,+CAA8B;wBACvD,uBAAuB,EAAE,+CAA8B;qBACxD;oBACD,MAAM,EAAE;wBACN,2BAA2B,EACzB,WAAW,CAAC,gBAAgB,EAAE,2BAA2B,IAAI,IAAI;wBACnE,8BAA8B,EAC5B,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,IAAI,EAAE;wBACpE,sBAAsB,EAAE,WAAW,CAAC,sBAAsB;wBAC1D,sBAAsB,EAAE,CAAC;qBAC1B;oBACD,8BAA8B,EAC5B,WAAW,CAAC,gBAAgB,EAAE,8BAA8B,IAAI,IAAI;oBACtE,kBAAkB,EAAE,sBAAsB;iBAC3C,CAAC,CAAC;gBAEH,IAAI,CAAC;oBACH,IAAA,sCAAiB,EAAC;wBAChB,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,IAAI,IAAI;wBAC9D,MAAM,EAAE,KAAK,CAAC,WAAW;wBACzB,aAAa,EAAE,KAAK,CAAC,OAAO;wBAC5B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,wBAAwB,EACtB,WAAW,CAAC,wBAAwB,IAAI,IAAI;qBAC/C,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,kCACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,MAAM,gBAAgB,GACpB,WAAW,CAAC,gBAAgB,IAAI,0BAA0B,CAAC;gBAE7D,IAAI,CAAC;oBACH,IAAA,sCAAiB,EAAC;wBAChB,gBAAgB;wBAChB,MAAM,EAAE,KAAK,CAAC,WAAW;wBACzB,aAAa,EAAE,KAAK,CAAC,OAAO;wBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;qBACtB,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,kCACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,IAAA,wCAAkB,EAAC;wBACvB,gBAAgB;wBAChB,iBAAiB,EAAE,GAAG,SAAS,cAAc,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE;qBACjE,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,mCACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,IAAA,oCAAgB,EAAC;wBACf,gBAAgB;wBAChB,iBAAiB,EACf,WAAW,CAAC,gCAAgC,IAAI,IAAI;wBACtD,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,MAAM,EAAE,KAAK,CAAC,WAAW;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,iCACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;gBAE7B,IAAI,CAAC;oBACH,IAAA,gDAAsB,EAAC;wBACrB,mBAAmB,EAAE,WAAW,CAAC,mBAAmB,IAAI,IAAI;wBAC5D,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,IAAI,IAAI;wBAC9D,kBAAkB,EAAE,WAAW,CAAC,kBAAkB,IAAI,IAAI;wBAC1D,kBAAkB,EAAE,WAAW,CAAC,kBAAkB,IAAI,IAAI;wBAC1D,MAAM,EAAE,KAAK,CAAC,WAAW;wBACzB,aAAa,EAAE,KAAK,CAAC,OAAO;wBAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;wBACd,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,IAAI;wBAC9B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,GAAG,EAAE,SAAS;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,0CACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,IAAA,+DAA8B,EAAC;wBACnC,qBAAqB,EAAE,WAAW,CAAC,qBAAqB,IAAI,IAAI;wBAChE,aAAa,EAAE,KAAK,CAAC,OAAO;wBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,kBAAkB,EAAE,sBAAsB;wBAC1C,GAAG,EAAE,SAAS;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,kDACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,IAAA,gDAAsB,EAAC;wBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,iBAAiB,EAAE,WAAW,CAAC,sBAAsB;wBACrD,eAAe;wBACf,kBAAkB,EAAE,sBAAsB;wBAC1C,GAAG,EAAE,SAAS;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,wCACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,yBAAyB,GAC7B,WAAW,CAAC,yBAAyB;wBACrC,OAAO,CAAC,GAAG,CAAC,gCAAgC,KAAK,MAAM,CAAC;oBAC1D,MAAM,2BAA2B,GAC/B,WAAW,CAAC,2BAA2B;wBACvC,OAAO,CAAC,GAAG,CAAC,mCAAmC;wBAC/C,IAAI,CAAC;oBACP,MAAM,2BAA2B,GAC/B,WAAW,CAAC,2BAA2B;wBACvC,OAAO,CAAC,GAAG,CAAC,mCAAmC;wBAC/C,IAAI,CAAC;oBACP,MAAM,eAAe,GACnB,WAAW,CAAC,eAAe;wBAC3B,OAAO,CAAC,GAAG,CAAC,6BAA6B;wBACzC,IAAI,CAAC;oBACP,MAAM,+BAA+B,GACnC,WAAW,CAAC,+BAA+B;wBAC3C,OAAO,CAAC,GAAG,CAAC,uCAAuC;wBACnD,IAAI,CAAC;oBACP,MAAM,IAAA,mDAAwB,EAAC;wBAC7B,OAAO,EAAE,yBAAyB;wBAClC,kBAAkB,EAAE,sBAAsB;wBAC1C,eAAe;wBACf,2BAA2B;wBAC3B,2BAA2B;wBAC3B,+BAA+B;wBAC/B,0BAA0B,EAAE,iBAAiB,CAC3C,WAAW,CAAC,0BAA0B,EACtC,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAC9C,qEAA0C,CAAC,0BAA0B,CACtE;wBACD,8BAA8B,EAAE,iBAAiB,CAC/C,WAAW,CAAC,8BAA8B,EAC1C,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAClD,qEAA0C,CAAC,8BAA8B,CAC1E;wBACD,+BAA+B,EAAE,iBAAiB,CAChD,WAAW,CAAC,+BAA+B,EAC3C,OAAO,CAAC,GAAG,CAAC,uCAAuC,EACnD,qEAA0C,CAAC,+BAA+B,CAC3E;wBACD,cAAc,EAAE,iBAAiB,CAC/B,WAAW,CAAC,gCAAgC,EAC5C,OAAO,CAAC,GAAG,CAAC,wCAAwC,EACpD,qEAA0C,CAAC,cAAc,CAC1D;wBACD,qCAAqC,EAAE,iBAAiB,CACtD,WAAW,CAAC,qCAAqC,EACjD,OAAO,CAAC,GAAG,CAAC,qDAAqD,EACjE,qEAA0C,CAAC,qCAAqC,CACjF;wBACD,8BAA8B,EAC5B,WAAW,CAAC,8BAA8B;4BAC1C,OAAO,CAAC,GAAG,CAAC,8CAA8C;4BAC1D,IAAI;wBACN,mBAAmB,EACjB,WAAW,CAAC,mBAAmB;4BAC/B,OAAO,CAAC,GAAG,CAAC,2BAA2B;4BACvC,IAAI;wBACN,qBAAqB,EAAE,eAAe;wBACtC,+BAA+B,EAC7B,WAAW,CAAC,+BAA+B;4BAC3C,OAAO,CAAC,GAAG,CAAC,iDAAiD;4BAC7D,IAAI;wBACN,4BAA4B,EAAE,iBAAiB,CAC7C,WAAW,CAAC,4BAA4B,EACxC,OAAO,CAAC,GAAG,CAAC,6CAA6C,EACzD,qEAA0C,CAAC,4BAA4B,CACxE;wBACD,gBAAgB,EAAE;4BAChB,kBAAkB,EAChB,WAAW,CAAC,wBAAwB;gCACpC,OAAO,CAAC,GAAG,CAAC,gCAAgC;gCAC5C,IAAI;4BACN,yBAAyB,EACvB,WAAW,CAAC,+BAA+B;gCAC3C,OAAO,CAAC,GAAG,CAAC,wCAAwC;gCACpD,IAAI;4BACN,yBAAyB,EACvB,WAAW,CAAC,+BAA+B;gCAC3C,OAAO,CAAC,GAAG,CAAC,wCAAwC;gCACpD,IAAI;4BACN,gCAAgC,EAC9B,WAAW,CAAC,sCAAsC;gCAClD,OAAO,CAAC,GAAG,CAAC,gDAAgD;gCAC5D,IAAI;4BACN,gCAAgC,EAC9B,WAAW,CAAC,sCAAsC;gCAClD,OAAO,CAAC,GAAG,CAAC,gDAAgD;gCAC5D,IAAI;yBACP;wBACD,GAAG,EAAE,SAAS;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,0CACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC;CAAA;AA7kBD,gFA6kBC"}
1
+ {"version":3,"file":"HandleScheduledEventUseCaseHandler.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.ts"],"names":[],"mappings":"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"}
@@ -14,26 +14,26 @@ const writeJsonAtomic = (filePath, data) => {
14
14
  fs_1.default.writeFileSync(tmpPath, JSON.stringify(data));
15
15
  fs_1.default.renameSync(tmpPath, filePath);
16
16
  };
17
- const cacheFileMtimesDescending = (allIssuesCacheDir) => {
18
- let entries;
17
+ const isRecord = (value) => typeof value === 'object' && value !== null;
18
+ const readLastFetchedAtFromJsonFile = (filePath) => {
19
+ let raw;
19
20
  try {
20
- entries = fs_1.default.readdirSync(allIssuesCacheDir);
21
+ raw = fs_1.default.readFileSync(filePath, 'utf8');
21
22
  }
22
23
  catch {
23
- return [];
24
+ return null;
24
25
  }
25
- return entries
26
- .filter((entry) => entry.endsWith('.json'))
27
- .map((entry) => {
28
- try {
29
- return fs_1.default.statSync(path_1.default.join(allIssuesCacheDir, entry)).mtimeMs / 1000;
30
- }
31
- catch {
32
- return null;
33
- }
34
- })
35
- .filter((value) => value !== null)
36
- .sort((a, b) => b - a);
26
+ let parsed;
27
+ try {
28
+ parsed = JSON.parse(raw);
29
+ }
30
+ catch {
31
+ return null;
32
+ }
33
+ if (isRecord(parsed) && typeof parsed.lastFetchedAt === 'string') {
34
+ return parsed.lastFetchedAt;
35
+ }
36
+ return null;
37
37
  };
38
38
  const writeMachineStatus = async (params) => {
39
39
  const { dashboardDataDir, allIssuesCacheDir } = params;
@@ -45,18 +45,22 @@ const writeMachineStatus = async (params) => {
45
45
  const cpuPct = await hostMetricsRepository.readCpuUsedPercent();
46
46
  const diskPct = hostMetricsRepository.readDiskUsedPercent();
47
47
  const load = hostMetricsRepository.readLoadAverages();
48
- const cycleMinutes = allIssuesCacheDir
49
- ? (0, ProcHostMetricsRepository_1.cycleMinutesFromMtimes)(cacheFileMtimesDescending(allIssuesCacheDir))
48
+ const machineStatusPath = path_1.default.join(dashboardDataDir, 'machine-status.json');
49
+ const previousLastFetchedAt = readLastFetchedAtFromJsonFile(machineStatusPath);
50
+ const currentLastFetchedAt = allIssuesCacheDir
51
+ ? readLastFetchedAtFromJsonFile(path_1.default.join(allIssuesCacheDir, 'latest.json'))
50
52
  : null;
53
+ const cycleMinutes = (0, ProcHostMetricsRepository_1.cycleMinutesFromFetchTimestamps)(previousLastFetchedAt, currentLastFetchedAt);
51
54
  const file = {
52
55
  memPct,
53
56
  cpuPct,
54
57
  diskPct,
55
58
  load: [load.oneMinute, load.fiveMinute, load.fifteenMinute],
56
59
  cycleMinutes,
60
+ lastFetchedAt: currentLastFetchedAt,
57
61
  capturedAt: (params.now ?? new Date()).toISOString(),
58
62
  };
59
- writeJsonAtomic(path_1.default.join(dashboardDataDir, 'machine-status.json'), file);
63
+ writeJsonAtomic(machineStatusPath, file);
60
64
  };
61
65
  exports.writeMachineStatus = writeMachineStatus;
62
66
  //# sourceMappingURL=machineStatusWriter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"machineStatusWriter.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/machineStatusWriter.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,4FAGsD;AAkBtD,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,IAAa,EAAQ,EAAE;IAChE,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,GAAG,QAAQ,MAAM,CAAC;IAClC,YAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,YAAE,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,iBAAyB,EAAY,EAAE;IACxE,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,CAAC;YACH,OAAO,YAAE,CAAC,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;QACzE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC;SAClD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3B,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAG,KAAK,EACrC,MAAiC,EAClB,EAAE;IACjB,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IACvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,OAAO;IACT,CAAC;IAED,MAAM,qBAAqB,GACzB,MAAM,CAAC,qBAAqB,IAAI,IAAI,qDAAyB,EAAE,CAAC;IAElE,MAAM,MAAM,GAAG,qBAAqB,CAAC,qBAAqB,EAAE,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,kBAAkB,EAAE,CAAC;IAChE,MAAM,OAAO,GAAG,qBAAqB,CAAC,mBAAmB,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,qBAAqB,CAAC,gBAAgB,EAAE,CAAC;IAEtD,MAAM,YAAY,GAAG,iBAAiB;QACpC,CAAC,CAAC,IAAA,kDAAsB,EAAC,yBAAyB,CAAC,iBAAiB,CAAC,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,IAAI,GAAsB;QAC9B,MAAM;QACN,MAAM;QACN,OAAO;QACP,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;QAC3D,YAAY;QACZ,UAAU,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;KACrD,CAAC;IAEF,eAAe,CAAC,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,EAAE,IAAI,CAAC,CAAC;AAC5E,CAAC,CAAC;AA9BW,QAAA,kBAAkB,sBA8B7B"}
1
+ {"version":3,"file":"machineStatusWriter.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/machineStatusWriter.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"situationFileWriter.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/situationFileWriter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"situationFileWriter.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/situationFileWriter.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,10 @@ exports.cleanStaleTmuxSessions = void 0;
4
4
  const StaleTmuxSessionKillUseCase_1 = require("../../../domain/usecases/StaleTmuxSessionKillUseCase");
5
5
  const NodeTmuxSessionRepository_1 = require("../../repositories/NodeTmuxSessionRepository");
6
6
  const cleanStaleTmuxSessions = async (params) => {
7
- const { project, allowCacheMinutes, issueRepository, localCommandRunner, now, } = params;
7
+ const { project, issueRepository, localCommandRunner, now } = params;
8
8
  const useCase = new StaleTmuxSessionKillUseCase_1.StaleTmuxSessionKillUseCase(issueRepository, new NodeTmuxSessionRepository_1.NodeTmuxSessionRepository(localCommandRunner));
9
9
  await useCase.run({
10
10
  project,
11
- allowCacheMinutes,
12
11
  excludedStatus: StaleTmuxSessionKillUseCase_1.DEFAULT_EXCLUDED_STATUS,
13
12
  idleThresholdSeconds: StaleTmuxSessionKillUseCase_1.DEFAULT_IDLE_THRESHOLD_SECONDS,
14
13
  now,
@@ -1 +1 @@
1
- {"version":3,"file":"staleTmuxSessionCleaner.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/staleTmuxSessionCleaner.ts"],"names":[],"mappings":";;;AAGA,sGAI8D;AAC9D,4FAAyF;AAUlF,MAAM,sBAAsB,GAAG,KAAK,EACzC,MAAoC,EACrB,EAAE;IACjB,MAAM,EACJ,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,GAAG,GACJ,GAAG,MAAM,CAAC;IACX,MAAM,OAAO,GAAG,IAAI,yDAA2B,CAC7C,eAAe,EACf,IAAI,qDAAyB,CAAC,kBAAkB,CAAC,CAClD,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,OAAO;QACP,iBAAiB;QACjB,cAAc,EAAE,qDAAuB;QACvC,oBAAoB,EAAE,4DAA8B;QACpD,GAAG;KACJ,CAAC,CAAC;AACL,CAAC,CAAC;AArBW,QAAA,sBAAsB,0BAqBjC"}
1
+ {"version":3,"file":"staleTmuxSessionCleaner.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/staleTmuxSessionCleaner.ts"],"names":[],"mappings":";;;AAGA,sGAI8D;AAC9D,4FAAyF;AASlF,MAAM,sBAAsB,GAAG,KAAK,EACzC,MAAoC,EACrB,EAAE;IACjB,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC;IACrE,MAAM,OAAO,GAAG,IAAI,yDAA2B,CAC7C,eAAe,EACf,IAAI,qDAAyB,CAAC,kBAAkB,CAAC,CAClD,CAAC;IACF,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,OAAO;QACP,cAAc,EAAE,qDAAuB;QACvC,oBAAoB,EAAE,4DAA8B;QACpD,GAAG;KACJ,CAAC,CAAC;AACL,CAAC,CAAC;AAdW,QAAA,sBAAsB,0BAcjC"}
@@ -44,6 +44,31 @@ class LocalStorageCacheRepository {
44
44
  this.localStorageRepository.write(tmpPath, JSON.stringify(value));
45
45
  this.localStorageRepository.rename(tmpPath, finalPath);
46
46
  };
47
+ this.getSingle = async (key) => {
48
+ const dirPath = `${this.cachePath}/${key}`;
49
+ const fileName = 'latest.json';
50
+ if (!this.localStorageRepository.listFiles(dirPath).includes(fileName)) {
51
+ return null;
52
+ }
53
+ const valueStr = this.localStorageRepository.read(`${dirPath}/${fileName}`);
54
+ if (!valueStr) {
55
+ return null;
56
+ }
57
+ try {
58
+ return JSON.parse(valueStr);
59
+ }
60
+ catch {
61
+ return null;
62
+ }
63
+ };
64
+ this.setSingle = async (key, value) => {
65
+ const dirPath = `${this.cachePath}/${key}`;
66
+ this.localStorageRepository.mkdir(dirPath);
67
+ const finalPath = `${dirPath}/latest.json`;
68
+ const tmpPath = `${finalPath}.${process.pid}.${Math.random().toString(36).slice(2)}.tmp`;
69
+ this.localStorageRepository.write(tmpPath, JSON.stringify(value));
70
+ this.localStorageRepository.rename(tmpPath, finalPath);
71
+ };
47
72
  }
48
73
  }
49
74
  exports.LocalStorageCacheRepository = LocalStorageCacheRepository;
@@ -1 +1 @@
1
- {"version":3,"file":"LocalStorageCacheRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/LocalStorageCacheRepository.ts"],"names":[],"mappings":";;;AAEA,MAAa,2BAA2B;IACtC,YACW,sBAA8C,EAC9C,YAAY,aAAa;QADzB,2BAAsB,GAAtB,sBAAsB,CAAwB;QAC9C,cAAS,GAAT,SAAS,CAAgB;QAGpC,cAAS,GAAG,KAAK,EACf,GAAW,EAIH,EAAE;YACV,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB;iBAC3C,SAAS,CAAC,OAAO,CAAC;iBAClB,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;iBAChD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;iBAClC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAC/C,GAAG,OAAO,IAAI,UAAU,EAAE,CAC3B,CAAC;YACF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,KAAc,CAAC;YACnB,IAAI,CAAC;gBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,OAAO;gBACL,KAAK;gBACL,SAAS,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC;aAClC,CAAC;QACJ,CAAC,CAAC;QACF,QAAG,GAAG,KAAK,EAAK,GAAW,EAAE,KAAQ,EAAiB,EAAE;YACtD,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,SAAS,IAAI,GAAG,EAAE,CAAC;YAC3C,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,GAAG,OAAO,IAAI,SAAS,OAAO,CAAC;YACjD,MAAM,OAAO,GAAG,GAAG,SAAS,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YACzF,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACzD,CAAC,CAAC;IA9CC,CAAC;CA+CL;AAnDD,kEAmDC"}
1
+ {"version":3,"file":"LocalStorageCacheRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/LocalStorageCacheRepository.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.ProcHostMetricsRepository = exports.cycleMinutesFromMtimes = exports.parseLoadAverages = exports.parseDiskUsedPercent = exports.cpuUsedPercentFromSamples = exports.parseCpuSample = exports.parseMemoryUsedPercent = void 0;
36
+ exports.ProcHostMetricsRepository = exports.cycleMinutesFromFetchTimestamps = exports.parseLoadAverages = exports.parseDiskUsedPercent = exports.cpuUsedPercentFromSamples = exports.parseCpuSample = exports.parseMemoryUsedPercent = void 0;
37
37
  const fs = __importStar(require("fs"));
38
38
  const path = __importStar(require("path"));
39
39
  const DEFAULT_PROC_DIRECTORY = '/proc';
@@ -119,13 +119,18 @@ const parseLoadAverages = (loadavgText) => {
119
119
  return { oneMinute, fiveMinute, fifteenMinute };
120
120
  };
121
121
  exports.parseLoadAverages = parseLoadAverages;
122
- const cycleMinutesFromMtimes = (mtimesDescendingSeconds) => {
123
- if (mtimesDescendingSeconds.length < 2) {
122
+ const cycleMinutesFromFetchTimestamps = (previousFetchedAtIso, currentFetchedAtIso) => {
123
+ if (previousFetchedAtIso === null || currentFetchedAtIso === null) {
124
124
  return null;
125
125
  }
126
- return Math.round((mtimesDescendingSeconds[0] - mtimesDescendingSeconds[1]) / 60);
126
+ const previousMs = new Date(previousFetchedAtIso).getTime();
127
+ const currentMs = new Date(currentFetchedAtIso).getTime();
128
+ if (!Number.isFinite(previousMs) || !Number.isFinite(currentMs)) {
129
+ return null;
130
+ }
131
+ return Math.round((currentMs - previousMs) / 60000);
127
132
  };
128
- exports.cycleMinutesFromMtimes = cycleMinutesFromMtimes;
133
+ exports.cycleMinutesFromFetchTimestamps = cycleMinutesFromFetchTimestamps;
129
134
  class ProcHostMetricsRepository {
130
135
  constructor(procDirectory = DEFAULT_PROC_DIRECTORY, sleep = (milliseconds) => new Promise((resolve) => {
131
136
  setTimeout(resolve, milliseconds);
@@ -1 +1 @@
1
- {"version":3,"file":"ProcHostMetricsRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/ProcHostMetricsRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProcHostMetricsRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/ProcHostMetricsRepository.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ApiV3CheerioRestIssueRepository = void 0;
6
+ exports.ApiV3CheerioRestIssueRepository = exports.FULL_ISSUE_FETCH_INTERVAL_MS = void 0;
7
7
  const typia_1 = __importDefault(require("typia"));
8
8
  const BaseGitHubRepository_1 = require("../BaseGitHubRepository");
9
9
  const utils_1 = require("../utils");
10
10
  const githubRateLimitRetry_1 = require("./githubRateLimitRetry");
11
+ exports.FULL_ISSUE_FETCH_INTERVAL_MS = 60 * 60 * 1000;
11
12
  function isIssueTimelineResponse(value) {
12
13
  if (typeof value !== 'object' || value === null)
13
14
  return false;
@@ -162,15 +163,18 @@ const fnmatch = (pattern, str) => {
162
163
  }
163
164
  };
164
165
  class ApiV3CheerioRestIssueRepository extends BaseGitHubRepository_1.BaseGitHubRepository {
165
- constructor(apiV3IssueRepository, restIssueRepository, graphqlProjectItemRepository, localStorageCacheRepository, localStorageRepository, ghToken = process.env.GH_TOKEN || 'dummy', sleep = githubRateLimitRetry_1.realSleep) {
166
+ constructor(apiV3IssueRepository, restIssueRepository, graphqlProjectItemRepository, localStorageCacheRepository, projectRepository, dateRepository, localStorageRepository, ghToken = process.env.GH_TOKEN || 'dummy', sleep = githubRateLimitRetry_1.realSleep) {
166
167
  super(localStorageRepository, ghToken);
167
168
  this.apiV3IssueRepository = apiV3IssueRepository;
168
169
  this.restIssueRepository = restIssueRepository;
169
170
  this.graphqlProjectItemRepository = graphqlProjectItemRepository;
170
171
  this.localStorageCacheRepository = localStorageCacheRepository;
172
+ this.projectRepository = projectRepository;
173
+ this.dateRepository = dateRepository;
171
174
  this.localStorageRepository = localStorageRepository;
172
175
  this.ghToken = ghToken;
173
176
  this.sleep = sleep;
177
+ this.getAllIssuesRefreshMemo = new Map();
174
178
  this.fetchWithRateLimitRetry = (request) => (0, githubRateLimitRetry_1.fetchWithGitHubRateLimitRetry)(request, this.sleep);
175
179
  this.updateStatus = async (project, issue, statusId) => {
176
180
  await this.graphqlProjectItemRepository.updateProjectField(project.id, project.status.fieldId, issue.itemId, { singleSelectOptionId: statusId });
@@ -217,64 +221,120 @@ class ApiV3CheerioRestIssueRepository extends BaseGitHubRepository_1.BaseGitHubR
217
221
  closingIssueReferenceUrls: item.closingIssueReferenceUrls,
218
222
  };
219
223
  };
220
- this.getAllIssuesFromCache = async (cacheKey, allowCacheMinutes) => {
221
- const cache = await this.localStorageCacheRepository.getLatest(cacheKey);
222
- if (cache) {
223
- const now = new Date();
224
- const cacheTimestamp = cache.timestamp;
225
- const diff = now.getTime() - cacheTimestamp.getTime();
226
- if (diff < allowCacheMinutes * 60 * 1000) {
227
- if (!Array.isArray(cache.value)) {
228
- return null;
229
- }
230
- const issues = cache.value
231
- .filter((issue) => typeof issue === 'object')
232
- .map((issue) => {
233
- const nextActionDate = !('nextActionDate' in issue) ||
234
- typeof issue.nextActionDate !== 'string' ||
235
- issue.nextActionDate === null
236
- ? null
237
- : new Date(issue.nextActionDate);
238
- const completionDate50PercentConfidence = !('completionDate50PercentConfidence' in issue) ||
239
- typeof issue.completionDate50PercentConfidence !== 'string'
240
- ? null
241
- : new Date(issue.completionDate50PercentConfidence);
242
- const createdAt = !('createdAt' in issue) || typeof issue.createdAt !== 'string'
243
- ? new Date()
244
- : new Date(issue.createdAt);
245
- const closingIssueReferenceUrls = 'closingIssueReferenceUrls' in issue &&
246
- Array.isArray(issue.closingIssueReferenceUrls) &&
247
- issue.closingIssueReferenceUrls.every((url) => typeof url === 'string')
248
- ? issue.closingIssueReferenceUrls
249
- : [];
250
- return {
251
- ...issue,
252
- nextActionDate: nextActionDate,
253
- completionDate50PercentConfidence: completionDate50PercentConfidence,
254
- createdAt: createdAt,
255
- closingIssueReferenceUrls: closingIssueReferenceUrls,
256
- };
257
- });
258
- if ((() => { const _io0 = input => "string" === typeof input.nameWithOwner && "number" === typeof input.number && "string" === typeof input.title && ("OPEN" === input.state || "CLOSED" === input.state || "MERGED" === input.state) && (null === input.status || "string" === typeof input.status) && (null === input.story || "string" === typeof input.story) && (null === input.nextActionDate || input.nextActionDate instanceof Date) && (null === input.nextActionHour || "number" === typeof input.nextActionHour) && (null === input.estimationMinutes || "number" === typeof input.estimationMinutes) && (Array.isArray(input.dependedIssueUrls) && input.dependedIssueUrls.every(elem => "string" === typeof elem)) && (null === input.completionDate50PercentConfidence || input.completionDate50PercentConfidence instanceof Date) && "string" === typeof input.url && (Array.isArray(input.assignees) && input.assignees.every(elem => "string" === typeof elem)) && (Array.isArray(input.labels) && input.labels.every(elem => "string" === typeof elem)) && "string" === typeof input.org && "string" === typeof input.repo && "string" === typeof input.body && "string" === typeof input.itemId && "boolean" === typeof input.isPr && "boolean" === typeof input.isInProgress && "boolean" === typeof input.isClosed && input.createdAt instanceof Date && "string" === typeof input.author && (Array.isArray(input.closingIssueReferenceUrls) && input.closingIssueReferenceUrls.every(elem => "string" === typeof elem)); return input => Array.isArray(input) && input.every(elem => "object" === typeof elem && null !== elem && _io0(elem)); })()(issues)) {
259
- return issues;
260
- }
261
- }
224
+ this.restoreIssuesFromCache = (rawIssues) => {
225
+ if (!Array.isArray(rawIssues)) {
226
+ return null;
227
+ }
228
+ const issues = rawIssues
229
+ .filter((issue) => typeof issue === 'object' && issue !== null)
230
+ .map((issue) => {
231
+ const nextActionDate = !('nextActionDate' in issue) ||
232
+ typeof issue.nextActionDate !== 'string' ||
233
+ issue.nextActionDate === null
234
+ ? null
235
+ : new Date(issue.nextActionDate);
236
+ const completionDate50PercentConfidence = !('completionDate50PercentConfidence' in issue) ||
237
+ typeof issue.completionDate50PercentConfidence !== 'string'
238
+ ? null
239
+ : new Date(issue.completionDate50PercentConfidence);
240
+ const createdAt = !('createdAt' in issue) || typeof issue.createdAt !== 'string'
241
+ ? new Date()
242
+ : new Date(issue.createdAt);
243
+ const closingIssueReferenceUrls = 'closingIssueReferenceUrls' in issue &&
244
+ Array.isArray(issue.closingIssueReferenceUrls) &&
245
+ issue.closingIssueReferenceUrls.every((url) => typeof url === 'string')
246
+ ? issue.closingIssueReferenceUrls
247
+ : [];
248
+ return {
249
+ ...issue,
250
+ nextActionDate: nextActionDate,
251
+ completionDate50PercentConfidence: completionDate50PercentConfidence,
252
+ createdAt: createdAt,
253
+ closingIssueReferenceUrls: closingIssueReferenceUrls,
254
+ };
255
+ });
256
+ if ((() => { const _io0 = input => "string" === typeof input.nameWithOwner && "number" === typeof input.number && "string" === typeof input.title && ("OPEN" === input.state || "CLOSED" === input.state || "MERGED" === input.state) && (null === input.status || "string" === typeof input.status) && (null === input.story || "string" === typeof input.story) && (null === input.nextActionDate || input.nextActionDate instanceof Date) && (null === input.nextActionHour || "number" === typeof input.nextActionHour) && (null === input.estimationMinutes || "number" === typeof input.estimationMinutes) && (Array.isArray(input.dependedIssueUrls) && input.dependedIssueUrls.every(elem => "string" === typeof elem)) && (null === input.completionDate50PercentConfidence || input.completionDate50PercentConfidence instanceof Date) && "string" === typeof input.url && (Array.isArray(input.assignees) && input.assignees.every(elem => "string" === typeof elem)) && (Array.isArray(input.labels) && input.labels.every(elem => "string" === typeof elem)) && "string" === typeof input.org && "string" === typeof input.repo && "string" === typeof input.body && "string" === typeof input.itemId && "boolean" === typeof input.isPr && "boolean" === typeof input.isInProgress && "boolean" === typeof input.isClosed && input.createdAt instanceof Date && "string" === typeof input.author && (Array.isArray(input.closingIssueReferenceUrls) && input.closingIssueReferenceUrls.every(elem => "string" === typeof elem)); return input => Array.isArray(input) && input.every(elem => "object" === typeof elem && null !== elem && _io0(elem)); })()(issues)) {
257
+ return issues;
262
258
  }
263
259
  return null;
264
260
  };
265
- this.getAllIssues = async (projectId, allowCacheMinutes) => {
266
- const cacheKey = `allIssues-${projectId}`;
267
- const cachedIssues = await this.getAllIssuesFromCache(cacheKey, allowCacheMinutes);
268
- if (cachedIssues) {
269
- return { issues: cachedIssues, cacheUsed: true };
261
+ this.readCachedProjectIssues = async (cacheKey) => {
262
+ const raw = await this.localStorageCacheRepository.getSingle(cacheKey);
263
+ if (typeof raw !== 'object' || raw === null) {
264
+ return null;
265
+ }
266
+ if (!('lastFetchedAt' in raw) ||
267
+ typeof raw.lastFetchedAt !== 'string' ||
268
+ !('lastFullFetchAt' in raw) ||
269
+ typeof raw.lastFullFetchAt !== 'string' ||
270
+ !('project' in raw) ||
271
+ !('issues' in raw)) {
272
+ return null;
273
+ }
274
+ if (!(() => { const _io0 = input => "string" === typeof input.id && "string" === typeof input.url && "number" === typeof input.databaseId && "string" === typeof input.name && ("object" === typeof input.status && null !== input.status && _io1(input.status)) && (null === input.nextActionDate || "object" === typeof input.nextActionDate && null !== input.nextActionDate && _io3(input.nextActionDate)) && (null === input.nextActionHour || "object" === typeof input.nextActionHour && null !== input.nextActionHour && _io4(input.nextActionHour)) && (null === input.story || "object" === typeof input.story && null !== input.story && _io5(input.story)) && (null === input.remainingEstimationMinutes || "object" === typeof input.remainingEstimationMinutes && null !== input.remainingEstimationMinutes && _io7(input.remainingEstimationMinutes)) && (null === input.dependedIssueUrlSeparatedByComma || "object" === typeof input.dependedIssueUrlSeparatedByComma && null !== input.dependedIssueUrlSeparatedByComma && _io8(input.dependedIssueUrlSeparatedByComma)) && (null === input.completionDate50PercentConfidence || "object" === typeof input.completionDate50PercentConfidence && null !== input.completionDate50PercentConfidence && _io9(input.completionDate50PercentConfidence)); const _io1 = input => "string" === typeof input.name && "string" === typeof input.fieldId && (Array.isArray(input.statuses) && input.statuses.every(elem => "object" === typeof elem && null !== elem && _io2(elem))); const _io2 = input => "string" === typeof input.id && "string" === typeof input.name && ("GRAY" === input.color || "BLUE" === input.color || "GREEN" === input.color || "YELLOW" === input.color || "ORANGE" === input.color || "RED" === input.color || "PINK" === input.color || "PURPLE" === input.color) && "string" === typeof input.description; const _io3 = input => "string" === typeof input.name && "string" === typeof input.fieldId; const _io4 = input => "string" === typeof input.name && "string" === typeof input.fieldId; const _io5 = input => "string" === typeof input.name && "string" === typeof input.fieldId && "number" === typeof input.databaseId && (Array.isArray(input.stories) && input.stories.every(elem => "object" === typeof elem && null !== elem && _io2(elem))) && ("object" === typeof input.workflowManagementStory && null !== input.workflowManagementStory && _io6(input.workflowManagementStory)); const _io6 = input => "string" === typeof input.id && "string" === typeof input.name; const _io7 = input => "string" === typeof input.name && "string" === typeof input.fieldId; const _io8 = input => "string" === typeof input.name && "string" === typeof input.fieldId; const _io9 = input => "string" === typeof input.name && "string" === typeof input.fieldId; return input => "object" === typeof input && null !== input && _io0(input); })()(raw.project)) {
275
+ return null;
276
+ }
277
+ const issues = this.restoreIssuesFromCache(raw.issues);
278
+ if (!issues) {
279
+ return null;
280
+ }
281
+ return {
282
+ lastFetchedAt: raw.lastFetchedAt,
283
+ lastFullFetchAt: raw.lastFullFetchAt,
284
+ project: raw.project,
285
+ issues,
286
+ };
287
+ };
288
+ this.toDateString = (date) => `${date.getUTCFullYear()}-${String(date.getUTCMonth() + 1).padStart(2, '0')}-${String(date.getUTCDate()).padStart(2, '0')}`;
289
+ this.getAllIssues = async (projectId) => {
290
+ const memoized = this.getAllIssuesRefreshMemo.get(projectId);
291
+ if (memoized) {
292
+ return memoized;
270
293
  }
271
- const issues = await this.getAllIssuesFromGitHub(projectId);
272
- await this.localStorageCacheRepository.set(cacheKey, issues);
273
- return { issues, cacheUsed: false };
294
+ const result = await this.refreshAllIssues(projectId);
295
+ this.getAllIssuesRefreshMemo.set(projectId, result);
296
+ return result;
274
297
  };
275
- this.getAllIssuesFromGitHub = async (projectId) => {
276
- const items = await this.graphqlProjectItemRepository.fetchProjectItems(projectId);
277
- return items.map((item) => this.convertProjectItemToIssue(item));
298
+ this.refreshAllIssues = async (projectId) => {
299
+ const cacheKey = `allIssues-${projectId}`;
300
+ const now = await this.dateRepository.now();
301
+ const cache = await this.readCachedProjectIssues(cacheKey);
302
+ const isFullFetch = cache === null ||
303
+ now.getTime() - new Date(cache.lastFullFetchAt).getTime() >=
304
+ exports.FULL_ISSUE_FETCH_INTERVAL_MS;
305
+ if (isFullFetch) {
306
+ const project = await this.projectRepository.getProject(projectId);
307
+ if (!project) {
308
+ throw new Error(`Project not found. projectId: ${projectId}`);
309
+ }
310
+ const items = await this.graphqlProjectItemRepository.fetchProjectItems(projectId);
311
+ const issues = items.map((item) => this.convertProjectItemToIssue(item));
312
+ const nowIso = now.toISOString();
313
+ await this.localStorageCacheRepository.setSingle(cacheKey, {
314
+ lastFetchedAt: nowIso,
315
+ lastFullFetchAt: nowIso,
316
+ project,
317
+ issues,
318
+ });
319
+ return { issues, project, cacheUsed: false };
320
+ }
321
+ const project = cache.project;
322
+ const overlapStartDate = new Date(cache.lastFetchedAt);
323
+ overlapStartDate.setUTCDate(overlapStartDate.getUTCDate() - 1);
324
+ const changedItems = await this.graphqlProjectItemRepository.fetchProjectItems(projectId, `updated:>=${this.toDateString(overlapStartDate)}`);
325
+ const issuesByUrl = new Map(cache.issues.map((issue) => [issue.url, issue]));
326
+ for (const item of changedItems) {
327
+ const issue = this.convertProjectItemToIssue(item);
328
+ issuesByUrl.set(issue.url, issue);
329
+ }
330
+ const issues = Array.from(issuesByUrl.values());
331
+ await this.localStorageCacheRepository.setSingle(cacheKey, {
332
+ lastFetchedAt: now.toISOString(),
333
+ lastFullFetchAt: cache.lastFullFetchAt,
334
+ project,
335
+ issues,
336
+ });
337
+ return { issues, project, cacheUsed: true };
278
338
  };
279
339
  this.createNewIssue = async (org, repo, title, body, assignees, labels) => {
280
340
  return await this.restIssueRepository.createNewIssue(org, repo, title, body, assignees, labels);
@@ -701,12 +761,12 @@ class ApiV3CheerioRestIssueRepository extends BaseGitHubRepository_1.BaseGitHubR
701
761
  }
702
762
  return Array.from(relatedPRsMap.values());
703
763
  };
704
- this.getAllOpened = async (project, allowCacheMinutes) => {
705
- const { issues } = await this.getAllIssues(project.id, allowCacheMinutes);
764
+ this.getAllOpened = async (project) => {
765
+ const { issues } = await this.getAllIssues(project.id);
706
766
  return issues.filter((issue) => !issue.isClosed);
707
767
  };
708
- this.getStoryObjectMap = async (project, allowCacheMinutes) => {
709
- const { issues } = await this.getAllIssues(project.id, allowCacheMinutes);
768
+ this.getStoryObjectMap = async (project) => {
769
+ const { issues } = await this.getAllIssues(project.id);
710
770
  const storyObjectMap = new Map();
711
771
  const targetStories = project.story?.stories || [];
712
772
  for (const story of targetStories) {