github-issue-tower-defence-management 1.100.0 → 1.101.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/.github/workflows/close-manual-prs.yml +49 -15
  2. package/CHANGELOG.md +14 -0
  3. package/bin/adapter/entry-points/console/ui-dist/assets/index-DP5DGKUj.js +101 -0
  4. package/bin/adapter/entry-points/console/ui-dist/assets/{index-N39d52Zc.css → index-ES6SLB1Y.css} +1 -1
  5. package/bin/adapter/entry-points/console/ui-dist/index.html +2 -2
  6. package/bin/adapter/repositories/NodeTmuxSessionRepository.js +1 -0
  7. package/bin/adapter/repositories/NodeTmuxSessionRepository.js.map +1 -1
  8. package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js +4 -0
  9. package/bin/domain/usecases/console/GenerateConsoleListsUseCase.js.map +1 -1
  10. package/bin/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.js +9 -1
  11. package/bin/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.js.map +1 -1
  12. package/package.json +1 -1
  13. package/src/adapter/entry-points/console/ui/e2e/consoleTestHarness.ts +12 -0
  14. package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemList.test.tsx +12 -3
  15. package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.stories.tsx +4 -0
  16. package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.test.tsx +48 -0
  17. package/src/adapter/entry-points/console/ui/src/features/console/components/list/ConsoleItemSummary.tsx +40 -0
  18. package/src/adapter/entry-points/console/ui/src/features/console/hooks/useConsoleItemDetailData.test.ts +4 -0
  19. package/src/adapter/entry-points/console/ui/src/features/console/logic/grouping.test.ts +4 -0
  20. package/src/adapter/entry-points/console/ui/src/features/console/logic/overlay.test.ts +4 -0
  21. package/src/adapter/entry-points/console/ui/src/features/console/logic/types.ts +4 -0
  22. package/src/adapter/entry-points/console/ui/src/features/console/pages/ConsolePage.test.tsx +58 -15
  23. package/src/adapter/entry-points/console/ui/src/features/console/testing/fixtures.ts +22 -0
  24. package/src/adapter/entry-points/console/ui/src/index.css +24 -0
  25. package/src/adapter/entry-points/console/ui-dist/assets/index-DP5DGKUj.js +101 -0
  26. package/src/adapter/entry-points/console/ui-dist/assets/{index-N39d52Zc.css → index-ES6SLB1Y.css} +1 -1
  27. package/src/adapter/entry-points/console/ui-dist/index.html +2 -2
  28. package/src/adapter/entry-points/handlers/inTmuxByHumanSessionReconciler.test.ts +3 -2
  29. package/src/adapter/repositories/NodeTmuxSessionRepository.test.ts +4 -3
  30. package/src/adapter/repositories/NodeTmuxSessionRepository.ts +1 -0
  31. package/src/domain/usecases/console/GenerateConsoleListsUseCase.test.ts +43 -0
  32. package/src/domain/usecases/console/GenerateConsoleListsUseCase.ts +9 -0
  33. package/src/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.test.ts +2 -2
  34. package/src/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.ts +9 -1
  35. package/types/adapter/repositories/NodeTmuxSessionRepository.d.ts.map +1 -1
  36. package/types/domain/usecases/console/GenerateConsoleListsUseCase.d.ts +4 -0
  37. package/types/domain/usecases/console/GenerateConsoleListsUseCase.d.ts.map +1 -1
  38. package/types/domain/usecases/intmux/InTmuxByHumanSessionReconcileUseCase.d.ts.map +1 -1
  39. package/bin/adapter/entry-points/console/ui-dist/assets/index-poCP-zfO.js +0 -101
  40. package/src/adapter/entry-points/console/ui-dist/assets/index-poCP-zfO.js +0 -101
@@ -10,10 +10,14 @@ on:
10
10
  types:
11
11
  - opened
12
12
  - reopened
13
+ schedule:
14
+ - cron: '0 15 * * *'
15
+ workflow_dispatch:
13
16
 
14
17
  jobs:
15
18
  close-manual-pr:
16
19
  runs-on: ubuntu-latest
20
+ if: github.event_name != 'pull_request' || github.event.pull_request.user.type != 'Bot'
17
21
  steps:
18
22
  - uses: step-security/harden-runner@v2
19
23
  with:
@@ -24,23 +28,53 @@ jobs:
24
28
  with:
25
29
  client-id: ${{ secrets.HS_BOT_GH_AP_CLIENT_ID }}
26
30
  private-key: ${{ secrets.HS_BOT_GH_AP_PRIVATE_KEY }}
27
- - name: Close manually created pull request
31
+ - name: Close manually created pull requests
28
32
  env:
29
33
  GH_TOKEN: ${{ steps.app-token.outputs.token }}
30
- PR_ACTOR_TYPE: ${{ github.event.pull_request.user.type }}
31
- PR_ACTOR_LOGIN: ${{ github.event.pull_request.user.login }}
34
+ REPO: ${{ github.repository }}
35
+ EVENT_NAME: ${{ github.event_name }}
32
36
  PR_NUMBER: ${{ github.event.pull_request.number }}
37
+ PR_ACTOR_LOGIN: ${{ github.event.pull_request.user.login }}
38
+ PR_ACTOR_TYPE: ${{ github.event.pull_request.user.type }}
33
39
  run: |
34
- if [ "$PR_ACTOR_TYPE" = "Bot" ]; then
35
- echo "PR created by bot ($PR_ACTOR_LOGIN), skipping."
36
- exit 0
40
+ ALLOWED_LOGINS="hs-bot-gh-app[bot] dependabot[bot] renovate[bot] github-actions[bot]"
41
+
42
+ is_manual_pr() {
43
+ local login="$1" type="$2"
44
+ [ "$type" = "Bot" ] && return 1
45
+ for allowed in $ALLOWED_LOGINS; do
46
+ [ "$login" = "$allowed" ] && return 1
47
+ done
48
+ return 0
49
+ }
50
+
51
+ close_with_comment() {
52
+ local pr_num="$1"
53
+ gh pr comment "$pr_num" --repo "$REPO" \
54
+ --body $'From: :robot: close-manual-prs\n\nThis repository is managed through an automated task-based workflow. Pull requests must originate from task issues and are created automatically by the CI system when a branch is pushed. Manually created pull requests are outside the scope of this workflow and will be closed automatically.\n\nIf you need to make changes, please create or use an existing task issue and push your branch — the CI system will create the pull request automatically.\n\nThank you for your understanding.'
55
+ gh pr close "$pr_num" --repo "$REPO"
56
+ }
57
+
58
+ if [ "$EVENT_NAME" = "pull_request" ]; then
59
+ echo "Checking PR $PR_NUMBER by $PR_ACTOR_LOGIN (type: $PR_ACTOR_TYPE)."
60
+ if is_manual_pr "$PR_ACTOR_LOGIN" "$PR_ACTOR_TYPE"; then
61
+ echo "Closing PR $PR_NUMBER as manually created."
62
+ close_with_comment "$PR_NUMBER"
63
+ else
64
+ echo "PR $PR_NUMBER is from an allowed actor, skipping."
65
+ fi
66
+ else
67
+ echo "Running sweep for manually created open PRs in $REPO."
68
+ gh api "repos/$REPO/pulls" --paginate \
69
+ --jq '.[] | [(.number | tostring), .user.login, .user.type] | @tsv' \
70
+ > /tmp/open_prs.tsv
71
+ while IFS=$'\t' read -r pr_num login type; do
72
+ echo "Checking PR $pr_num by $login (type: $type)."
73
+ if is_manual_pr "$login" "$type"; then
74
+ echo "Closing PR $pr_num as manually created."
75
+ close_with_comment "$pr_num"
76
+ else
77
+ echo "PR $pr_num is from an allowed actor, skipping."
78
+ fi
79
+ done < /tmp/open_prs.tsv
37
80
  fi
38
- case "$PR_ACTOR_LOGIN" in
39
- "hs-bot-gh-app[bot]"|"dependabot[bot]"|"renovate[bot]"|"github-actions[bot]")
40
- echo "PR created by allowed bot ($PR_ACTOR_LOGIN), skipping."
41
- exit 0
42
- ;;
43
- esac
44
- echo "PR created by human user ($PR_ACTOR_LOGIN), closing."
45
- gh pr comment "$PR_NUMBER" --body "Thank you for your contribution. In this repository, pull requests must be created through the automated process by pushing a feature branch. Manually created pull requests are not accepted. Please push your branch and let the CI workflow create the pull request automatically."
46
- gh pr close "$PR_NUMBER"
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.101.1](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.101.0...v1.101.1) (2026-06-25)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **intmux:** match tmux session name to app and attach-or-create to avoid duplicate sessions ([#949](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/949)) ([cf0208b](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/cf0208b956ba9abad8057e731d52fe917c8f5889))
7
+
8
+ # [1.101.0](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.100.0...v1.101.0) (2026-06-25)
9
+
10
+
11
+ ### Features
12
+
13
+ * **console:** show Story and reactivation-trigger fields on each task row ([#946](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/946)) ([b20d75a](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/b20d75a4c87b836091cd0ed602deb0c50360c9f8))
14
+
1
15
  # [1.100.0](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.99.1...v1.100.0) (2026-06-25)
2
16
 
3
17