github-issue-tower-defence-management 2.19.0 → 2.19.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bin/adapter/entry-points/cli/index.js +0 -0
- package/bin/domain/usecases/OauthTokenSelectUseCase.js +1 -1
- package/package.json +5 -1
- package/types/domain/usecases/OauthTokenSelectUseCase.d.ts +1 -1
- package/.env.example +0 -7
- package/.gitattributes +0 -2
- package/.github/CODEOWNERS +0 -6
- package/.github/copilot-instructions.md +0 -6
- package/.github/dependabot.yml +0 -19
- package/.github/instructions/code-review.instructions.md +0 -50
- package/.github/workflows/api-created_issue_pr.yml +0 -97
- package/.github/workflows/ci-failure-issue-creator.yml +0 -48
- package/.github/workflows/close-manual-prs.yml +0 -80
- package/.github/workflows/codeql.yml +0 -107
- package/.github/workflows/commit-lint.yml +0 -85
- package/.github/workflows/configs/commitlint.config.cjs +0 -32
- package/.github/workflows/configs/commitlint.config.js +0 -32
- package/.github/workflows/console-ui.yml +0 -68
- package/.github/workflows/create-pr.yml +0 -116
- package/.github/workflows/empty-format-test-job.yml +0 -34
- package/.github/workflows/format.yml +0 -28
- package/.github/workflows/publish.yml +0 -111
- package/.github/workflows/secret-scan.yml +0 -51
- package/.github/workflows/test.yml +0 -58
- package/.github/workflows/umino-project.yml +0 -207
- package/.gitleaks.toml +0 -22
- package/.prettierignore +0 -31
- package/.prettierrc +0 -5
- package/CHANGELOG.md +0 -4155
- package/CONTRIBUTING.md +0 -60
- package/bin/adapter/entry-points/handlers/resolveUnansweredOwnerCalls.js +0 -12
- package/bin/adapter/entry-points/handlers/resolveUnansweredOwnerCalls.js.map +0 -1
- package/bin/adapter/repositories/FileSystemSilentSessionNotifiedStateRepository.js +0 -125
- package/bin/adapter/repositories/FileSystemSilentSessionNotifiedStateRepository.js.map +0 -1
- package/bin/adapter/repositories/issue/issueTimelineUtils.js +0 -38
- package/bin/adapter/repositories/issue/issueTimelineUtils.js.map +0 -1
- package/bin/domain/entities/UnansweredOwnerCall.js +0 -3
- package/bin/domain/entities/UnansweredOwnerCall.js.map +0 -1
- package/bin/domain/entities/WorkingTime.js +0 -3
- package/bin/domain/entities/WorkingTime.js.map +0 -1
- package/bin/domain/usecases/ChangeStatusLongInReviewIssueUseCase.js +0 -37
- package/bin/domain/usecases/ChangeStatusLongInReviewIssueUseCase.js.map +0 -1
- package/bin/domain/usecases/ConvertCheckboxToIssueInStoryIssueUseCase.js +0 -118
- package/bin/domain/usecases/ConvertCheckboxToIssueInStoryIssueUseCase.js.map +0 -1
- package/bin/domain/usecases/GenerateWorkingTimeReportUseCase.js +0 -180
- package/bin/domain/usecases/GenerateWorkingTimeReportUseCase.js.map +0 -1
- package/bin/domain/usecases/TriagerApprovalDispatchUseCase.js +0 -160
- package/bin/domain/usecases/TriagerApprovalDispatchUseCase.js.map +0 -1
- package/bin/domain/usecases/adapter-interfaces/SilentSessionNotifiedStateRepository.js +0 -3
- package/bin/domain/usecases/adapter-interfaces/SilentSessionNotifiedStateRepository.js.map +0 -1
- package/bin/domain/usecases/awaitingOwnerApprovalMessage.js +0 -7
- package/bin/domain/usecases/awaitingOwnerApprovalMessage.js.map +0 -1
- package/bin/domain/usecases/findLastAgentDeclaringReport.js +0 -12
- package/bin/domain/usecases/findLastAgentDeclaringReport.js.map +0 -1
- package/bin/domain/usecases/isPullRequestDeclaredUnnecessary.js +0 -25
- package/bin/domain/usecases/isPullRequestDeclaredUnnecessary.js.map +0 -1
- package/bin/domain/usecases/isWaitingForOwnerApproval.js +0 -16
- package/bin/domain/usecases/isWaitingForOwnerApproval.js.map +0 -1
- package/bin/domain/usecases/returnedToAwaitingWorkspaceMessage.js +0 -7
- package/bin/domain/usecases/returnedToAwaitingWorkspaceMessage.js.map +0 -1
- package/commitlint.config.js +0 -6
- package/eslint.config.mjs +0 -76
- package/jest.config.js +0 -84
- package/jest.setup.js +0 -1
- package/lib/buffer-equal-constant-time-compat/index.js +0 -17
- package/lib/buffer-equal-constant-time-compat/index.test.js +0 -54
- package/lib/buffer-equal-constant-time-compat/package.json +0 -5
- package/lib/typescript-compat/bin/tsc +0 -2
- package/lib/typescript-compat/bin/tsserver +0 -2
- package/lib/typescript-compat/lib/typescript.js +0 -1
- package/lib/typescript-compat/package.json +0 -13
- package/renovate.json +0 -46
- package/scripts/copyConsoleUiDist.mjs +0 -35
- package/scripts/defaultBranchTipVerify.sh +0 -23
- package/scripts/testWorkflowRunVerify.sh +0 -47
- package/scripts/verifyConsoleUiDist.mjs +0 -96
- package/src/adapter/ci/consoleUiWorkflowTimeout.test.ts +0 -61
- package/src/adapter/ci/publishTestWorkflowGate.test.ts +0 -653
- package/src/adapter/ci/workflowRunCancellation.test.ts +0 -72
- package/src/adapter/entry-points/cli/fleetConfig.test.ts +0 -553
- package/src/adapter/entry-points/cli/fleetConfig.ts +0 -266
- package/src/adapter/entry-points/cli/index.test.ts +0 -2837
- package/src/adapter/entry-points/cli/index.ts +0 -1488
- package/src/adapter/entry-points/cli/projectConfig.test.ts +0 -342
- package/src/adapter/entry-points/cli/projectConfig.ts +0 -500
- package/src/adapter/entry-points/console/consoleAirplaneSnapshotApi.test.ts +0 -658
- package/src/adapter/entry-points/console/consoleAirplaneSnapshotApi.ts +0 -482
- package/src/adapter/entry-points/console/consoleDataDelivery.test.ts +0 -222
- package/src/adapter/entry-points/console/consoleDataDelivery.ts +0 -134
- package/src/adapter/entry-points/console/consoleDoneStore.test.ts +0 -169
- package/src/adapter/entry-points/console/consoleDoneStore.ts +0 -139
- package/src/adapter/entry-points/console/consoleGithubTokenResolver.test.ts +0 -275
- package/src/adapter/entry-points/console/consoleGithubTokenResolver.ts +0 -113
- package/src/adapter/entry-points/console/consoleImageProxy.test.ts +0 -140
- package/src/adapter/entry-points/console/consoleImageProxy.ts +0 -111
- package/src/adapter/entry-points/console/consoleItemUrlLookup.test.ts +0 -63
- package/src/adapter/entry-points/console/consoleItemUrlLookup.ts +0 -66
- package/src/adapter/entry-points/console/consoleOperationApi.test.ts +0 -2523
- package/src/adapter/entry-points/console/consoleOperationApi.ts +0 -936
- package/src/adapter/entry-points/console/consoleProjectResolver.test.ts +0 -246
- package/src/adapter/entry-points/console/consoleProjectResolver.ts +0 -111
- package/src/adapter/entry-points/console/consoleReadApi.test.ts +0 -714
- package/src/adapter/entry-points/console/consoleReadApi.ts +0 -361
- package/src/adapter/entry-points/console/consoleTabNames.test.ts +0 -52
- package/src/adapter/entry-points/console/consoleTabNames.ts +0 -37
- package/src/adapter/entry-points/console/consoleUiDistSync.test.ts +0 -66
- package/src/adapter/entry-points/console/dashboardComposeService.test.ts +0 -595
- package/src/adapter/entry-points/console/dashboardComposeService.ts +0 -256
- package/src/adapter/entry-points/console/dashboardEmitterComposerKey.test.ts +0 -180
- package/src/adapter/entry-points/console/ensureConsoleRunning.test.ts +0 -115
- package/src/adapter/entry-points/console/ensureConsoleRunning.ts +0 -64
- package/src/adapter/entry-points/console/ui/.storybook/main.ts +0 -12
- package/src/adapter/entry-points/console/ui/.storybook/preview.ts +0 -15
- package/src/adapter/entry-points/console/ui/biome.json +0 -53
- package/src/adapter/entry-points/console/ui/components.json +0 -20
- package/src/adapter/entry-points/console/ui/e2e/consoleScenario.spec.ts +0 -725
- package/src/adapter/entry-points/console/ui/e2e/consoleTestHarness.ts +0 -831
- package/src/adapter/entry-points/console/ui/e2e/playwright.config.ts +0 -30
- package/src/adapter/entry-points/console/ui/e2e/tsconfig.json +0 -18
- package/src/adapter/entry-points/console/ui/index.html +0 -12
- package/src/adapter/entry-points/console/ui/jest-globals.cjs +0 -26
- package/src/adapter/entry-points/console/ui/jest.setup.ts +0 -1
- package/src/adapter/entry-points/console/ui/jest.styleMock.js +0 -1
- package/src/adapter/entry-points/console/ui/public/sw.js +0 -60
- package/src/adapter/entry-points/console/ui/src/components/ui/badge.stories.tsx +0 -35
- package/src/adapter/entry-points/console/ui/src/components/ui/badge.tsx +0 -28
- package/src/adapter/entry-points/console/ui/src/components/ui/button.stories.tsx +0 -34
- package/src/adapter/entry-points/console/ui/src/components/ui/button.tsx +0 -50
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleCopyCodeButton.stories.tsx +0 -28
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleCopyCodeButton.test.tsx +0 -65
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleCopyCodeButton.tsx +0 -19
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMarkdownContent.stories.tsx +0 -61
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMarkdownContent.test.tsx +0 -199
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMarkdownContent.tsx +0 -166
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagram.stories.tsx +0 -22
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagram.test.tsx +0 -74
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagram.tsx +0 -84
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagramModalScreen.stories.tsx +0 -27
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagramModalScreen.test.tsx +0 -85
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleMermaidDiagramModalScreen.tsx +0 -97
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleReferenceLink.stories.tsx +0 -76
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleReferenceLink.test.tsx +0 -56
- package/src/adapter/entry-points/console/ui/src/features/console/components/content/ConsoleReferenceLink.tsx +0 -39
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleChangedFileList.stories.tsx +0 -32
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleChangedFileList.test.tsx +0 -105
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleChangedFileList.tsx +0 -157
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.stories.tsx +0 -68
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.test.tsx +0 -612
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentComposer.tsx +0 -276
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentList.stories.tsx +0 -33
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentList.test.tsx +0 -57
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommentList.tsx +0 -76
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommitList.stories.tsx +0 -25
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommitList.test.tsx +0 -55
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCommitList.tsx +0 -49
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCopyUrlButton.stories.tsx +0 -24
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCopyUrlButton.test.tsx +0 -63
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleCopyUrlButton.tsx +0 -19
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFetchFailureAlert.stories.tsx +0 -33
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFetchFailureAlert.test.tsx +0 -62
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFetchFailureAlert.tsx +0 -59
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFileDiff.stories.tsx +0 -38
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFileDiff.test.tsx +0 -151
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleFileDiff.tsx +0 -245
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemDetail.stories.tsx +0 -514
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemDetail.test.tsx +0 -727
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemDetail.tsx +0 -387
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemIcon.stories.tsx +0 -82
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemIcon.test.tsx +0 -52
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsoleItemIcon.tsx +0 -32
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestDetail.stories.tsx +0 -48
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestDetail.test.tsx +0 -235
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestDetail.tsx +0 -145
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestMergeableChip.stories.tsx +0 -29
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestMergeableChip.test.tsx +0 -30
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestMergeableChip.tsx +0 -50
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestStatusBadges.stories.tsx +0 -38
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestStatusBadges.test.tsx +0 -54
- package/src/adapter/entry-points/console/ui/src/features/console/components/detail/ConsolePullRequestStatusBadges.tsx +0 -60
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleAirplaneModeButton.stories.tsx +0 -56
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleAirplaneModeButton.test.tsx +0 -111
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleAirplaneModeButton.tsx +0 -92
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsolePanel.stories.tsx +0 -51
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsolePanel.test.tsx +0 -59
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsolePanel.tsx +0 -39
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTabList.stories.tsx +0 -207
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTabList.test.tsx +0 -332
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTabList.tsx +0 -211
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTimerSettingsModalDialog.stories.tsx +0 -49
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTimerSettingsModalDialog.test.tsx +0 -157
- package/src/adapter/entry-points/console/ui/src/features/console/components/layout/ConsoleTimerSettingsModalDialog.tsx +0 -118
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleCopyStoryNameButton.stories.tsx +0 -23
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleCopyStoryNameButton.test.tsx +0 -40
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleCopyStoryNameButton.tsx +0 -17
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemList.stories.tsx +0 -101
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemList.test.tsx +0 -102
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemList.tsx +0 -75
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.stories.tsx +0 -40
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.test.tsx +0 -213
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.tsx +0 -115
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedItemRow.stories.tsx +0 -50
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedItemRow.test.tsx +0 -98
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedItemRow.tsx +0 -66
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedList.stories.tsx +0 -69
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedList.test.tsx +0 -101
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleQueuedList.tsx +0 -75
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryList.stories.tsx +0 -137
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryList.test.tsx +0 -554
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryList.tsx +0 -400
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryReorderPanel.stories.tsx +0 -30
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryReorderPanel.test.tsx +0 -111
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStoryReorderPanel.tsx +0 -91
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStorySummary.stories.tsx +0 -27
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStorySummary.test.tsx +0 -24
- package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleStorySummary.tsx +0 -28
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleCloseActions.stories.tsx +0 -14
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleCloseActions.test.tsx +0 -21
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleCloseActions.tsx +0 -26
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleDangerousActions.stories.tsx +0 -14
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleDangerousActions.test.tsx +0 -40
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleDangerousActions.tsx +0 -37
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleErrorToast.stories.tsx +0 -33
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.stories.tsx +0 -20
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.test.tsx +0 -48
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleNextActionDateActions.tsx +0 -42
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOfflinePendingActionsPanel.stories.tsx +0 -115
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOfflinePendingActionsPanel.test.tsx +0 -262
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOfflinePendingActionsPanel.tsx +0 -123
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.stories.tsx +0 -65
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.test.tsx +0 -159
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleOperationMenu.tsx +0 -55
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsolePullRequestReviewActions.stories.tsx +0 -20
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsolePullRequestReviewActions.test.tsx +0 -93
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsolePullRequestReviewActions.tsx +0 -45
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleStatusActions.stories.tsx +0 -17
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleStatusActions.test.tsx +0 -49
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleStatusActions.tsx +0 -66
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleUndoToast.stories.tsx +0 -47
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleUndoToast.test.tsx +0 -95
- package/src/adapter/entry-points/console/ui/src/features/console/components/operations/ConsoleUndoToast.tsx +0 -62
- package/src/adapter/entry-points/console/ui/src/features/console/components/shared/ConsoleClipboardCopyButton.stories.tsx +0 -32
- package/src/adapter/entry-points/console/ui/src/features/console/components/shared/ConsoleClipboardCopyButton.test.tsx +0 -101
- package/src/adapter/entry-points/console/ui/src/features/console/components/shared/ConsoleClipboardCopyButton.tsx +0 -80
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useAirplaneMode.test.ts +0 -304
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useAirplaneMode.ts +0 -167
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleActionQueue.test.ts +0 -498
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleActionQueue.ts +0 -277
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleCaches.test.ts +0 -99
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleCaches.ts +0 -90
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleDetailPrefetch.test.ts +0 -110
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleDetailPrefetch.ts +0 -83
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleFeaturesConfig.test.ts +0 -51
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleFeaturesConfig.ts +0 -39
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleItemDetailData.test.ts +0 -229
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleItemDetailData.ts +0 -194
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleNavigation.test.ts +0 -151
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleNavigation.ts +0 -128
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleOperations.test.ts +0 -629
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleOperations.ts +0 -417
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleOverlay.test.ts +0 -40
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleOverlay.ts +0 -71
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsolePjcode.test.ts +0 -24
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsolePjcode.ts +0 -17
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleProjectList.test.ts +0 -97
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleProjectList.ts +0 -44
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleProjectTimer.test.ts +0 -59
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleProjectTimer.ts +0 -26
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleReferenceLink.test.ts +0 -48
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleReferenceLink.ts +0 -39
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleResource.test.ts +0 -41
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleResource.ts +0 -57
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleSwipeNavigation.test.ts +0 -115
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleSwipeNavigation.ts +0 -115
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTabData.test.ts +0 -546
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTabData.ts +0 -278
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTimerSettings.test.ts +0 -110
- package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleTimerSettings.ts +0 -70
- package/src/adapter/entry-points/console/ui/src/features/console/lib/airplaneSnapshot.test.ts +0 -387
- package/src/adapter/entry-points/console/ui/src/features/console/lib/airplaneSnapshot.ts +0 -407
- package/src/adapter/entry-points/console/ui/src/features/console/lib/consoleApi.test.ts +0 -446
- package/src/adapter/entry-points/console/ui/src/features/console/lib/consoleApi.ts +0 -533
- package/src/adapter/entry-points/console/ui/src/features/console/lib/imageProxy.test.ts +0 -78
- package/src/adapter/entry-points/console/ui/src/features/console/lib/imageProxy.ts +0 -34
- package/src/adapter/entry-points/console/ui/src/features/console/lib/markdown.test.ts +0 -252
- package/src/adapter/entry-points/console/ui/src/features/console/lib/markdown.ts +0 -207
- package/src/adapter/entry-points/console/ui/src/features/console/lib/mermaidLoader.test.ts +0 -27
- package/src/adapter/entry-points/console/ui/src/features/console/lib/mermaidLoader.ts +0 -71
- package/src/adapter/entry-points/console/ui/src/features/console/lib/mermaidZoom.test.ts +0 -88
- package/src/adapter/entry-points/console/ui/src/features/console/lib/mermaidZoom.ts +0 -34
- package/src/adapter/entry-points/console/ui/src/features/console/lib/navigation.ts +0 -7
- package/src/adapter/entry-points/console/ui/src/features/console/lib/resourceCache.test.ts +0 -104
- package/src/adapter/entry-points/console/ui/src/features/console/lib/resourceCache.ts +0 -79
- package/src/adapter/entry-points/console/ui/src/features/console/logic/actionToast.test.ts +0 -200
- package/src/adapter/entry-points/console/ui/src/features/console/logic/actionToast.ts +0 -122
- package/src/adapter/entry-points/console/ui/src/features/console/logic/clipboard.test.ts +0 -90
- package/src/adapter/entry-points/console/ui/src/features/console/logic/clipboard.ts +0 -37
- package/src/adapter/entry-points/console/ui/src/features/console/logic/colors.test.ts +0 -34
- package/src/adapter/entry-points/console/ui/src/features/console/logic/colors.ts +0 -85
- package/src/adapter/entry-points/console/ui/src/features/console/logic/diff.test.ts +0 -81
- package/src/adapter/entry-points/console/ui/src/features/console/logic/diff.ts +0 -61
- package/src/adapter/entry-points/console/ui/src/features/console/logic/fileStatus.test.ts +0 -35
- package/src/adapter/entry-points/console/ui/src/features/console/logic/fileStatus.ts +0 -21
- package/src/adapter/entry-points/console/ui/src/features/console/logic/fileTree.test.ts +0 -96
- package/src/adapter/entry-points/console/ui/src/features/console/logic/fileTree.ts +0 -93
- package/src/adapter/entry-points/console/ui/src/features/console/logic/grouping.test.ts +0 -229
- package/src/adapter/entry-points/console/ui/src/features/console/logic/grouping.ts +0 -106
- package/src/adapter/entry-points/console/ui/src/features/console/logic/imageFile.test.ts +0 -18
- package/src/adapter/entry-points/console/ui/src/features/console/logic/imageFile.ts +0 -16
- package/src/adapter/entry-points/console/ui/src/features/console/logic/itemIcons.test.ts +0 -97
- package/src/adapter/entry-points/console/ui/src/features/console/logic/itemIcons.ts +0 -95
- package/src/adapter/entry-points/console/ui/src/features/console/logic/navigation.test.ts +0 -53
- package/src/adapter/entry-points/console/ui/src/features/console/logic/navigation.ts +0 -33
- package/src/adapter/entry-points/console/ui/src/features/console/logic/operations.test.ts +0 -72
- package/src/adapter/entry-points/console/ui/src/features/console/logic/operations.ts +0 -61
- package/src/adapter/entry-points/console/ui/src/features/console/logic/overlay.test.ts +0 -325
- package/src/adapter/entry-points/console/ui/src/features/console/logic/overlay.ts +0 -94
- package/src/adapter/entry-points/console/ui/src/features/console/logic/postedComments.test.ts +0 -44
- package/src/adapter/entry-points/console/ui/src/features/console/logic/postedComments.ts +0 -17
- package/src/adapter/entry-points/console/ui/src/features/console/logic/references.test.ts +0 -103
- package/src/adapter/entry-points/console/ui/src/features/console/logic/references.ts +0 -64
- package/src/adapter/entry-points/console/ui/src/features/console/logic/relativeTime.test.ts +0 -74
- package/src/adapter/entry-points/console/ui/src/features/console/logic/relativeTime.ts +0 -53
- package/src/adapter/entry-points/console/ui/src/features/console/logic/swipe.test.ts +0 -34
- package/src/adapter/entry-points/console/ui/src/features/console/logic/swipe.ts +0 -28
- package/src/adapter/entry-points/console/ui/src/features/console/logic/tabAdvance.test.ts +0 -89
- package/src/adapter/entry-points/console/ui/src/features/console/logic/tabAdvance.ts +0 -30
- package/src/adapter/entry-points/console/ui/src/features/console/logic/timerSettings.test.ts +0 -61
- package/src/adapter/entry-points/console/ui/src/features/console/logic/timerSettings.ts +0 -77
- package/src/adapter/entry-points/console/ui/src/features/console/logic/types.ts +0 -173
- package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsoleItemDetailContainer.test.tsx +0 -629
- package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsoleItemDetailContainer.tsx +0 -351
- package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsolePage.test.tsx +0 -1469
- package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsolePage.tsx +0 -736
- package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsoleReferenceLinkContainer.tsx +0 -25
- package/src/adapter/entry-points/console/ui/src/features/console/testing/fixtures.ts +0 -418
- package/src/adapter/entry-points/console/ui/src/index.css +0 -1592
- package/src/adapter/entry-points/console/ui/src/lib/utils.ts +0 -4
- package/src/adapter/entry-points/console/ui/src/main.tsx +0 -21
- package/src/adapter/entry-points/console/ui/src/vite-env.d.ts +0 -1
- package/src/adapter/entry-points/console/ui/tsconfig.json +0 -26
- package/src/adapter/entry-points/console/ui/vite.config.ts +0 -24
- package/src/adapter/entry-points/console/ui-dist/assets/index-BYDbK1Fj.js +0 -88
- package/src/adapter/entry-points/console/ui-dist/assets/index-KyQISRuQ.css +0 -2
- package/src/adapter/entry-points/console/ui-dist/index.html +0 -13
- package/src/adapter/entry-points/console/ui-dist/sw.js +0 -60
- package/src/adapter/entry-points/console/webServer.test.ts +0 -2945
- package/src/adapter/entry-points/console/webServer.ts +0 -940
- package/src/adapter/entry-points/function/getStoryObjectMap.ts +0 -3
- package/src/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.test.ts +0 -218
- package/src/adapter/entry-points/handlers/FileSystemConsoleTabsRepository.ts +0 -113
- package/src/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.test.ts +0 -110
- package/src/adapter/entry-points/handlers/GetStoryObjectMapUseCaseHandler.ts +0 -116
- package/src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.test.ts +0 -859
- package/src/adapter/entry-points/handlers/HandleScheduledEventUseCaseHandler.ts +0 -984
- package/src/adapter/entry-points/handlers/InTmuxByHumanSessionTokenCountHandler.test.ts +0 -126
- package/src/adapter/entry-points/handlers/InTmuxByHumanSessionTokenCountHandler.ts +0 -80
- package/src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.test.ts +0 -491
- package/src/adapter/entry-points/handlers/LiveSessionOauthTokenSelectHandler.ts +0 -137
- package/src/adapter/entry-points/handlers/OauthTokenSelectHandler.test.ts +0 -508
- package/src/adapter/entry-points/handlers/OauthTokenSelectHandler.ts +0 -156
- package/src/adapter/entry-points/handlers/consoleListsWriter.test.ts +0 -332
- package/src/adapter/entry-points/handlers/consoleListsWriter.ts +0 -60
- package/src/adapter/entry-points/handlers/dashboardRowWriter.test.ts +0 -112
- package/src/adapter/entry-points/handlers/dashboardRowWriter.ts +0 -51
- package/src/adapter/entry-points/handlers/inTmuxByHumanDataWriter.test.ts +0 -285
- package/src/adapter/entry-points/handlers/inTmuxByHumanDataWriter.ts +0 -109
- package/src/adapter/entry-points/handlers/inTmuxByHumanSessionReconciler.test.ts +0 -170
- package/src/adapter/entry-points/handlers/inTmuxByHumanSessionReconciler.ts +0 -40
- package/src/adapter/entry-points/handlers/machineStatusWriter.test.ts +0 -191
- package/src/adapter/entry-points/handlers/machineStatusWriter.ts +0 -110
- package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.test.ts +0 -548
- package/src/adapter/entry-points/handlers/notifySilentTmuxSessions.ts +0 -192
- package/src/adapter/entry-points/handlers/ownerCallFileCleaner.test.ts +0 -111
- package/src/adapter/entry-points/handlers/ownerCallFileCleaner.ts +0 -25
- package/src/adapter/entry-points/handlers/ownerCallFileStore.test.ts +0 -286
- package/src/adapter/entry-points/handlers/ownerCallFileStore.ts +0 -145
- package/src/adapter/entry-points/handlers/ownerReplyMarkerDirectoryResolve.test.ts +0 -55
- package/src/adapter/entry-points/handlers/ownerReplyMarkerDirectoryResolve.ts +0 -36
- package/src/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.test.ts +0 -72
- package/src/adapter/entry-points/handlers/resetDegeneratedTmuxSessions.ts +0 -74
- package/src/adapter/entry-points/handlers/rotationOrderFileWriter.test.ts +0 -181
- package/src/adapter/entry-points/handlers/rotationOrderFileWriter.ts +0 -18
- package/src/adapter/entry-points/handlers/situationFileWriter.test.ts +0 -489
- package/src/adapter/entry-points/handlers/situationFileWriter.ts +0 -176
- package/src/adapter/entry-points/handlers/staleTmuxSessionCleaner.test.ts +0 -169
- package/src/adapter/entry-points/handlers/staleTmuxSessionCleaner.ts +0 -32
- package/src/adapter/entry-points/handlers/subscriptionDisabledTokenHandler.ts +0 -41
- package/src/adapter/entry-points/handlers/tokenExhaustionHandover.ts +0 -81
- package/src/adapter/entry-points/handlers/tokenStatusWriter.test.ts +0 -266
- package/src/adapter/entry-points/handlers/tokenStatusWriter.ts +0 -262
- package/src/adapter/proxy/ClaudeMessageResponseParser.test.ts +0 -211
- package/src/adapter/proxy/ClaudeMessageResponseParser.ts +0 -181
- package/src/adapter/proxy/RateLimitCache.test.ts +0 -1077
- package/src/adapter/proxy/RateLimitCache.ts +0 -385
- package/src/adapter/proxy/TokenListLoader.test.ts +0 -183
- package/src/adapter/proxy/TokenListLoader.ts +0 -75
- package/src/adapter/proxy/ensureProxyRunning.test.ts +0 -85
- package/src/adapter/proxy/ensureProxyRunning.ts +0 -41
- package/src/adapter/proxy/proxyEntry.test.ts +0 -552
- package/src/adapter/proxy/proxyEntry.ts +0 -214
- package/src/adapter/repositories/BaseGitHubRepository.test.ts +0 -26
- package/src/adapter/repositories/BaseGitHubRepository.ts +0 -26
- package/src/adapter/repositories/BrowserGitHubProjectRepository.test.ts +0 -108
- package/src/adapter/repositories/BrowserGitHubProjectRepository.ts +0 -118
- package/src/adapter/repositories/CliGitHubGraphqlRateLimitRepository.test.ts +0 -71
- package/src/adapter/repositories/CliGitHubGraphqlRateLimitRepository.ts +0 -21
- package/src/adapter/repositories/ConfigurableSilentSessionMessageComposer.test.ts +0 -324
- package/src/adapter/repositories/ConfigurableSilentSessionMessageComposer.ts +0 -148
- package/src/adapter/repositories/FetchWebhookRepository.ts +0 -8
- package/src/adapter/repositories/FileHandoverStateRepository.test.ts +0 -114
- package/src/adapter/repositories/FileHandoverStateRepository.ts +0 -73
- package/src/adapter/repositories/FileSystemInteractiveLiveSessionTranscriptResolver.test.ts +0 -514
- package/src/adapter/repositories/FileSystemInteractiveLiveSessionTranscriptResolver.ts +0 -109
- package/src/adapter/repositories/FileSystemKevReportWatermarkRepository.test.ts +0 -284
- package/src/adapter/repositories/FileSystemKevReportWatermarkRepository.ts +0 -128
- package/src/adapter/repositories/FileSystemSessionAssistantTurnsRepository.test.ts +0 -138
- package/src/adapter/repositories/FileSystemSessionAssistantTurnsRepository.ts +0 -113
- package/src/adapter/repositories/FileSystemSessionDegenerationCooldownStateRepository.test.ts +0 -121
- package/src/adapter/repositories/FileSystemSessionDegenerationCooldownStateRepository.ts +0 -103
- package/src/adapter/repositories/FileSystemSessionOutputActivityRepository.test.ts +0 -360
- package/src/adapter/repositories/FileSystemSessionOutputActivityRepository.ts +0 -77
- package/src/adapter/repositories/FileSystemSessionRecordReader.test.ts +0 -59
- package/src/adapter/repositories/FileSystemSessionRecordReader.ts +0 -31
- package/src/adapter/repositories/FileSystemSilentSessionCandidateStateRepository.test.ts +0 -287
- package/src/adapter/repositories/FileSystemSilentSessionCandidateStateRepository.ts +0 -125
- package/src/adapter/repositories/FileSystemSilentSessionHubTaskStatusCacheRepository.test.ts +0 -285
- package/src/adapter/repositories/FileSystemSilentSessionHubTaskStatusCacheRepository.ts +0 -119
- package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.test.ts +0 -237
- package/src/adapter/repositories/FileSystemSubAgentLivenessResolver.ts +0 -57
- package/src/adapter/repositories/FileSystemSubAgentSilentSecondsResolver.test.ts +0 -56
- package/src/adapter/repositories/FileSystemSubAgentSilentSecondsResolver.ts +0 -32
- package/src/adapter/repositories/FileSystemSubAgentTranscriptDirectoryResolver.test.ts +0 -68
- package/src/adapter/repositories/FileSystemSubAgentTranscriptDirectoryResolver.ts +0 -23
- package/src/adapter/repositories/GitHubIssueCheckpointRepository.test.ts +0 -51
- package/src/adapter/repositories/GitHubIssueCheckpointRepository.ts +0 -47
- package/src/adapter/repositories/GitHubIssueCommentRepository.test.ts +0 -278
- package/src/adapter/repositories/GitHubIssueCommentRepository.ts +0 -109
- package/src/adapter/repositories/GoogleSpreadsheetRepository.integration.test.ts +0 -265
- package/src/adapter/repositories/GoogleSpreadsheetRepository.test.ts +0 -431
- package/src/adapter/repositories/GoogleSpreadsheetRepository.ts +0 -268
- package/src/adapter/repositories/GraphqlProjectRepository.diskCache.test.ts +0 -272
- package/src/adapter/repositories/GraphqlProjectRepository.errorHandling.test.ts +0 -111
- package/src/adapter/repositories/GraphqlProjectRepository.fetchProjectId.test.ts +0 -254
- package/src/adapter/repositories/GraphqlProjectRepository.test.ts +0 -209
- package/src/adapter/repositories/GraphqlProjectRepository.ts +0 -707
- package/src/adapter/repositories/GraphqlProjectRepositoryProjectLocation.test.ts +0 -297
- package/src/adapter/repositories/KyHttpRepository.ts +0 -8
- package/src/adapter/repositories/KySlackRepository.test.ts +0 -172
- package/src/adapter/repositories/KySlackRepository.ts +0 -298
- package/src/adapter/repositories/LocalCommandIssueAttachmentRepository.test.ts +0 -193
- package/src/adapter/repositories/LocalCommandIssueAttachmentRepository.ts +0 -106
- package/src/adapter/repositories/LocalProcessLiveSessionProcessSnapshotProvider.test.ts +0 -190
- package/src/adapter/repositories/LocalProcessLiveSessionProcessSnapshotProvider.ts +0 -102
- package/src/adapter/repositories/LocalStorageCacheRepository.test.ts +0 -265
- package/src/adapter/repositories/LocalStorageCacheRepository.ts +0 -79
- package/src/adapter/repositories/LocalStorageRepository.integration.test.ts +0 -142
- package/src/adapter/repositories/LocalStorageRepository.test.ts +0 -173
- package/src/adapter/repositories/LocalStorageRepository.ts +0 -30
- package/src/adapter/repositories/NoUnansweredOwnerCallStatusProvider.test.ts +0 -15
- package/src/adapter/repositories/NoUnansweredOwnerCallStatusProvider.ts +0 -9
- package/src/adapter/repositories/NodeLocalCommandRunner.largeOutput.test.ts +0 -16
- package/src/adapter/repositories/NodeLocalCommandRunner.test.ts +0 -118
- package/src/adapter/repositories/NodeLocalCommandRunner.ts +0 -66
- package/src/adapter/repositories/NodeProcessSignalRepository.test.ts +0 -82
- package/src/adapter/repositories/NodeProcessSignalRepository.ts +0 -47
- package/src/adapter/repositories/NodeSubAgentProcessLister.test.ts +0 -44
- package/src/adapter/repositories/NodeSubAgentProcessLister.ts +0 -40
- package/src/adapter/repositories/NodeTmuxSessionRepository.test.ts +0 -546
- package/src/adapter/repositories/NodeTmuxSessionRepository.ts +0 -245
- package/src/adapter/repositories/OauthAPIClaudeRepository.ts +0 -279
- package/src/adapter/repositories/OauthAPIProxyClaudeRepository.test.ts +0 -166
- package/src/adapter/repositories/OauthAPIProxyClaudeRepository.ts +0 -32
- package/src/adapter/repositories/OauthProxyClaudeRepository.test.ts +0 -428
- package/src/adapter/repositories/OauthProxyClaudeRepository.ts +0 -124
- package/src/adapter/repositories/ProcClaudeHandoverSessionRepository.test.ts +0 -242
- package/src/adapter/repositories/ProcClaudeHandoverSessionRepository.ts +0 -261
- package/src/adapter/repositories/ProcClaudeInteractiveSessionRepository.test.ts +0 -184
- package/src/adapter/repositories/ProcClaudeInteractiveSessionRepository.ts +0 -138
- package/src/adapter/repositories/ProcClaudeLiveSessionRepository.test.ts +0 -208
- package/src/adapter/repositories/ProcClaudeLiveSessionRepository.ts +0 -130
- package/src/adapter/repositories/ProcFsProcessEnvironReader.test.ts +0 -60
- package/src/adapter/repositories/ProcFsProcessEnvironReader.ts +0 -38
- package/src/adapter/repositories/ProcHostMetricsRepository.test.ts +0 -207
- package/src/adapter/repositories/ProcHostMetricsRepository.ts +0 -181
- package/src/adapter/repositories/ProcTakeOwnershipSpawnRepository.test.ts +0 -231
- package/src/adapter/repositories/ProcTakeOwnershipSpawnRepository.ts +0 -134
- package/src/adapter/repositories/ProcessListSessionSubAgentActivityRepository.test.ts +0 -121
- package/src/adapter/repositories/ProcessListSessionSubAgentActivityRepository.ts +0 -58
- package/src/adapter/repositories/ProjectIssuesCacheRepository.test.ts +0 -218
- package/src/adapter/repositories/ProjectIssuesCacheRepository.ts +0 -141
- package/src/adapter/repositories/ProxyClaudeTokenUsageRepository.test.ts +0 -1195
- package/src/adapter/repositories/ProxyClaudeTokenUsageRepository.ts +0 -185
- package/src/adapter/repositories/ProxyRateLimitCacheRepository.test.ts +0 -116
- package/src/adapter/repositories/ProxyRateLimitCacheRepository.ts +0 -67
- package/src/adapter/repositories/RateLimitSnapshotRepository.ts +0 -50
- package/src/adapter/repositories/RealSleeper.test.ts +0 -19
- package/src/adapter/repositories/RealSleeper.ts +0 -12
- package/src/adapter/repositories/RestProjectRepository.test.ts +0 -277
- package/src/adapter/repositories/RestProjectRepository.ts +0 -129
- package/src/adapter/repositories/SqliteClaudeMessageResponseRepository.test.ts +0 -313
- package/src/adapter/repositories/SqliteClaudeMessageResponseRepository.ts +0 -164
- package/src/adapter/repositories/SystemDateRepository.test.ts +0 -60
- package/src/adapter/repositories/SystemDateRepository.ts +0 -34
- package/src/adapter/repositories/TmuxSilentSessionNotificationRepository.test.ts +0 -253
- package/src/adapter/repositories/TmuxSilentSessionNotificationRepository.ts +0 -158
- package/src/adapter/repositories/TranscriptOwnerCallStatusProvider.queuedReply.test.ts +0 -171
- package/src/adapter/repositories/TranscriptOwnerCallStatusProvider.singleScan.test.ts +0 -86
- package/src/adapter/repositories/TranscriptOwnerCallStatusProvider.test.ts +0 -996
- package/src/adapter/repositories/TranscriptOwnerCallStatusProvider.ts +0 -396
- package/src/adapter/repositories/TranscriptRefusalTailStatusProvider.test.ts +0 -208
- package/src/adapter/repositories/TranscriptRefusalTailStatusProvider.ts +0 -80
- package/src/adapter/repositories/TranscriptSessionSubAgentActivityRepository.test.ts +0 -1674
- package/src/adapter/repositories/TranscriptSessionSubAgentActivityRepository.ts +0 -459
- package/src/adapter/repositories/clSessionScopeUnitName.test.ts +0 -76
- package/src/adapter/repositories/clSessionScopeUnitName.ts +0 -5
- package/src/adapter/repositories/clSessionScopeUnitNameFromCgroupContent.test.ts +0 -34
- package/src/adapter/repositories/clSessionScopeUnitNameFromCgroupContent.ts +0 -8
- package/src/adapter/repositories/githubGraphqlClient.test.ts +0 -479
- package/src/adapter/repositories/githubGraphqlClient.ts +0 -243
- package/src/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.test.ts +0 -5182
- package/src/adapter/repositories/issue/ApiV3CheerioRestIssueRepository.ts +0 -3303
- package/src/adapter/repositories/issue/ApiV3IssueRepository.test.ts +0 -46
- package/src/adapter/repositories/issue/ApiV3IssueRepository.ts +0 -88
- package/src/adapter/repositories/issue/GraphqlProjectItemRepository.test.ts +0 -1776
- package/src/adapter/repositories/issue/GraphqlProjectItemRepository.ts +0 -1552
- package/src/adapter/repositories/issue/RestIssueRepository.test.ts +0 -393
- package/src/adapter/repositories/issue/RestIssueRepository.ts +0 -252
- package/src/adapter/repositories/issue/gitHubRawUrl.test.ts +0 -29
- package/src/adapter/repositories/issue/gitHubRawUrl.ts +0 -30
- package/src/adapter/repositories/issue/githubRateLimitRetry.test.ts +0 -167
- package/src/adapter/repositories/issue/githubRateLimitRetry.ts +0 -109
- package/src/adapter/repositories/localStorageCacheDirectory.test.ts +0 -81
- package/src/adapter/repositories/localStorageCacheDirectory.ts +0 -13
- package/src/adapter/repositories/projectFieldDefinition.test.ts +0 -191
- package/src/adapter/repositories/projectFieldDefinition.ts +0 -144
- package/src/adapter/repositories/utils.test.ts +0 -55
- package/src/adapter/repositories/utils.ts +0 -45
- package/src/domain/entities/ClaudeHandoverSession.ts +0 -12
- package/src/domain/entities/ClaudeMessageResponse.ts +0 -31
- package/src/domain/entities/ClaudeTokenUsage.ts +0 -17
- package/src/domain/entities/ClaudeWindowUsage.ts +0 -5
- package/src/domain/entities/Comment.ts +0 -5
- package/src/domain/entities/InteractiveLiveSession.ts +0 -6
- package/src/domain/entities/Issue.ts +0 -31
- package/src/domain/entities/KevReportWatermark.ts +0 -4
- package/src/domain/entities/LiveSessionActivitySnapshot.ts +0 -14
- package/src/domain/entities/LiveSessionOutputActivity.ts +0 -4
- package/src/domain/entities/LiveSessionProcessSnapshot.ts +0 -18
- package/src/domain/entities/LiveTmuxSession.ts +0 -4
- package/src/domain/entities/Member.ts +0 -3
- package/src/domain/entities/OutputDegeneration.ts +0 -10
- package/src/domain/entities/Project.ts +0 -88
- package/src/domain/entities/ProjectField.ts +0 -3
- package/src/domain/entities/ProjectFieldName.ts +0 -2
- package/src/domain/entities/ProjectFieldSingleSelect.ts +0 -8
- package/src/domain/entities/ProjectFieldSingleSelectOption.ts +0 -8
- package/src/domain/entities/RequiredProjectField.ts +0 -68
- package/src/domain/entities/SearchedIssue.ts +0 -11
- package/src/domain/entities/StoryObjectMap.ts +0 -12
- package/src/domain/entities/TokenExhaustionHandoverState.ts +0 -8
- package/src/domain/entities/WorkflowStatus.ts +0 -66
- package/src/domain/usecases/ActionAnnouncementUseCase.test.ts +0 -91
- package/src/domain/usecases/ActionAnnouncementUseCase.ts +0 -78
- package/src/domain/usecases/AgentDesignationLabelAdoptUseCase.test.ts +0 -222
- package/src/domain/usecases/AgentDesignationLabelAdoptUseCase.ts +0 -76
- package/src/domain/usecases/AnalyzeProblemByIssueUseCase.test.ts +0 -118
- package/src/domain/usecases/AnalyzeProblemByIssueUseCase.ts +0 -112
- package/src/domain/usecases/AnalyzeStoriesUseCase.test.ts +0 -82
- package/src/domain/usecases/AnalyzeStoriesUseCase.ts +0 -296
- package/src/domain/usecases/AssignNoAssigneeIssueToManagerUseCase.test.ts +0 -578
- package/src/domain/usecases/AssignNoAssigneeIssueToManagerUseCase.ts +0 -137
- package/src/domain/usecases/CONTRIBUTING_FOR_TEST.md +0 -259
- package/src/domain/usecases/ChangeStatusByStoryColorUseCase.test.ts +0 -437
- package/src/domain/usecases/ChangeStatusByStoryColorUseCase.ts +0 -80
- package/src/domain/usecases/ChangeTargetPullRequestApprover.test.ts +0 -248
- package/src/domain/usecases/ChangeTargetPullRequestApprover.ts +0 -69
- package/src/domain/usecases/CheckIssueReviewReadinessUseCase.test.ts +0 -411
- package/src/domain/usecases/CheckIssueReviewReadinessUseCase.ts +0 -142
- package/src/domain/usecases/ClearDependedIssueURLUseCase.test.ts +0 -1120
- package/src/domain/usecases/ClearDependedIssueURLUseCase.ts +0 -161
- package/src/domain/usecases/ClearPastNextActionDateHourUseCase.test.ts +0 -345
- package/src/domain/usecases/ClearPastNextActionDateHourUseCase.ts +0 -81
- package/src/domain/usecases/CliErrorReportUseCase.test.ts +0 -162
- package/src/domain/usecases/CliErrorReportUseCase.ts +0 -72
- package/src/domain/usecases/ConflictedIssueRevertUseCase.test.ts +0 -886
- package/src/domain/usecases/ConflictedIssueRevertUseCase.ts +0 -146
- package/src/domain/usecases/CreateEstimationIssueUseCase.test.ts +0 -227
- package/src/domain/usecases/CreateEstimationIssueUseCase.ts +0 -205
- package/src/domain/usecases/CreateNewStoryByLabelUseCase.test.ts +0 -1084
- package/src/domain/usecases/CreateNewStoryByLabelUseCase.ts +0 -146
- package/src/domain/usecases/DailySecurityScanUseCase.test.ts +0 -1709
- package/src/domain/usecases/DailySecurityScanUseCase.ts +0 -476
- package/src/domain/usecases/DefaultSilentSessionMessageComposer.test.ts +0 -533
- package/src/domain/usecases/DefaultSilentSessionMessageComposer.ts +0 -122
- package/src/domain/usecases/GetStoryObjectMapUseCase.test.ts +0 -330
- package/src/domain/usecases/GetStoryObjectMapUseCase.ts +0 -79
- package/src/domain/usecases/HandleScheduledEventUseCase.test.ts +0 -1913
- package/src/domain/usecases/HandleScheduledEventUseCase.ts +0 -846
- package/src/domain/usecases/InTmuxByHumanSessionTokenCountUseCase.test.ts +0 -175
- package/src/domain/usecases/InTmuxByHumanSessionTokenCountUseCase.ts +0 -63
- package/src/domain/usecases/IssueNoStatusUpdateUseCase.test.ts +0 -165
- package/src/domain/usecases/IssueNoStatusUpdateUseCase.ts +0 -44
- package/src/domain/usecases/IssueRejectionEvaluator.test.ts +0 -1137
- package/src/domain/usecases/IssueRejectionEvaluator.ts +0 -340
- package/src/domain/usecases/LiveSessionOauthTokenSelectUseCase.test.ts +0 -679
- package/src/domain/usecases/LiveSessionOauthTokenSelectUseCase.ts +0 -178
- package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.test.ts +0 -5441
- package/src/domain/usecases/NotifyFinishedIssuePreparationUseCase.ts +0 -891
- package/src/domain/usecases/NotifySilentLiveSessionsUseCase.test.ts +0 -2069
- package/src/domain/usecases/NotifySilentLiveSessionsUseCase.ts +0 -489
- package/src/domain/usecases/OauthTokenSelectUseCase.test.ts +0 -651
- package/src/domain/usecases/OauthTokenSelectUseCase.ts +0 -274
- package/src/domain/usecases/OutputDegenerationDetector.test.ts +0 -167
- package/src/domain/usecases/OutputDegenerationDetector.ts +0 -169
- package/src/domain/usecases/ProjectRequiredFieldCreateUseCase.test.ts +0 -711
- package/src/domain/usecases/ProjectRequiredFieldCreateUseCase.ts +0 -146
- package/src/domain/usecases/QualityCheckAdvanceUseCase.test.ts +0 -421
- package/src/domain/usecases/QualityCheckAdvanceUseCase.ts +0 -76
- package/src/domain/usecases/ReopenedDoneIssueRevertUseCase.test.ts +0 -188
- package/src/domain/usecases/ReopenedDoneIssueRevertUseCase.ts +0 -57
- package/src/domain/usecases/ResolveInteractiveLiveSessionsUseCase.test.ts +0 -303
- package/src/domain/usecases/ResolveInteractiveLiveSessionsUseCase.ts +0 -155
- package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.test.ts +0 -1838
- package/src/domain/usecases/RevertNotReadyReviewQueueIssueUseCase.ts +0 -221
- package/src/domain/usecases/RevertOrphanedPreparationUseCase.test.ts +0 -2392
- package/src/domain/usecases/RevertOrphanedPreparationUseCase.ts +0 -499
- package/src/domain/usecases/SessionOutputDegenerationRecoveryUseCase.test.ts +0 -224
- package/src/domain/usecases/SessionOutputDegenerationRecoveryUseCase.ts +0 -142
- package/src/domain/usecases/SetDependedIssueUrlForOpenTaskPRsUseCase.test.ts +0 -360
- package/src/domain/usecases/SetDependedIssueUrlForOpenTaskPRsUseCase.ts +0 -70
- package/src/domain/usecases/SetNoStoryIssueToStoryUseCase.test.ts +0 -400
- package/src/domain/usecases/SetNoStoryIssueToStoryUseCase.ts +0 -48
- package/src/domain/usecases/SetWorkflowManagementIssueToStoryUseCase.test.ts +0 -696
- package/src/domain/usecases/SetWorkflowManagementIssueToStoryUseCase.ts +0 -201
- package/src/domain/usecases/SetupTowerDefenceProjectUseCase.test.ts +0 -1363
- package/src/domain/usecases/SetupTowerDefenceProjectUseCase.ts +0 -215
- package/src/domain/usecases/StaleTaskPullRequestCloseUseCase.test.ts +0 -170
- package/src/domain/usecases/StaleTaskPullRequestCloseUseCase.ts +0 -38
- package/src/domain/usecases/StaleTmuxSessionKillUseCase.test.ts +0 -283
- package/src/domain/usecases/StaleTmuxSessionKillUseCase.ts +0 -98
- package/src/domain/usecases/StartPreparationUseCase.test.ts +0 -7822
- package/src/domain/usecases/StartPreparationUseCase.ts +0 -876
- package/src/domain/usecases/SubscriptionDisabledIssueUseCase.test.ts +0 -200
- package/src/domain/usecases/SubscriptionDisabledIssueUseCase.ts +0 -74
- package/src/domain/usecases/TokenExhaustionHandoverUseCase.test.ts +0 -838
- package/src/domain/usecases/TokenExhaustionHandoverUseCase.ts +0 -439
- package/src/domain/usecases/UpdateIssueStatusByLabelUseCase.test.ts +0 -306
- package/src/domain/usecases/UpdateIssueStatusByLabelUseCase.ts +0 -64
- package/src/domain/usecases/UpdateRateLimitCacheUseCase.test.ts +0 -178
- package/src/domain/usecases/UpdateRateLimitCacheUseCase.ts +0 -22
- package/src/domain/usecases/adapter-interfaces/ClaudeHandoverSessionRepository.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/ClaudeInteractiveSessionRepository.ts +0 -9
- package/src/domain/usecases/adapter-interfaces/ClaudeLiveSessionRepository.ts +0 -8
- package/src/domain/usecases/adapter-interfaces/ClaudeMessageResponseRepository.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/ClaudeRepository.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/ClaudeTokenUsageRepository.ts +0 -8
- package/src/domain/usecases/adapter-interfaces/ConsoleTabsRepository.ts +0 -12
- package/src/domain/usecases/adapter-interfaces/CopilotRepository.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/DateRepository.ts +0 -7
- package/src/domain/usecases/adapter-interfaces/GitHubGraphqlRateLimitRepository.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/HttpRepository.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/InteractiveLiveSessionTranscriptResolver.ts +0 -7
- package/src/domain/usecases/adapter-interfaces/IssueAttachmentRepository.ts +0 -9
- package/src/domain/usecases/adapter-interfaces/IssueCheckpointRepository.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/IssueCommentRepository.ts +0 -7
- package/src/domain/usecases/adapter-interfaces/IssueRepository.ts +0 -229
- package/src/domain/usecases/adapter-interfaces/KevReportWatermarkRepository.ts +0 -11
- package/src/domain/usecases/adapter-interfaces/LiveSessionProcessSnapshotProvider.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/LocalCommandRunner.ts +0 -16
- package/src/domain/usecases/adapter-interfaces/OwnerCallStatusProvider.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/ProcessEnvironReader.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/ProcessSignalRepository.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/ProjectRepository.ts +0 -29
- package/src/domain/usecases/adapter-interfaces/RateLimitCacheRepository.ts +0 -10
- package/src/domain/usecases/adapter-interfaces/RefusalTailStatusProvider.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/SessionAssistantTurnsRepository.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/SessionDegenerationCooldownStateRepository.ts +0 -4
- package/src/domain/usecases/adapter-interfaces/SessionOutputActivityRepository.ts +0 -7
- package/src/domain/usecases/adapter-interfaces/SessionRecordReader.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/SessionSubAgentActivityRepository.ts +0 -8
- package/src/domain/usecases/adapter-interfaces/SilentSessionCandidateStateRepository.ts +0 -10
- package/src/domain/usecases/adapter-interfaces/SilentSessionHubTaskStatusCacheRepository.ts +0 -20
- package/src/domain/usecases/adapter-interfaces/SilentSessionMessageComposer.ts +0 -18
- package/src/domain/usecases/adapter-interfaces/SilentSessionNotificationRepository.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/SlackRepository.ts +0 -20
- package/src/domain/usecases/adapter-interfaces/Sleeper.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/SpreadsheetRepository.ts +0 -18
- package/src/domain/usecases/adapter-interfaces/StatusDefaultRepository.ts +0 -5
- package/src/domain/usecases/adapter-interfaces/SubAgentLivenessResolver.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/SubAgentProcessLister.ts +0 -8
- package/src/domain/usecases/adapter-interfaces/SubAgentSilentSecondsResolver.ts +0 -3
- package/src/domain/usecases/adapter-interfaces/SubAgentTranscriptDirectoryResolver.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/TakeOwnershipSpawnRepository.ts +0 -9
- package/src/domain/usecases/adapter-interfaces/TmuxSessionRepository.ts +0 -20
- package/src/domain/usecases/adapter-interfaces/TokenExhaustionHandoverStateRepository.ts +0 -6
- package/src/domain/usecases/adapter-interfaces/TokenRateLimitSnapshotRepository.ts +0 -22
- package/src/domain/usecases/adapter-interfaces/WebhookRepository.ts +0 -3
- package/src/domain/usecases/agentReportPrefix.ts +0 -1
- package/src/domain/usecases/autoStatusCheckComments.ts +0 -1
- package/src/domain/usecases/console/.gitkeep +0 -0
- package/src/domain/usecases/console/GenerateConsoleListsUseCase.test.ts +0 -887
- package/src/domain/usecases/console/GenerateConsoleListsUseCase.ts +0 -368
- package/src/domain/usecases/dashboard/ComposeDashboardUseCase.test.ts +0 -654
- package/src/domain/usecases/dashboard/ComposeDashboardUseCase.ts +0 -318
- package/src/domain/usecases/dashboard/DashboardProjectCode.test.ts +0 -34
- package/src/domain/usecases/dashboard/DashboardProjectCode.ts +0 -27
- package/src/domain/usecases/dashboard/GenerateDashboardRowUseCase.test.ts +0 -160
- package/src/domain/usecases/dashboard/GenerateDashboardRowUseCase.ts +0 -69
- package/src/domain/usecases/dashboard/GenerateTokenStatusUseCase.test.ts +0 -362
- package/src/domain/usecases/dashboard/GenerateTokenStatusUseCase.ts +0 -234
- package/src/domain/usecases/ensureAgentOptionAndGetId.ts +0 -47
- package/src/domain/usecases/extractFencedJsonBlocks.test.ts +0 -40
- package/src/domain/usecases/extractFencedJsonBlocks.ts +0 -21
- package/src/domain/usecases/extractNextStepAgent.test.ts +0 -58
- package/src/domain/usecases/extractNextStepAgent.ts +0 -18
- package/src/domain/usecases/extractNextStepAgentFromComments.ts +0 -13
- package/src/domain/usecases/findLastAgentReport.test.ts +0 -121
- package/src/domain/usecases/findLastAgentReport.ts +0 -14
- package/src/domain/usecases/intmux/GenerateInTmuxByHumanDataUseCase.test.ts +0 -339
- package/src/domain/usecases/intmux/GenerateInTmuxByHumanDataUseCase.ts +0 -188
- package/src/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.test.ts +0 -389
- package/src/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.ts +0 -103
- package/src/domain/usecases/intmux/OwnerCallFile.test.ts +0 -184
- package/src/domain/usecases/intmux/OwnerCallFile.ts +0 -80
- package/src/domain/usecases/isAgentReportBody.test.ts +0 -108
- package/src/domain/usecases/isAgentReportBody.ts +0 -52
- package/src/domain/usecases/isAuthorAuthorizedForAutoStatusCheck.ts +0 -12
- package/src/domain/usecases/isHumanComment.test.ts +0 -77
- package/src/domain/usecases/isHumanComment.ts +0 -23
- package/src/domain/usecases/isRecord.ts +0 -2
- package/src/domain/usecases/issueReactivationTriggerIsPending.test.ts +0 -541
- package/src/domain/usecases/issueReactivationTriggerIsPending.ts +0 -25
- package/src/domain/usecases/nextStepAgentDispatchRepeatedMessage.ts +0 -2
- package/src/domain/usecases/normalizeReportBody.test.ts +0 -24
- package/src/domain/usecases/normalizeReportBody.ts +0 -2
- package/src/domain/usecases/resolveAllowedIssueAuthors.test.ts +0 -51
- package/src/domain/usecases/resolveAllowedIssueAuthors.ts +0 -6
- package/src/domain/usecases/resolveLabelsAsLlmAgentName.test.ts +0 -42
- package/src/domain/usecases/resolveLabelsAsLlmAgentName.ts +0 -6
- package/src/domain/usecases/resolveLabelsNotRequiringPullRequest.test.ts +0 -33
- package/src/domain/usecases/resolveLabelsNotRequiringPullRequest.ts +0 -7
- package/src/domain/usecases/resolveNextStepAgentDispatchRepetition.test.ts +0 -337
- package/src/domain/usecases/resolveNextStepAgentDispatchRepetition.ts +0 -133
- package/src/domain/usecases/silentSessionReminderSentinel.ts +0 -9
- package/src/domain/usecases/triagerAgentName.ts +0 -4
- package/src/domain/usecases/utils.test.ts +0 -35
- package/src/domain/usecases/utils.ts +0 -6
- package/src/index.test.ts +0 -8
- package/src/index.ts +0 -10
- package/src/releaseConfig.test.ts +0 -40
- package/tsconfig.build.json +0 -18
- package/tsconfig.json +0 -25
- package/types/adapter/entry-points/handlers/resolveUnansweredOwnerCalls.d.ts +0 -13
- package/types/adapter/entry-points/handlers/resolveUnansweredOwnerCalls.d.ts.map +0 -1
- package/types/adapter/repositories/FileSystemSilentSessionNotifiedStateRepository.d.ts +0 -16
- package/types/adapter/repositories/FileSystemSilentSessionNotifiedStateRepository.d.ts.map +0 -1
- package/types/adapter/repositories/issue/issueTimelineUtils.d.ts +0 -12
- package/types/adapter/repositories/issue/issueTimelineUtils.d.ts.map +0 -1
- package/types/domain/entities/UnansweredOwnerCall.d.ts +0 -5
- package/types/domain/entities/UnansweredOwnerCall.d.ts.map +0 -1
- package/types/domain/entities/WorkingTime.d.ts +0 -8
- package/types/domain/entities/WorkingTime.d.ts.map +0 -1
- package/types/domain/usecases/ChangeStatusLongInReviewIssueUseCase.d.ts +0 -17
- package/types/domain/usecases/ChangeStatusLongInReviewIssueUseCase.d.ts.map +0 -1
- package/types/domain/usecases/ConvertCheckboxToIssueInStoryIssueUseCase.d.ts +0 -23
- package/types/domain/usecases/ConvertCheckboxToIssueInStoryIssueUseCase.d.ts.map +0 -1
- package/types/domain/usecases/GenerateWorkingTimeReportUseCase.d.ts +0 -50
- package/types/domain/usecases/GenerateWorkingTimeReportUseCase.d.ts.map +0 -1
- package/types/domain/usecases/TriagerApprovalDispatchUseCase.d.ts +0 -15
- package/types/domain/usecases/TriagerApprovalDispatchUseCase.d.ts.map +0 -1
- package/types/domain/usecases/adapter-interfaces/SilentSessionNotifiedStateRepository.d.ts +0 -11
- package/types/domain/usecases/adapter-interfaces/SilentSessionNotifiedStateRepository.d.ts.map +0 -1
- package/types/domain/usecases/awaitingOwnerApprovalMessage.d.ts +0 -3
- package/types/domain/usecases/awaitingOwnerApprovalMessage.d.ts.map +0 -1
- package/types/domain/usecases/findLastAgentDeclaringReport.d.ts +0 -5
- package/types/domain/usecases/findLastAgentDeclaringReport.d.ts.map +0 -1
- package/types/domain/usecases/isPullRequestDeclaredUnnecessary.d.ts +0 -5
- package/types/domain/usecases/isPullRequestDeclaredUnnecessary.d.ts.map +0 -1
- package/types/domain/usecases/isWaitingForOwnerApproval.d.ts +0 -2
- package/types/domain/usecases/isWaitingForOwnerApproval.d.ts.map +0 -1
- package/types/domain/usecases/returnedToAwaitingWorkspaceMessage.d.ts +0 -3
- package/types/domain/usecases/returnedToAwaitingWorkspaceMessage.d.ts.map +0 -1
package/CONTRIBUTING.md
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
# CONTRIBUTING
|
|
2
|
-
|
|
3
|
-
First off, thank you for considering contributing to our project. We value all our contributors and the insights they bring to the table.
|
|
4
|
-
|
|
5
|
-
## Table of Contents
|
|
6
|
-
|
|
7
|
-
- [Code of Conduct](#code-of-conduct)
|
|
8
|
-
- [Coding Guidelines](#coding-guidelines)
|
|
9
|
-
- [Clean Architecture Rules](#clean-architecture-rules)
|
|
10
|
-
- [Type-Safe Programming](#type-safe-programming)
|
|
11
|
-
- [Writing Tests](#writing-tests)
|
|
12
|
-
- [How to Submit Changes](#how-to-submit-changes)
|
|
13
|
-
- [Recognition](#recognition)
|
|
14
|
-
- [Getting Help](#getting-help)
|
|
15
|
-
|
|
16
|
-
## Code of Conduct
|
|
17
|
-
|
|
18
|
-
We expect everyone participating in this project to adhere to our Code of Conduct. Below are the main points, but we encourage you to read the full Code of Conduct.
|
|
19
|
-
|
|
20
|
-
- Treat everyone with respect.
|
|
21
|
-
- Avoid making assumptions about other people's identities and experiences.
|
|
22
|
-
- Keep criticism constructive and respectful.
|
|
23
|
-
- Report any incidents of harassment or inappropriate behavior to the project maintainers.
|
|
24
|
-
|
|
25
|
-
## Coding Guidelines
|
|
26
|
-
|
|
27
|
-
### Clean Architecture Rules
|
|
28
|
-
|
|
29
|
-
Our project follows the principles of Clean Architecture. This means that we separate concerns, make the project independent of any frameworks, and make it testable and independent of the UI.
|
|
30
|
-
|
|
31
|
-
In addition, our domain layer should not depend on the adapter layer. Please ensure that any contributions you make maintain this separation and adhere to these principles.
|
|
32
|
-
|
|
33
|
-
### Type-Safe Programming
|
|
34
|
-
|
|
35
|
-
We aim for a type-safe programming style, so please avoid using `any` or `as`. Instead, use type guards or other means to determine types.
|
|
36
|
-
|
|
37
|
-
### Code Style
|
|
38
|
-
|
|
39
|
-
- As a general rule, please refrain from writing comments in source code whenever possible.
|
|
40
|
-
- Your first approach should be to make your variable and function names as descriptive and self-explanatory as possible.
|
|
41
|
-
- Only when this is not sufficient, and the functionality or purpose of the code is not immediately clear, should comments be used.
|
|
42
|
-
- We encourage the use of the arrow function style as much as possible. It offers a more concise syntax and aligns with contemporary JavaScript practices. Please favor this style when contributing to our codebase.
|
|
43
|
-
|
|
44
|
-
## How to Submit Changes
|
|
45
|
-
|
|
46
|
-
Once you've identified a bug or an enhancement you'd like to work on, follow these steps to make and submit your changes:
|
|
47
|
-
|
|
48
|
-
1. Fork the repository.
|
|
49
|
-
2. Create a new branch.
|
|
50
|
-
3. Make your changes, ensuring you follow our coding conventions and style guide.
|
|
51
|
-
4. Write tests for your changes.
|
|
52
|
-
5. Submit a pull request.
|
|
53
|
-
|
|
54
|
-
Please note that we may take a while to respond, but we appreciate your patience. We aim to make the contribution process as transparent as possible and will keep you updated every step of the way.
|
|
55
|
-
|
|
56
|
-
## Getting Help
|
|
57
|
-
|
|
58
|
-
If you need help or have any questions, please create an issue in the project's GitHub repository. We aim to respond to issues promptly and appreciate your patience.
|
|
59
|
-
|
|
60
|
-
Again, thank you for considering contributing to our project. Your input is valuable, and we look forward to working with you.
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.resolveUnansweredOwnerCallsByTmuxSessionName = void 0;
|
|
4
|
-
const ResolveInteractiveLiveSessionsUseCase_1 = require("../../../domain/usecases/ResolveInteractiveLiveSessionsUseCase");
|
|
5
|
-
const resolveUnansweredOwnerCallsByTmuxSessionName = async (params) => {
|
|
6
|
-
const snapshot = await params.liveSessionProcessSnapshotProvider.getSnapshot();
|
|
7
|
-
const interactiveSessions = new ResolveInteractiveLiveSessionsUseCase_1.ResolveInteractiveLiveSessionsUseCase().resolve(snapshot);
|
|
8
|
-
const transcriptPathBySessionName = params.interactiveLiveSessionTranscriptResolver.resolveTranscriptPaths(interactiveSessions);
|
|
9
|
-
return params.unansweredOwnerCallListProvider.listUnansweredOwnerCallsBySessionName(transcriptPathBySessionName);
|
|
10
|
-
};
|
|
11
|
-
exports.resolveUnansweredOwnerCallsByTmuxSessionName = resolveUnansweredOwnerCallsByTmuxSessionName;
|
|
12
|
-
//# sourceMappingURL=resolveUnansweredOwnerCalls.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolveUnansweredOwnerCalls.js","sourceRoot":"","sources":["../../../../src/adapter/entry-points/handlers/resolveUnansweredOwnerCalls.ts"],"names":[],"mappings":";;;AAEA,0HAAuH;AAgBhH,MAAM,4CAA4C,GAAG,KAAK,EAC/D,MAAyC,EACI,EAAE;IAC/C,MAAM,QAAQ,GACZ,MAAM,MAAM,CAAC,kCAAkC,CAAC,WAAW,EAAE,CAAC;IAChE,MAAM,mBAAmB,GACvB,IAAI,6EAAqC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChE,MAAM,2BAA2B,GAC/B,MAAM,CAAC,wCAAwC,CAAC,sBAAsB,CACpE,mBAAmB,CACpB,CAAC;IACJ,OAAO,MAAM,CAAC,+BAA+B,CAAC,qCAAqC,CACjF,2BAA2B,CAC5B,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,4CAA4C,gDAcvD"}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.FileSystemSilentSessionNotifiedStateRepository = void 0;
|
|
37
|
-
const fs = __importStar(require("fs"));
|
|
38
|
-
const os = __importStar(require("os"));
|
|
39
|
-
const path = __importStar(require("path"));
|
|
40
|
-
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
41
|
-
const defaultStateFilePath = () => {
|
|
42
|
-
const base = process.env.XDG_CACHE_HOME ?? path.join(os.homedir(), '.cache');
|
|
43
|
-
return path.join(base, 'tdpm', 'silent-session-notified.json');
|
|
44
|
-
};
|
|
45
|
-
// Persists the fire-once latch: the set of session names that have already
|
|
46
|
-
// received the current silent-episode reminder. The use case re-writes the
|
|
47
|
-
// full latch each cycle with the current timestamp, keeping a session latched
|
|
48
|
-
// for as long as it stays a reminder candidate (a continuous silent episode
|
|
49
|
-
// produces exactly one reminder), and prunes a session the moment it stops
|
|
50
|
-
// being a candidate so a later re-qualification fires again. The save
|
|
51
|
-
// intentionally OVERWRITES rather than merges: the use case supplies the
|
|
52
|
-
// complete latch to persist, so a pruned session must not linger.
|
|
53
|
-
class FileSystemSilentSessionNotifiedStateRepository {
|
|
54
|
-
constructor(stateFilePath = defaultStateFilePath()) {
|
|
55
|
-
this.stateFilePath = stateFilePath;
|
|
56
|
-
this.loadRecentNotifiedSessionNames = async (params) => {
|
|
57
|
-
const nowEpochSeconds = Math.floor(params.now.getTime() / 1000);
|
|
58
|
-
const oldestAllowedEpochSeconds = nowEpochSeconds - params.recencyWindowSeconds;
|
|
59
|
-
const recentSessionNames = new Set();
|
|
60
|
-
for (const entry of this.readNotifiedEntries()) {
|
|
61
|
-
if (entry.recordedEpochSeconds >= oldestAllowedEpochSeconds) {
|
|
62
|
-
recentSessionNames.add(entry.sessionName);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
return recentSessionNames;
|
|
66
|
-
};
|
|
67
|
-
this.saveNotifiedSessionNames = async (params) => {
|
|
68
|
-
const recordedEpochSeconds = Math.floor(params.now.getTime() / 1000);
|
|
69
|
-
const notifiedBySessionName = new Map();
|
|
70
|
-
for (const sessionName of params.sessionNames) {
|
|
71
|
-
notifiedBySessionName.set(sessionName, {
|
|
72
|
-
sessionName,
|
|
73
|
-
recordedEpochSeconds,
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
this.writeState(Array.from(notifiedBySessionName.values()));
|
|
77
|
-
};
|
|
78
|
-
this.readNotifiedEntries = () => {
|
|
79
|
-
let raw;
|
|
80
|
-
try {
|
|
81
|
-
raw = fs.readFileSync(this.stateFilePath, 'utf8');
|
|
82
|
-
}
|
|
83
|
-
catch {
|
|
84
|
-
return [];
|
|
85
|
-
}
|
|
86
|
-
let parsed;
|
|
87
|
-
try {
|
|
88
|
-
parsed = JSON.parse(raw);
|
|
89
|
-
}
|
|
90
|
-
catch {
|
|
91
|
-
return [];
|
|
92
|
-
}
|
|
93
|
-
if (!isRecord(parsed)) {
|
|
94
|
-
return [];
|
|
95
|
-
}
|
|
96
|
-
const storedEntries = parsed.notified;
|
|
97
|
-
if (!Array.isArray(storedEntries)) {
|
|
98
|
-
return [];
|
|
99
|
-
}
|
|
100
|
-
const entries = [];
|
|
101
|
-
for (const storedEntry of storedEntries) {
|
|
102
|
-
if (!isRecord(storedEntry)) {
|
|
103
|
-
continue;
|
|
104
|
-
}
|
|
105
|
-
const sessionName = storedEntry.sessionName;
|
|
106
|
-
const recordedEpochSeconds = storedEntry.recordedEpochSeconds;
|
|
107
|
-
if (typeof sessionName === 'string' &&
|
|
108
|
-
typeof recordedEpochSeconds === 'number' &&
|
|
109
|
-
Number.isFinite(recordedEpochSeconds)) {
|
|
110
|
-
entries.push({ sessionName, recordedEpochSeconds });
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return entries;
|
|
114
|
-
};
|
|
115
|
-
this.writeState = (notified) => {
|
|
116
|
-
const directory = path.dirname(this.stateFilePath);
|
|
117
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
118
|
-
const temporaryPath = `${this.stateFilePath}.${process.pid}.tmp`;
|
|
119
|
-
fs.writeFileSync(temporaryPath, JSON.stringify({ notified }));
|
|
120
|
-
fs.renameSync(temporaryPath, this.stateFilePath);
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
exports.FileSystemSilentSessionNotifiedStateRepository = FileSystemSilentSessionNotifiedStateRepository;
|
|
125
|
-
//# sourceMappingURL=FileSystemSilentSessionNotifiedStateRepository.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FileSystemSilentSessionNotifiedStateRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/FileSystemSilentSessionNotifiedStateRepository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getInProgressTimeline = void 0;
|
|
4
|
-
const getInProgressTimeline = async (timelines, issueUrl) => {
|
|
5
|
-
const report = [];
|
|
6
|
-
let currentInProgress = undefined;
|
|
7
|
-
for (const timeline of timelines) {
|
|
8
|
-
const time = new Date(timeline.time);
|
|
9
|
-
if (timeline.to.toLocaleLowerCase().includes('in progress')) {
|
|
10
|
-
if (currentInProgress !== undefined) {
|
|
11
|
-
report.push({
|
|
12
|
-
...currentInProgress,
|
|
13
|
-
endedAt: time,
|
|
14
|
-
durationMinutes: Math.floor(time.getTime() / 1000 / 60) -
|
|
15
|
-
Math.floor(currentInProgress.startedAt.getTime() / 1000 / 60),
|
|
16
|
-
});
|
|
17
|
-
currentInProgress = undefined;
|
|
18
|
-
}
|
|
19
|
-
currentInProgress = {
|
|
20
|
-
issueUrl: issueUrl,
|
|
21
|
-
author: timeline.author,
|
|
22
|
-
startedAt: time,
|
|
23
|
-
};
|
|
24
|
-
continue;
|
|
25
|
-
}
|
|
26
|
-
if (currentInProgress != undefined) {
|
|
27
|
-
report.push({
|
|
28
|
-
...currentInProgress,
|
|
29
|
-
endedAt: time,
|
|
30
|
-
durationMinutes: (time.getTime() - currentInProgress.startedAt.getTime()) / 1000 / 60,
|
|
31
|
-
});
|
|
32
|
-
currentInProgress = undefined;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return report;
|
|
36
|
-
};
|
|
37
|
-
exports.getInProgressTimeline = getInProgressTimeline;
|
|
38
|
-
//# sourceMappingURL=issueTimelineUtils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"issueTimelineUtils.js","sourceRoot":"","sources":["../../../../src/adapter/repositories/issue/issueTimelineUtils.ts"],"names":[],"mappings":";;;AAYO,MAAM,qBAAqB,GAAG,KAAK,EACxC,SAAgC,EAChC,QAAgB,EACQ,EAAE;IAC1B,MAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,IAAI,iBAAiB,GAEL,SAAS,CAAC;IAC1B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAC5D,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,CAAC,IAAI,CAAC;oBACV,GAAG,iBAAiB;oBACpB,OAAO,EAAE,IAAI;oBACb,eAAe,EACb,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;wBACtC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;iBAChE,CAAC,CAAC;gBACH,iBAAiB,GAAG,SAAS,CAAC;YAChC,CAAC;YACD,iBAAiB,GAAG;gBAClB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,SAAS,EAAE,IAAI;aAChB,CAAC;YACF,SAAS;QACX,CAAC;QACD,IAAI,iBAAiB,IAAI,SAAS,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,iBAAiB;gBACpB,OAAO,EAAE,IAAI;gBACb,eAAe,EACb,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE;aACvE,CAAC,CAAC;YACH,iBAAiB,GAAG,SAAS,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAvCW,QAAA,qBAAqB,yBAuChC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UnansweredOwnerCall.js","sourceRoot":"","sources":["../../../src/domain/entities/UnansweredOwnerCall.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WorkingTime.js","sourceRoot":"","sources":["../../../src/domain/entities/WorkingTime.ts"],"names":[],"mappings":""}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ChangeStatusLongInReviewIssueUseCase = void 0;
|
|
4
|
-
class ChangeStatusLongInReviewIssueUseCase {
|
|
5
|
-
constructor(dateRepository, issueRepository) {
|
|
6
|
-
this.dateRepository = dateRepository;
|
|
7
|
-
this.issueRepository = issueRepository;
|
|
8
|
-
this.run = async (input) => {
|
|
9
|
-
const firstStatus = input.project.status.statuses[0];
|
|
10
|
-
if (!firstStatus) {
|
|
11
|
-
throw new Error('First status is not found');
|
|
12
|
-
}
|
|
13
|
-
for (const issue of input.issues) {
|
|
14
|
-
if (issue.isPr ||
|
|
15
|
-
issue.isClosed ||
|
|
16
|
-
!issue.status?.toLowerCase().includes('review')) {
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
if (issue.workingTimeline.length > 0) {
|
|
20
|
-
const latestWorkingTime = issue.workingTimeline[issue.workingTimeline.length - 1];
|
|
21
|
-
const now = await this.dateRepository.now();
|
|
22
|
-
const diff = now.getTime() - latestWorkingTime.endedAt.getTime();
|
|
23
|
-
const diffHours = diff / (1000 * 60 * 60);
|
|
24
|
-
if (diffHours < 48) {
|
|
25
|
-
continue;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
await this.issueRepository.createComment(issue, `${issue.assignees.map((assignee) => `@${assignee}`).join(' ')}
|
|
29
|
-
This issue has been in review for more than 48 hours.
|
|
30
|
-
Please check the situation of PR again :pray:`);
|
|
31
|
-
await this.issueRepository.updateStatus(input.project, issue, firstStatus.id);
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
exports.ChangeStatusLongInReviewIssueUseCase = ChangeStatusLongInReviewIssueUseCase;
|
|
37
|
-
//# sourceMappingURL=ChangeStatusLongInReviewIssueUseCase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ChangeStatusLongInReviewIssueUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/ChangeStatusLongInReviewIssueUseCase.ts"],"names":[],"mappings":";;;AAKA,MAAa,oCAAoC;IAC/C,YACW,cAA2C,EAC3C,eAGR;QAJQ,mBAAc,GAAd,cAAc,CAA6B;QAC3C,oBAAe,GAAf,eAAe,CAGvB;QAGH,QAAG,GAAG,KAAK,EAAE,KAMZ,EAAiB,EAAE;YAClB,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/C,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjC,IACE,KAAK,CAAC,IAAI;oBACV,KAAK,CAAC,QAAQ;oBACd,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC/C,CAAC;oBACD,SAAS;gBACX,CAAC;gBACD,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrC,MAAM,iBAAiB,GACrB,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC1D,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;oBAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;oBACjE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC1C,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;wBACnB,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CACtC,KAAK,EACL,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;8CAExB,CACvC,CAAC;gBACF,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CACrC,KAAK,CAAC,OAAO,EACb,KAAK,EACL,WAAW,CAAC,EAAE,CACf,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;IA3CC,CAAC;CA4CL;AAnDD,oFAmDC"}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ConvertCheckboxToIssueInStoryIssueUseCase = void 0;
|
|
4
|
-
const utils_1 = require("./utils");
|
|
5
|
-
const WorkflowStatus_1 = require("../entities/WorkflowStatus");
|
|
6
|
-
class ConvertCheckboxToIssueInStoryIssueUseCase {
|
|
7
|
-
constructor(issueRepository) {
|
|
8
|
-
this.issueRepository = issueRepository;
|
|
9
|
-
this.run = async (input) => {
|
|
10
|
-
const story = input.project.story;
|
|
11
|
-
if (!story) {
|
|
12
|
-
return;
|
|
13
|
-
}
|
|
14
|
-
for (const storyOption of input.project.story?.stories || []) {
|
|
15
|
-
const storyIssue = input.issues
|
|
16
|
-
.filter((issue) => storyOption.name.startsWith(issue.title))
|
|
17
|
-
.reduce((longest, issue) => longest === null || issue.title.length > longest.title.length
|
|
18
|
-
? issue
|
|
19
|
-
: longest, null);
|
|
20
|
-
const storyObject = input.storyObjectMap.get(storyOption.name);
|
|
21
|
-
if (storyOption.name.startsWith('regular / ')) {
|
|
22
|
-
continue;
|
|
23
|
-
}
|
|
24
|
-
else if (!storyIssue || !storyObject) {
|
|
25
|
-
throw new Error(`Story issue not found: ${storyOption.name}`);
|
|
26
|
-
}
|
|
27
|
-
else if (storyIssue.isClosed) {
|
|
28
|
-
continue;
|
|
29
|
-
}
|
|
30
|
-
const iced = storyIssue.status === WorkflowStatus_1.ICEBOX_STATUS_NAME;
|
|
31
|
-
const noCheckboxWorkFollows = iced || !input.createTaskFromStoryBodyCheckboxEnabled;
|
|
32
|
-
const storyViewLinkAlreadyOnFirstLine = this.bodyWithStoryViewLinkOnFirstLine(storyIssue.body, input.urlOfStoryView, storyOption.name) === storyIssue.body;
|
|
33
|
-
if (noCheckboxWorkFollows && storyViewLinkAlreadyOnFirstLine) {
|
|
34
|
-
continue;
|
|
35
|
-
}
|
|
36
|
-
const freshStoryBody = await this.issueRepository.getIssueBodyByUrl(storyIssue.url);
|
|
37
|
-
if (freshStoryBody === null) {
|
|
38
|
-
console.warn(`ConvertCheckboxToIssueInStoryIssueUseCase: story issue not found by URL (possibly deleted), skipping story. storyIssueUrl: ${storyIssue.url}`);
|
|
39
|
-
continue;
|
|
40
|
-
}
|
|
41
|
-
let newBody = this.bodyWithStoryViewLinkOnFirstLine(freshStoryBody, input.urlOfStoryView, storyOption.name);
|
|
42
|
-
if (newBody !== freshStoryBody) {
|
|
43
|
-
await this.issueRepository.updateIssueBody(storyIssue, newBody);
|
|
44
|
-
}
|
|
45
|
-
if (iced || !input.createTaskFromStoryBodyCheckboxEnabled) {
|
|
46
|
-
continue;
|
|
47
|
-
}
|
|
48
|
-
if (!newBody.includes('- [ ] ')) {
|
|
49
|
-
continue;
|
|
50
|
-
}
|
|
51
|
-
const checkboxTextsNotCreatedIssue = this.findCheckboxTextsNotCreatedIssue(newBody);
|
|
52
|
-
for (const checkboxText of checkboxTextsNotCreatedIssue) {
|
|
53
|
-
const issueTitle = checkboxText.replace('STORYNAME', `${storyOption.name} #${storyIssue.number}`);
|
|
54
|
-
const newIssueBody = `- Parent issue: ${storyIssue.url}`;
|
|
55
|
-
const newIssueNumber = await this.issueRepository.createNewIssue(storyIssue.org, storyIssue.repo, issueTitle, newIssueBody, [input.manager], []);
|
|
56
|
-
const newIssueUrl = `https://github.com/${storyIssue.org}/${storyIssue.repo}/issues/${newIssueNumber}`;
|
|
57
|
-
newBody = newBody.replace(`- [ ] ${checkboxText}`, `- [ ] ${newIssueUrl}`);
|
|
58
|
-
await this.issueRepository.updateIssueBody(storyIssue, newBody);
|
|
59
|
-
await this.issueRepository.addIssueToProject(input.project, newIssueUrl);
|
|
60
|
-
const newIssue = await this.issueRepository.getIssueByUrl(newIssueUrl);
|
|
61
|
-
if (!newIssue) {
|
|
62
|
-
throw new Error(`Issue not found: ${newIssueUrl}`);
|
|
63
|
-
}
|
|
64
|
-
await this.issueRepository.updateStory({ ...input.project, story: story }, newIssue, storyOption.id);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
};
|
|
68
|
-
this.bodyWithStoryViewLinkOnFirstLine = (body, urlOfStoryView, storyName) => {
|
|
69
|
-
const storyViewLink = this.buildStoryViewLink(urlOfStoryView, storyName);
|
|
70
|
-
const storyViewLinkPattern = this.buildStoryViewLinkPattern(urlOfStoryView, storyName);
|
|
71
|
-
const isStoryViewLinkLine = (line) => storyViewLinkPattern.test(line);
|
|
72
|
-
const lines = body.split('\n');
|
|
73
|
-
const remainingLines = [];
|
|
74
|
-
for (let i = 0; i < lines.length; i++) {
|
|
75
|
-
if (!isStoryViewLinkLine(lines[i])) {
|
|
76
|
-
remainingLines.push(lines[i]);
|
|
77
|
-
continue;
|
|
78
|
-
}
|
|
79
|
-
if (i + 1 < lines.length && lines[i + 1].trim() === '') {
|
|
80
|
-
i++;
|
|
81
|
-
continue;
|
|
82
|
-
}
|
|
83
|
-
if (remainingLines.length > 0 &&
|
|
84
|
-
remainingLines[remainingLines.length - 1].trim() === '') {
|
|
85
|
-
remainingLines.pop();
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
while (remainingLines.length > 0 && remainingLines[0].trim() === '') {
|
|
89
|
-
remainingLines.shift();
|
|
90
|
-
}
|
|
91
|
-
return `${storyViewLink}\n\n${remainingLines.join('\n')}`;
|
|
92
|
-
};
|
|
93
|
-
this.buildStoryViewLink = (urlOfStoryView, storyName) => {
|
|
94
|
-
return `${urlOfStoryView}?sliceBy%5Bvalue%5D=${(0, utils_1.encodeForURI)(storyName)}`;
|
|
95
|
-
};
|
|
96
|
-
this.buildStoryViewLinkPattern = (urlOfStoryView, storyName) => {
|
|
97
|
-
const escapeForRegularExpression = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
98
|
-
const storyViewProjectUrl = urlOfStoryView.split('/views/')[0];
|
|
99
|
-
const storySliceQuery = `?sliceBy%5Bvalue%5D=${(0, utils_1.encodeForURI)(storyName)}`;
|
|
100
|
-
return new RegExp(`${escapeForRegularExpression(storyViewProjectUrl)}(/views/\\d+)?${escapeForRegularExpression(storySliceQuery)}(?![\\w%])`);
|
|
101
|
-
};
|
|
102
|
-
this.findCheckboxTextsNotCreatedIssue = (storyIssueBody) => {
|
|
103
|
-
const regexToFindCheckboxes = /^- \[ ] (.*)$/gm;
|
|
104
|
-
const match = storyIssueBody.match(regexToFindCheckboxes);
|
|
105
|
-
if (!match)
|
|
106
|
-
return [];
|
|
107
|
-
const checkboxes = [];
|
|
108
|
-
for (let i = 0; i < match.length; i++) {
|
|
109
|
-
checkboxes.push(match[i].replace('- [ ] ', '').trim());
|
|
110
|
-
}
|
|
111
|
-
return checkboxes.filter((checkbox) => checkbox !== '' &&
|
|
112
|
-
!checkbox.match(/^https:\/\/github.com\/.*\/issues\/\d+$/) &&
|
|
113
|
-
!checkbox.match(/^#\d+$/));
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.ConvertCheckboxToIssueInStoryIssueUseCase = ConvertCheckboxToIssueInStoryIssueUseCase;
|
|
118
|
-
//# sourceMappingURL=ConvertCheckboxToIssueInStoryIssueUseCase.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConvertCheckboxToIssueInStoryIssueUseCase.js","sourceRoot":"","sources":["../../../src/domain/usecases/ConvertCheckboxToIssueInStoryIssueUseCase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GenerateWorkingTimeReportUseCase = void 0;
|
|
4
|
-
class GenerateWorkingTimeReportUseCase {
|
|
5
|
-
constructor(issueRepository, spreadsheetRepository, dateRepository) {
|
|
6
|
-
this.issueRepository = issueRepository;
|
|
7
|
-
this.spreadsheetRepository = spreadsheetRepository;
|
|
8
|
-
this.dateRepository = dateRepository;
|
|
9
|
-
this.run = async (input) => {
|
|
10
|
-
const workingReportIssueTemplate = await this.getWorkingReportIssueTemplate(input);
|
|
11
|
-
const reportRows = [];
|
|
12
|
-
for (const member of input.members) {
|
|
13
|
-
try {
|
|
14
|
-
const memberReportRows = await this.createIssueForEachAuthor(member, input.targetDate, input.issues, input.org, input.repo, input.reportIssueLabels, workingReportIssueTemplate, input.warningThresholdHour);
|
|
15
|
-
reportRows.push(...memberReportRows);
|
|
16
|
-
await new Promise((resolve) => setTimeout(resolve, 5000));
|
|
17
|
-
}
|
|
18
|
-
catch (e) {
|
|
19
|
-
await this.issueRepository.createNewIssue(input.org, input.repo, `Error occured while creating working report for ${member}`, `${JSON.stringify(e)}`, [input.manager], ['bug']);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
await this.spreadsheetRepository.appendSheetValues(input.spreadsheetUrl, 'IssueLogEditable', reportRows);
|
|
23
|
-
await this.spreadsheetRepository.appendSheetValues(input.spreadsheetUrl, 'IssueLogRawData', reportRows);
|
|
24
|
-
};
|
|
25
|
-
this.getWorkingReportIssueTemplate = async (input) => {
|
|
26
|
-
if (input.reportIssueTemplate) {
|
|
27
|
-
return input.reportIssueTemplate;
|
|
28
|
-
}
|
|
29
|
-
return `
|
|
30
|
-
Please confirm each working time and total working time and assign to :bow:
|
|
31
|
-
Fix warnings if you have :warning: mark in Detail section.
|
|
32
|
-
If you have any questions, please put comment and assign to @${input.manager} :pray:
|
|
33
|
-
|
|
34
|
-
## Working report for {AUTHOR} on {DATE_WITH_DAY_OF_WEEK}
|
|
35
|
-
### Total
|
|
36
|
-
\`\`\`
|
|
37
|
-
{TOTAL_WORKING_TIME_HHMM}
|
|
38
|
-
\`\`\`
|
|
39
|
-
|
|
40
|
-
### Detail
|
|
41
|
-
{TIMELINE_DETAILS}
|
|
42
|
-
|
|
43
|
-
Summary of working report: ${input.spreadsheetUrl}
|
|
44
|
-
`;
|
|
45
|
-
};
|
|
46
|
-
this.createIssueForEachAuthor = async (author, date, issues, org, repo, labels, workingReportIssueTemplate, workingTimeThresholdHour = 6) => {
|
|
47
|
-
const dateString = `${date.toISOString().split('T')[0]}`;
|
|
48
|
-
const dateStringWithDoW = `${date.toISOString().split('T')[0]} (${['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'][date.getDay()]})`;
|
|
49
|
-
const timelineEvents = this.filterTimelineAndSortByAuthor(issues, date, author, workingTimeThresholdHour);
|
|
50
|
-
const totalHhmm = this.calculateTotalHhmm(timelineEvents);
|
|
51
|
-
const timelineDetails = this.applyToTimelineDetails(timelineEvents);
|
|
52
|
-
const title = this.applyReplacementToTemplate({
|
|
53
|
-
template: 'Working report for {AUTHOR} on {DATE_WITH_DAY_OF_WEEK}',
|
|
54
|
-
replacement: {
|
|
55
|
-
AUTHOR: author,
|
|
56
|
-
DATE_WITH_DAY_OF_WEEK: dateStringWithDoW,
|
|
57
|
-
},
|
|
58
|
-
});
|
|
59
|
-
const body = this.applyReplacementToTemplate({
|
|
60
|
-
template: workingReportIssueTemplate,
|
|
61
|
-
replacement: {
|
|
62
|
-
AUTHOR: author,
|
|
63
|
-
DATE_WITH_DAY_OF_WEEK: dateStringWithDoW,
|
|
64
|
-
TOTAL_WORKING_TIME_HHMM: totalHhmm,
|
|
65
|
-
TIMELINE_DETAILS: timelineDetails,
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
await this.issueRepository.createNewIssue(org, repo, title, body, [author], labels);
|
|
69
|
-
const issueLogRows = timelineEvents.map((event) => [
|
|
70
|
-
dateString,
|
|
71
|
-
event.startHhmm,
|
|
72
|
-
event.endHhmm,
|
|
73
|
-
author,
|
|
74
|
-
event.warnings.join(':'),
|
|
75
|
-
event.issueUrl,
|
|
76
|
-
event.labels.join(':'),
|
|
77
|
-
]);
|
|
78
|
-
return issueLogRows;
|
|
79
|
-
};
|
|
80
|
-
this.filterTimelineAndSortByAuthor = (issues, targetDate, author, workingTimeThresholdHour) => {
|
|
81
|
-
const dateString = targetDate.toISOString().split('T')[0];
|
|
82
|
-
const timelineEvents = [];
|
|
83
|
-
for (const issue of issues) {
|
|
84
|
-
const filteredTimeline = issue.workingTimeline.filter((event) => event.author === author);
|
|
85
|
-
for (const event of filteredTimeline) {
|
|
86
|
-
const start = event.startedAt.toISOString();
|
|
87
|
-
const end = event.endedAt.toISOString();
|
|
88
|
-
if (end.split('T')[0] !== dateString) {
|
|
89
|
-
continue;
|
|
90
|
-
}
|
|
91
|
-
const startHhmm = this.convertIsoToHhmm(start);
|
|
92
|
-
const endHhmm = this.convertIsoToHhmm(end);
|
|
93
|
-
const durationHhmm = this.calculateDuration(start, end);
|
|
94
|
-
timelineEvents.push({
|
|
95
|
-
issueUrl: issue.url,
|
|
96
|
-
issueTitle: issue.title,
|
|
97
|
-
startHhmm,
|
|
98
|
-
endHhmm,
|
|
99
|
-
durationHhmm,
|
|
100
|
-
warnings: [],
|
|
101
|
-
labels: issue.labels,
|
|
102
|
-
nameWithOwner: issue.nameWithOwner,
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
const sortedTimelineEvents = timelineEvents.sort((a, b) => {
|
|
107
|
-
if (a.endHhmm === b.endHhmm) {
|
|
108
|
-
return a.startHhmm.localeCompare(b.startHhmm);
|
|
109
|
-
}
|
|
110
|
-
return a.endHhmm.localeCompare(b.endHhmm);
|
|
111
|
-
});
|
|
112
|
-
for (let i = 0; i < sortedTimelineEvents.length - 1; i++) {
|
|
113
|
-
const current = sortedTimelineEvents[i];
|
|
114
|
-
const currentDuration = sortedTimelineEvents[i].durationHhmm;
|
|
115
|
-
const [hh] = currentDuration.split(':').map(Number);
|
|
116
|
-
if (hh >= workingTimeThresholdHour) {
|
|
117
|
-
current.warnings.push(`Over ${workingTimeThresholdHour} hours`);
|
|
118
|
-
}
|
|
119
|
-
if (i === 0) {
|
|
120
|
-
continue;
|
|
121
|
-
}
|
|
122
|
-
const previous = sortedTimelineEvents[i - 1];
|
|
123
|
-
if (previous.endHhmm > current.startHhmm) {
|
|
124
|
-
current.warnings.push(`Overlap`);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
return sortedTimelineEvents;
|
|
128
|
-
};
|
|
129
|
-
this.convertIsoToHhmm = (isoString) => {
|
|
130
|
-
const date = new Date(isoString);
|
|
131
|
-
const hh = date.getHours();
|
|
132
|
-
const mm = date.getMinutes();
|
|
133
|
-
return `${String(hh).padStart(2, '0')}:${String(mm).padStart(2, '0')}`;
|
|
134
|
-
};
|
|
135
|
-
this.calculateDuration = (startIsoString, endIsoString) => {
|
|
136
|
-
const startDate = new Date(startIsoString);
|
|
137
|
-
const endDate = new Date(endIsoString);
|
|
138
|
-
startDate.setMilliseconds(0);
|
|
139
|
-
startDate.setSeconds(0);
|
|
140
|
-
endDate.setMilliseconds(0);
|
|
141
|
-
endDate.setSeconds(0);
|
|
142
|
-
const duration = endDate.getTime() - startDate.getTime();
|
|
143
|
-
const hh = Math.floor(duration / (1000 * 60 * 60));
|
|
144
|
-
const mm = Math.floor((duration % (1000 * 60 * 60)) / (1000 * 60));
|
|
145
|
-
return `${String(hh).padStart(2, '0')}:${String(mm).padStart(2, '0')}`;
|
|
146
|
-
};
|
|
147
|
-
this.calculateTotalHhmm = (timelineEvents) => {
|
|
148
|
-
const totalDuration = timelineEvents.reduce((acc, event) => {
|
|
149
|
-
const [hh, mm] = event.durationHhmm.split(':').map(Number);
|
|
150
|
-
return acc + hh * 60 + mm;
|
|
151
|
-
}, 0);
|
|
152
|
-
return this.dateRepository.formatDurationToHHMM(totalDuration);
|
|
153
|
-
};
|
|
154
|
-
this.applyToTimelineDetails = (timelineEvents) => {
|
|
155
|
-
return `
|
|
156
|
-
- Start, End, Duration, Issue title, Labels
|
|
157
|
-
${timelineEvents.map((event) => this.applyToTimelineDetail(event)).join('\n')}
|
|
158
|
-
`;
|
|
159
|
-
};
|
|
160
|
-
this.applyToTimelineDetail = (timelineEvents) => {
|
|
161
|
-
const labelUrls = timelineEvents.labels.map((label) => `https://github.com/${timelineEvents.nameWithOwner}/labels/${encodeURI(label).replace(/:/g, '%3A')}`);
|
|
162
|
-
return `- ${timelineEvents.startHhmm}, ${timelineEvents.endHhmm}, ${timelineEvents.durationHhmm}, ${timelineEvents.warnings.length > 0 ? `:warning: ${timelineEvents.warnings.join(' ')}` : ''} ${timelineEvents.issueUrl}, ${labelUrls.join(' ')}`;
|
|
163
|
-
};
|
|
164
|
-
this.applyReplacementToTemplate = (input) => {
|
|
165
|
-
const replacedText = Object.entries(input.replacement).reduce((acc, [key, value]) => {
|
|
166
|
-
return acc.replace(new RegExp(`{${key}}`, 'g'), value);
|
|
167
|
-
}, input.template);
|
|
168
|
-
if (replacedText.includes('{')) {
|
|
169
|
-
const unknownKeys = replacedText.match(/\{[^}]+}/g);
|
|
170
|
-
if (!unknownKeys) {
|
|
171
|
-
throw new Error(`Broken template: ${replacedText}`);
|
|
172
|
-
}
|
|
173
|
-
throw new Error(`Failed to replace. Unknown keys: ${unknownKeys.map((key) => key.slice(1, -1)).join(', ')}`);
|
|
174
|
-
}
|
|
175
|
-
return replacedText;
|
|
176
|
-
};
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
exports.GenerateWorkingTimeReportUseCase = GenerateWorkingTimeReportUseCase;
|
|
180
|
-
//# sourceMappingURL=GenerateWorkingTimeReportUseCase.js.map
|