Files
hakorune/docs/development/cleanup
nyash-codex 8750186e55 chore: Phase 26-H セッション完了 - 全ドキュメント更新
Phase 26-H 完了内容:
 JoinIR 型定義実装(src/mir/join_ir.rs)
 MIR → JoinIR 自動変換実装(lower_min_loop_to_joinir)
 自動変換テスト実装(mir_joinir_min_auto_lowering)
 PHI/Loop箱 → JoinIR 移行対応表追加(loopform_ssot.md)

ドキュメント更新:
- Phase 27 JoinIR タスク計画追加
- Phase 26-H タスク完了記録
- 各種 README 更新(進捗反映)
- CURRENT_TASK.md 更新

コミット統計: $(git status --short | wc -l) files changed

次のステップ: Phase 27 一般化 MIR → JoinIR 変換
2025-11-23 05:53:27 +09:00
..

レガシーコード削除プロジェクト

調査日: 2025-11-06 Phase: 20.46完了後 目的: Phase 21.0に向けたコードベース整理


📚 ドキュメント構成

1. レガシーコード調査レポート メインレポート

内容: 包括的な調査結果・削減見込み・段階的削除計画

  • カテゴリ別詳細分析 (8カテゴリ)
  • 削減見込みサマリー (約5,600〜8,900行)
  • 段階的削除計画 (Phase A/B/C)
  • リスク評価 (Safe / Investigate / Risky)

読者: プロジェクトマネージャー、意思決定者


2. クイック削除ガイド 実行マニュアル

内容: 今すぐ実行可能なSafe削除手順

  • コピペ可能なコマンド
  • 手動編集箇所の詳細
  • ビルド確認手順
  • トラブルシューティング

読者: 開発者 (実行担当者)


3. 詳細ファイルリスト 📋 リファレンス

内容: ファイル別・行数別の完全リスト

  • Safe削除ファイル一覧 (25+ ファイル, ~3,900行)
  • Investigateファイル一覧 (7+ ファイル, ~2,200行)
  • Riskyファイル一覧 (18 ファイル, ~3,434行)
  • 削除優先順位

読者: 開発者 (詳細確認用)


🎯 クイックスタート

今すぐ削除したい場合

👉 クイック削除ガイド を参照

約10分で約3,900行削除可能 (リスク無し)


全体像を把握したい場合

👉 レガシーコード調査レポート を参照

調査結果・削減見込み・段階的計画の全体像


個別ファイルを確認したい場合

👉 詳細ファイルリスト を参照

ファイル別・カテゴリ別の完全リスト


📊 削減見込みサマリー

フェーズ 対象 削減行数 リスク 実施時期
Phase A Safe削除 約3,900行 無し 今すぐ
Phase B Investigate 約2,200行 1週間以内
Phase C Risky 約3,400行 Phase 16以降
合計 - 約9,500行 - -

🚀 削除実行フロー

Step 1: Safe削除 (今すぐ)

# クイック削除ガイドを参照
cd /home/tomoaki/git/hakorune-selfhost
cat docs/development/cleanup/QUICK_CLEANUP_GUIDE.md

# コマンドをコピペして実行
# 約10分で完了

削減: 約3,900行 リスク: 無し


Step 2: Investigate (1週間以内)

2-1. JSON v1 Bridge調査

# 使用状況確認
grep -r "json_v1_bridge\|try_parse_v1_to_module" src --include="*.rs"
grep -r "schema_version.*1" apps --include="*.json"

判断基準: 使用されていない → 削除 or アーカイブ


2-2. Legacy Tests整理

# cranelift依存テスト確認
find src/tests -name "*.rs" -exec grep -l "cfg.*cranelift" {} \;

判断基準: VM/LLVM比較として有用? → 分割 or 削除


2-3. Parser Dead Code削除

# 各関数の使用状況確認
grep -r "unknown_span" src --include="*.rs" | grep -v "def\|fn "

判断基準: 未使用 → 削除


Step 3: Risky (Phase 16以降)

3-1. WASM Backend評価

# 動作確認
cargo build --release --features wasm-backend
./target/release/nyash --backend wasm test.hako

判断基準: 動作しない → アーカイブ


3-2. Builtin Box移行

Phase 15.5-B完了後、プラグイン移行戦略に従う

判断基準: Plugin完成 → Builtin削除


実行チェックリスト

Phase A: Safe削除

  • Cranelift/JITファイル削除完了
  • BID Copilotアーカイブ完了
  • Dead Code削除完了
  • cargo build --release 成功
  • cargo test 全テストパス
  • ./tools/smokes/v2/run.sh --profile quick パス
  • Git commit & push完了

コミットメッセージ例:

chore: Remove legacy Cranelift/JIT code and BID Copilot prototype

- Remove Cranelift/JIT backend (archived in Phase 15)
- Archive BID Copilot modules (unused prototype)
- Delete dead code (明確に未使用なコード)
- Total reduction: ~3,900 lines (~4%)

Refs: docs/development/cleanup/LEGACY_CODE_INVESTIGATION_REPORT.md

Phase B: Investigate

  • JSON v1 Bridge調査完了
  • Legacy Tests整理完了
  • Parser Dead Code確認完了
  • 削除判断・実行完了
  • テスト確認完了

Phase C: Risky

  • WASM Backend動作確認完了
  • Phase 21.0戦略確認完了
  • Builtin Box移行計画確定
  • 段階的削除実施完了

📈 進捗トラッキング

現在の状態 (2025-11-06)

  • 調査完了 (3ドキュメント作成)
  • Phase A実行待ち (約3,900行削減)
  • Phase B調査待ち (約2,200行削減)
  • Phase C戦略待ち (約3,400行削減)

目標

  • Phase A: 2025-11-07までに完了
  • Phase B: 2025-11-14までに完了
  • Phase C: Phase 16開始時に実施

🔍 関連ドキュメント

プロジェクト全体

過去の削除実績


📝 備考

なぜ今削除するのか?

  1. Phase 20.46完了: 開発の区切りが良い
  2. Phase 21.0準備: 次フェーズに集中するため
  3. 保守性向上: レガシーコード除去で可読性向上
  4. AI協働効率化: 不要コードがAIを混乱させる

なぜ段階的なのか?

  1. リスク管理: 一度に削除すると問題発見が困難
  2. テスト実施: 各段階で動作確認
  3. ロールバック容易性: 問題があれば即座に戻せる

Archive vs 削除

  • Archive推奨: 将来的に再利用可能性あり
  • 完全削除: 明確に不要・復活の可能性なし

🆘 問題が発生した場合

ビルドエラー

# 変更を戻す
git restore .
git clean -fd

# 詳細レポート確認
cat docs/development/cleanup/LEGACY_CODE_INVESTIGATION_REPORT.md

テスト失敗

  1. 削除したファイルが実際に使用されている
  2. 詳細リストの「Investigate」セクションを確認
  3. 必要に応じてファイル復元

質問・相談

  • Claude Code に相談
  • ChatGPT に実装依頼
  • ドキュメントを再確認

作成者: Claude Code 最終更新: 2025-11-06 次のアクション: Phase A実行推奨 (クイック削除ガイド参照)