docs: Phase 21.7++ Phase 0-2 完了記録 - CURRENT_TASK.md 更新
This commit is contained in:
@ -31,12 +31,34 @@
|
|||||||
- static box 内の呼び出しを NamingBox/Method まわりで一貫して扱えるようにする。
|
- static box 内の呼び出しを NamingBox/Method まわりで一貫して扱えるようにする。
|
||||||
- Global("BoxName.method/arity") を Method{receiver = static singleton} に寄せる(トグル制御)。
|
- Global("BoxName.method/arity") を Method{receiver = static singleton} に寄せる(トグル制御)。
|
||||||
|
|
||||||
**🎯 Phase 21.7++ 計画**
|
**🎯 Phase 21.7++ 計画**(2025-11-22 Phase 0-2 完了!)
|
||||||
- **NamingBox SSOT 統一化チェックリスト**: [phase-21.7-naming-ssot-checklist.md](docs/development/current/main/phase-21.7-naming-ssot-checklist.md)
|
- **NamingBox SSOT 統一化チェックリスト**: [phase-21.7-naming-ssot-checklist.md](docs/development/current/main/phase-21.7-naming-ssot-checklist.md)
|
||||||
- StringUtils using 解決バグ修正(2025-11-22, commit f4ae1445)を踏まえた改善計画
|
- StringUtils using 解決バグ修正(2025-11-22, commit f4ae1445)を踏まえた改善計画
|
||||||
- Phase 0(観測ライン)→ Phase 1(基盤)→ Phase 2(VM統一)の段階実装
|
- **✅ Phase 0(観測ライン)**: Silent Failure 根絶完了(commit 63012932)
|
||||||
|
- **✅ Phase 1(基盤整備)**: StaticMethodId SSOT 基盤確立(commit 96c1345e)
|
||||||
|
- **✅ Phase 2(VM統一)**: VM 名前解決 SSOT 準拠(commit 1b413da5)
|
||||||
|
- **⏭️ Phase 3-4(全体統一)**: MIR Builder 等の統一(10-15時間)
|
||||||
|
|
||||||
**実装内容**
|
**Phase 0-2 実装内容(2025-11-22 完了)**
|
||||||
|
1. **Phase 0: 観測ライン緊急構築** (commit 63012932)
|
||||||
|
- TOML parse エラー即座表示(pipeline.rs)
|
||||||
|
- VM 関数ルックアップ「Did you mean?」提案(global.rs)
|
||||||
|
- using not found 詳細化(strip.rs)
|
||||||
|
- **効果**: Silent Failure 根絶、デバッグ時間が時間→分に短縮
|
||||||
|
|
||||||
|
2. **Phase 1: StaticMethodId SSOT 基盤** (commit 96c1345e)
|
||||||
|
- `StaticMethodId` 構造体導入(naming.rs:86-248)
|
||||||
|
- parse/format/with_arity ヘルパー実装
|
||||||
|
- 包括的テスト(13ケース全PASS)
|
||||||
|
- **効果**: 関数名パース/フォーマット一元化、型安全化
|
||||||
|
|
||||||
|
3. **Phase 2: VM 統一** (commit 1b413da5)
|
||||||
|
- global.rs を StaticMethodId ベース化
|
||||||
|
- デバッグログ強化(NYASH_DEBUG_FUNCTION_LOOKUP=1)
|
||||||
|
- テスト全通過(349 passed, 退行なし)
|
||||||
|
- **効果**: arity バグ根治、Hotfix 卒業
|
||||||
|
|
||||||
|
**Phase 0-2 以前の実装内容**
|
||||||
1. **NamingBox decode 関数追加** (Step 1: commit a13f14ce)
|
1. **NamingBox decode 関数追加** (Step 1: commit a13f14ce)
|
||||||
- `decode_static_method(func_name: &str) -> Option<(&str, &str, usize)>`
|
- `decode_static_method(func_name: &str) -> Option<(&str, &str, usize)>`
|
||||||
- `is_static_method_name(func_name: &str) -> bool`
|
- `is_static_method_name(func_name: &str) -> bool`
|
||||||
@ -63,9 +85,16 @@
|
|||||||
- `HAKO_MIR_BUILDER_METHODIZE=0/1`: methodization 制御。既定ON(未設定 or "1")、"0" のときのみ無効化。
|
- `HAKO_MIR_BUILDER_METHODIZE=0/1`: methodization 制御。既定ON(未設定 or "1")、"0" のときのみ無効化。
|
||||||
- `NYASH_METHODIZE_TRACE=1`: Global→Method 変換ログ出力
|
- `NYASH_METHODIZE_TRACE=1`: Global→Method 変換ログ出力
|
||||||
|
|
||||||
**次タスク(Phase 21.8x 優先案件)**
|
**次タスク(Phase 21.7++ Phase 3-4)**(10-15時間見込み)
|
||||||
- NamingBox/UnifiedCallEmitter/VM の 3 点で「名前と arity の SSOT」をさらに明示化する(docs + 小さなリファイン)。
|
- **Phase 3: 全体統一**
|
||||||
- Global 名の直接操作は NamingBox 内に閉じ込め、それ以外の層は `StaticMethodId` 相当の構造を介して扱うように寄せる。
|
- MIR Builder 側を StaticMethodId 統一(builder/calls/unified_emitter.rs 等)
|
||||||
|
- 素手 split 置き換え(`rg '"\."' --type rust src/mir/builder/`)
|
||||||
|
- 100-200 行削減見込み
|
||||||
|
- **Phase 4: ドキュメント化**
|
||||||
|
- SSOT 設計書更新
|
||||||
|
- 移行ガイド作成
|
||||||
|
- チームレビュー
|
||||||
|
- **長期**: NamingBox/UnifiedCallEmitter/VM の 3 点で「名前と arity の SSOT」完全統一。
|
||||||
|
|
||||||
### 1-0. Phase 25.3 — FuncScanner / Stage‑B defs 安定化(完了)
|
### 1-0. Phase 25.3 — FuncScanner / Stage‑B defs 安定化(完了)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user