Files
hakorune/docs/development/cleanup/docs-reorg/PLAN.md

276 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Nyash ドキュメント再編成計画 📚
## 📊 現状の分析結果
### ファイル数統計
- **総ファイル数**: 283個.md: 211個, .txt: 72個
- **archive/**: 113ファイル40%
- **予定/**: 111ファイル39%
- **説明書/**: 41ファイル14%
- **その他**: 18ファイル7%
### 重複・散在ファイル
- **README系**: 18個各ディレクトリに散在
- **GETTING_STARTED**: 3バージョン存在
- **Phase関連**: 42ファイル主に予定/native-plan/issues/
- **AI相談記録**: 41ファイル複数箇所に散在
- **ビルドログ**: 13ファイルarchive各所
## 🔍 現状の問題点
### 1. **構造の混乱**
- トップレベルに開発中/正式文書が混在
- `説明書/` と直下に同じような内容が散在
- `archive/` に無秩序に大量のファイル
### 2. **重複と不明確な階層**
- `説明書/reference/``reference/` が併存
- GETTING_STARTED.md が複数存在通常版と2025版
- MIR関連ドキュメントが複数箇所に分散
### 3. **AI相談記録の散在**
- gemini/chatgpt相談が archive/, トップ, design/decisions/ など複数箇所
- ビルドログも同様に散在
### 4. **開発フェーズ管理の複雑さ**
- Phase関連ファイルが `予定/native-plan/issues/` に大量
- 現在のタスクと将来計画が混在
## 📋 提案する新構造
```
docs/
├── README.md # ドキュメントマップ(どこに何があるか)
├── 📖 reference/ # 正式な技術仕様(安定版)
│ ├── README.md
│ ├── language/ # 言語仕様
│ │ ├── syntax.md # 構文リファレンス
│ │ ├── types.md # 型システム
│ │ ├── boxes.md # Box仕様
│ │ └── delegation.md # デリゲーション仕様
│ ├── architecture/ # アーキテクチャ
│ │ ├── overview.md # 全体設計
│ │ ├── mir.md # MIR仕様
│ │ ├── vm.md # VM仕様
│ │ └── plugins.md # プラグインシステム
│ └── api/ # API仕様
│ ├── builtin-boxes.md # ビルトインBox一覧
│ └── stdlib.md # 標準ライブラリ
├── 📚 guides/ # 利用者向けガイド
│ ├── README.md
│ ├── getting-started.md # はじめに(統一版)
│ ├── tutorials/ # チュートリアル
│ │ ├── hello-world.md
│ │ ├── basic-boxes.md
│ │ └── p2p-apps.md
│ ├── examples/ # サンプルコード
│ └── playground.md # プレイグラウンドガイド
├── 🔧 development/ # 開発者向け(進行中)
│ ├── README.md
│ ├── current/ # 現在の作業
│ │ ├── CURRENT_TASK.md
│ │ └── VM_CHANGES.md
│ ├── roadmap/ # 開発計画
│ │ ├── phases/ # Phase別計画
│ │ │ ├── phase-8/
│ │ │ ├── phase-9/
│ │ │ └── phase-10/
│ │ └── native-plan/ # ネイティブビルド計画
│ └── proposals/ # 提案・RFC
│ └── phase_9_78e.md
├── 🗄️ archive/ # アーカイブ(古い/歴史的文書)
│ ├── README.md # アーカイブの説明
│ ├── consultations/ # AI相談記録
│ │ ├── gemini/
│ │ ├── chatgpt/
│ │ └── codex/
│ ├── decisions/ # 過去の設計決定
│ ├── build-logs/ # ビルドログ
│ └── old-versions/ # 古いドキュメント
└── 🎨 assets/ # 画像・図表など
├── diagrams/
└── screenshots/
```
## 🔄 移行計画
### Phase 1: 基本構造作成(優先度: 高)
1. 新しいディレクトリ構造を作成
2. README.md でドキュメントマップ作成
3. 現在進行中のファイルを `development/current/` へ移動
### Phase 2: リファレンス整理(優先度: 高)
1. `説明書/reference/` の内容を `reference/` に統合
2. 重複ファイルの統合GETTING_STARTED統一版作成
3. MIR/VM関連ドキュメントを適切な場所に配置
### Phase 3: アーカイブ整理(優先度: 中)
1. AI相談記録を `archive/consultations/` に集約
2. ビルドログを `archive/build-logs/` に集約
3. 古いドキュメントを `archive/old-versions/`
### Phase 4: 開発ドキュメント整理(優先度: 中)
1. Phase関連ファイルを番号順に整理
2. 現在のタスクと将来計画を明確に分離
3. native-plan を整理して見やすく
## 💡 メリット
1. **明確な分類**: 利用者向け/開発者向け/アーカイブが明確
2. **検索性向上**: 必要な情報がどこにあるか分かりやすい
3. **メンテナンス性**: 新しいドキュメントの追加場所が明確
4. **バージョン管理**: 現在の仕様と過去の記録が分離
## 🤔 検討事項
### 日本語ディレクトリ名の変換案
現在の日本語ディレクトリを英語に統一:
- `説明書/``guides/` に内容を移動
- `予定/``development/roadmap/` に内容を移動
- 日本語ファイル名(.txt/.mdはそのまま維持内容が日本語のため
**理由**:
- 国際的な開発者にもアクセスしやすい
- パス指定時のエンコーディング問題を回避
- Git操作が簡単に
### 既存リンクの対応
- 多くの場所から参照されている可能性
-**対策**: 移行期間は旧パスにシンボリックリンクまたはREADME配置
### 自動生成ドキュメント
- MIRダンプやベンチマーク結果など
-**提案**: `development/generated/` または `archive/generated/` に配置
## 📝 実装順序の提案
### Step 1: 基本構造作成スクリプト
```bash
#!/bin/bash
# create_new_structure.sh
# 新構造の作成
mkdir -p reference/{language,architecture,api}
mkdir -p guides/{tutorials,examples}
mkdir -p development/{current,roadmap/{phases/{phase-8,phase-9,phase-10},native-plan},proposals}
mkdir -p archive/{consultations/{gemini,chatgpt,codex},decisions,build-logs,old-versions}
mkdir -p assets/{diagrams,screenshots}
# 各ディレクトリにREADME.mdを配置
echo "# Reference Documentation" > reference/README.md
echo "# User Guides" > guides/README.md
echo "# Development Documentation" > development/README.md
echo "# Archive" > archive/README.md
```
### Step 2: 優先移動ファイルリスト
1. **現在の作業ファイル**
- `CURRENT_TASK.md``development/current/`
- `CURRENT_VM_CHANGES.md``development/current/`
- `phase_9_78e_summary.md``development/current/`
2. **言語仕様**
- `LANGUAGE_REFERENCE_2025.md``reference/language/`
- `TECHNICAL_ARCHITECTURE_2025.md``reference/architecture/`
- `説明書/reference/` の内容 → `reference/` へ統合
3. **利用者ガイド**
- GETTING_STARTED系を統合 → `guides/getting-started.md`
- `説明書/guides/``guides/tutorials/`
### Step 3: 自動整理スクリプト案
```bash
#!/bin/bash
# reorganize_docs.sh
# Phase関連ファイルの整理
find 予定/native-plan/issues -name "phase_*.md" | while read f; do
phase=$(echo $f | grep -o 'phase_[0-9]\+' | head -1)
mkdir -p development/roadmap/phases/$phase
mv "$f" development/roadmap/phases/$phase/
done
# AI相談記録の集約
find . -name "*gemini*.txt" -exec mv {} archive/consultations/gemini/ \;
find . -name "*chatgpt*.txt" -exec mv {} archive/consultations/chatgpt/ \;
find . -name "*consultation*.txt" -exec mv {} archive/consultations/ \;
# ビルドログの集約
find . -name "*build*.log" -o -name "*build*.txt" -exec mv {} archive/build-logs/ \;
```
## 🚀 実装提案
1. **まず `DOCUMENTATION_REORGANIZATION_PLAN.md` の承認**
2. **バックアップ作成**
```bash
tar -czf docs_backup_$(date +%Y%m%d).tar.gz docs/
```
3. **基本ディレクトリ構造の作成**(上記スクリプト)
4. **段階的移行**(優先度順)
5. **リンク切れチェック**
6. **最終確認とクリーンアップ**
## 📋 具体的な移行マッピング(主要ファイル)
### 現在のトップレベルファイル
```
docs/
├── CURRENT_TASK.md → development/current/
├── CURRENT_VM_CHANGES.md → development/current/
├── LANGUAGE_REFERENCE_2025.md → reference/language/
├── TECHNICAL_ARCHITECTURE_2025.md → reference/architecture/
├── Phase-9.75g-0-BID-FFI-*.md → development/roadmap/phases/phase-9/
├── README.md → そのまま(インデックスとして)
├── execution-backends.md → reference/architecture/
├── nyash_core_concepts.md → reference/language/
└── plugin-migration-*.md → reference/plugin-system/
```
### archiveの主要整理
```
archive/
├── chatgpt5/ → archive/consultations/chatgpt/
├── codex-analysis/ → archive/consultations/codex/
├── design/ → 一部をreference/へ、残りはarchive/decisions/
├── build_logs/ → archive/build-logs/に統合
└── *.txt (相談記録) → archive/consultations/へ分類
```
### 説明書/の再構成
```
説明書/
├── GETTING_STARTED*.md → guides/getting-started.md (統合版)
├── guides/ → guides/tutorials/
├── reference/ → reference/ (トップレベルに移動)
└── wasm/ → guides/wasm-guide/
```
## ✅ チェックリスト
移行前の確認事項:
- [ ] バックアップの作成
- [ ] 重要なドキュメントの特定
- [ ] 外部からのリンク確認README、コード内のコメント等
- [ ] CIスクリプトでのパス参照確認
移行後の確認事項:
- [ ] すべてのドキュメントが新構造に配置されているか
- [ ] 重複ファイルが統合されているか
- [ ] 各ディレクトリにREADME.mdがあるか
- [ ] リンク切れがないか
どうでしょうか?この計画で進めてよろしいですか?
もし承認いただければ、まず小規模なテスト移行から始めることもできます。
### 🎯 期待される効果
- **検索時間短縮**: 必要な情報への到達が3クリック以内に
- **メンテナンス性向上**: 新規ドキュメントの追加場所が明確
- **重複削減**: 18個のREADME → 5個程度に集約
- **整理度**: 283ファイル → 適切に分類された構造