コンテンツにスキップ

Tasks

1. 単純な React.memo 適用

  • [x] 1.1 SummaryCardReact.memo() でラップする(src/components/SummaryCard.jsx
  • [x] 1.2 ProgressBarReact.memo() でラップする(src/components/ProgressBar.jsx
  • [x] 1.3 FileQueueCardReact.memo() でラップする(src/components/FileQueueCard.jsx

2. リスト行コンポーネントの抽出と memo 化

  • [x] 2.1 GroupList から GroupRow コンポーネントを抽出し React.memo() を適用する(src/components/GroupList.jsx
  • [x] 2.2 MemberList から MemberRow コンポーネントを抽出し React.memo() を適用する(src/components/MemberList.jsx

3. MemberList の検索に useTransition を適用

  • [x] 3.1 MemberListinputValue state と useTransition を導入し、検索入力の応答性を改善する(src/components/MemberList.jsx

4. useFileQueue の依存安定化

  • [x] 4.1 useFileQueueuseRef を導入し existingSessionIds を安定化、parsePendingItem の依存配列から除外する(src/hooks/useFileQueue.js

5. 検証

  • [x] 5.1 pnpm test で全ユニットテストがパスすることを確認する
  • [x] 5.2 pnpm run lint で ESLint エラーがないことを確認する
  • [x] 5.3 pnpm run build でビルドが成功することを確認する