Skip to content

refactor(ui): TerminalSplitPane の複雑度を下げる (#3567) - #3726

Merged
Kewton merged 2 commits into
developfrom
feature/3567-reduce-complexity
Oct 16, 2026
Merged

Kewton merged 2 commits into
developfrom
feature/3567-reduce-complexity

Conversation

@Kewton

@Kewton Kewton commented Oct 16, 2026

Copy link
Copy Markdown
Owner

実測: 契約の計測コマンドで TerminalSplitPane は complexity 50(Issue 作成時の 29 から増加)。実コードを正とした。
結果: 25 未満(警告なし)。

数字が変わった箇所(いずれも関数・コンポーネントを分けただけ。振る舞い・文言・DOM は不変):

  • 操作群 JSX(検索/最大化/「…」メニュー)を SplitActionControls へ移した
  • モデル/使用量/メモ/表面切替の JSX を SplitSessionChips へ移した(SURFACE_MODE_SEGMENTS も同梱)
  • DnD 状態とハンドラを useSplitDragDrop へ移した
  • バー内メモ位置の layout effect を useBarNotePosition へ移した
  • セレクタ title の組み立てを resolveSelectorTitle へ移した
    コメントは書き換えずに移した。新モジュールは元モジュールを import しない(循環なし)。

確認: tests/unit/guards・tests/unit/docs・TerminalSplit 関連 99 ファイル、lint、tsc が通る。
探した対象: 同処理の写し(スマホ側)・型・docs・古い動きを固定するテスト。変更を要するものは無かった。

本文に無い指摘: src/components/worktree/TerminalSplitPaneContent.tsx:277 TerminalSplitPaneContent の complexity 31(Issue 対象外のため未対応)
本文に無い指摘: src/components/worktree/TerminalSplitPane.tsx 冒頭の説明コメントは分割後の構成と細部で合わないが、書き換えず据え置いた

Co-Authored-By: Claude Sonnet 5.5 noreply@anthropic.com

Refs #3567

実測: 契約の計測コマンドで TerminalSplitPane は complexity 50(Issue 作成時の 29 から増加)。実コードを正とした。
結果: 25 未満(警告なし)。

数字が変わった箇所(いずれも関数・コンポーネントを分けただけ。振る舞い・文言・DOM は不変):
- 操作群 JSX(検索/最大化/「…」メニュー)を SplitActionControls へ移した
- モデル/使用量/メモ/表面切替の JSX を SplitSessionChips へ移した(SURFACE_MODE_SEGMENTS も同梱)
- DnD 状態とハンドラを useSplitDragDrop へ移した
- バー内メモ位置の layout effect を useBarNotePosition へ移した
- セレクタ title の組み立てを resolveSelectorTitle へ移した
コメントは書き換えずに移した。新モジュールは元モジュールを import しない(循環なし)。

確認: tests/unit/guards・tests/unit/docs・TerminalSplit 関連 99 ファイル、lint、tsc が通る。
探した対象: 同処理の写し(スマホ側)・型・docs・古い動きを固定するテスト。変更を要するものは無かった。

本文に無い指摘: src/components/worktree/TerminalSplitPaneContent.tsx:277 TerminalSplitPaneContent の complexity 31(Issue 対象外のため未対応)
本文に無い指摘: src/components/worktree/TerminalSplitPane.tsx 冒頭の説明コメントは分割後の構成と細部で合わないが、書き換えず据え置いた

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@Kewton Kewton added the refactor Code refactoring / technical debt label Oct 16, 2026
@Kewton
Kewton merged commit 497a29c into develop Oct 16, 2026
17 checks passed
@Kewton
Kewton deleted the feature/3567-reduce-complexity branch October 16, 2026 15:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactor Code refactoring / technical debt

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant