From a94fb643f7b6a1fe10ed005d99399e5c6ab11f43 Mon Sep 17 00:00:00 2001 From: Junya Ishihara Date: Fri, 12 Jun 2026 00:04:53 +0900 Subject: [PATCH] =?UTF-8?q?=E6=AE=B5=E9=9A=8E=E7=9A=84=E3=83=AA=E3=83=95?= =?UTF-8?q?=E3=82=A1=E3=82=AF=E3=82=BF=E3=83=AA=E3=83=B3=E3=82=B0=E8=A8=88?= =?UTF-8?q?=E7=94=BB=E3=82=92=20docs/refactoring=20=E3=81=AB=E8=BF=BD?= =?UTF-8?q?=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2026-06-11 のコードベース調査に基づき、蓄積した技術的負債を 6 フェーズで解消する詳細計画を文書化。 - README: 負債サマリ・フェーズ依存関係・共通原則・効果測定 - Phase 0: リポジトリ衛生とドキュメント整合(挙動変更なし) - Phase 1: テスト基盤の再建(実コード未検証テストの解消) - Phase 2: バックエンド構造(定型重複・CalendarService 分割) - Phase 3: フロントエンド構造(重複排除・ES modules 化) - Phase 4: CSS/HTML(埋め込み CSS 約2,700行の外部化・重複解消) - Phase 5: E2E と CI 品質ゲート Co-Authored-By: Claude Fable 5 --- docs/refactoring/README.md | 82 +++++++++++++++++++ docs/refactoring/phase-0-hygiene.md | 59 ++++++++++++++ docs/refactoring/phase-1-test-foundation.md | 79 ++++++++++++++++++ docs/refactoring/phase-2-backend.md | 89 +++++++++++++++++++++ docs/refactoring/phase-3-frontend.md | 69 ++++++++++++++++ docs/refactoring/phase-4-css-html.md | 50 ++++++++++++ docs/refactoring/phase-5-e2e-ci.md | 63 +++++++++++++++ 7 files changed, 491 insertions(+) create mode 100644 docs/refactoring/README.md create mode 100644 docs/refactoring/phase-0-hygiene.md create mode 100644 docs/refactoring/phase-1-test-foundation.md create mode 100644 docs/refactoring/phase-2-backend.md create mode 100644 docs/refactoring/phase-3-frontend.md create mode 100644 docs/refactoring/phase-4-css-html.md create mode 100644 docs/refactoring/phase-5-e2e-ci.md diff --git a/docs/refactoring/README.md b/docs/refactoring/README.md new file mode 100644 index 0000000..d2a2807 --- /dev/null +++ b/docs/refactoring/README.md @@ -0,0 +1,82 @@ +# リファクタリング計画 全体像 + +最終更新: 2026-06-11 + +このディレクトリは、shift2 に蓄積した技術的負債を段階的に解消するためのリファクタリング計画です。各フェーズは独立したドキュメントになっており、上から順に着手することを前提に依存関係を設計しています。 + +## 背景: 現状の負債サマリ(2026-06-11 調査) + +| 領域 | 規模 | 主な問題 | +|------|------|----------| +| `index.html` | 3,005 行 | 約 9 割(約 2,700 行)が埋め込み CSS。25 以上のクラスが重複定義。インライン `onclick` が 20 箇所 | +| `js/modules/` | 16 ファイル・約 5,800 行 | ES modules ではなく `