docs(current): mark Phase 77 done, queue Phase 78

This commit is contained in:
nyash-codex
2025-12-13 06:14:00 +09:00
parent 0aad016be2
commit 7ef9079aae

View File

@ -333,69 +333,38 @@
- 移行ロードマップ: Phase 74-77合計 8-12時間、本番影響ゼロ
- 実装コミット: `851bf4f8`
- SSOT: [phase73-scope-manager-design.md](docs/development/current/main/phase73-scope-manager-design.md), [phase73-completion-summary.md](docs/development/current/main/phase73-completion-summary.md)
34. **Phase 74-INFRASTRUCTURE完了✅ 2025-12-13**: binding_map + allocate_binding_id を MirBuilder に追加(dev-only
- `BindingId` type と `allocate_binding_id()` メソッド実装
- `MirBuilder.binding_map: BTreeMap<String, BindingId>` 追加
- Shadowing test evidence 完備4 tests PASS
- 詳細: CURRENT_TASK.md Phase 74 section
35. **Phase 75-PILOT完了✅ 2025-12-13**: BindingId 優先 lookup を ConditionEnv に pilot 実装dev-only
- `ConditionEnv.resolve_var_with_binding()` メソッド追加3-tier fallback: BindingId → name → None
- `ScopeManager.lookup_with_binding()` trait method 追加default impl
- 3つのunit test PASSpriority/fallback/legacy
- 958/958 lib tests PASS退行なし
- 詳細: [phase75-bindingid-pilot.md](docs/development/current/main/phase75-bindingid-pilot.md)
36. **Phase 76-PROMOTION完了✅ 2025-12-13**: promoted_bindings データ構造導入dev-only
- `CarrierInfo.promoted_bindings: BTreeMap<BindingId, BindingId>` 追加Original → Promoted mapping
- `resolve_promoted_with_binding()` / `record_promoted_binding()` メソッド実装
- Pattern2ScopeManager に promoted BindingId lookup を統合3-tier: direct → promoted → name fallback
- 5つのunit test PASSrecord/resolve/merge/default/overwrite
- 958/958 lib tests PASS退行なし
- 詳細: [phase76-promotion-binding-migration.md](docs/development/current/main/phase76-promotion-binding-migration.md)
37. **Phase 74-INFRASTRUCTUREコミット済み✅ `e1574af7` 2025-12-13**: BindingId infrastructure (dev-only)
34. **Phase 74-INFRASTRUCTUREコミット済み✅ `e1574af7` 2025-12-13**: BindingId infrastructure (dev-only)
- `binding_id.rs`: BindingId type + 5 unit tests
- `builder.rs`: binding_map + allocate_binding_id() + 4 integration tests
- `lexical_scope.rs`: Parallel binding_map restoration
- 9/9 new tests PASS, lib 958/958 PASS
38. **Phase 75-PILOTコミット済み✅ `c18dde23` 2025-12-13**: BindingId pilot lookup (dev-only)
35. **Phase 75-PILOTコミット済み✅ `c18dde23` 2025-12-13**: BindingId pilot lookup (dev-only)
- `scope_manager.rs`: lookup_with_binding() trait method
- `condition_env.rs`: resolve_var_with_binding() 3-tier fallback
- 3/3 pilot tests PASS, lib 958/958 PASS
39. **Phase 76-PROMOTIONコミット済み✅ `11e68203` 2025-12-13**: promoted_bindings map (dev-only)
36. **Phase 76-PROMOTIONコミット済み✅ `11e68203` 2025-12-13**: promoted_bindings map (dev-only)
- `carrier_info.rs`: promoted_bindings field + resolve/record methods
- `pattern_pipeline.rs`: Carrier resolution via promoted_bindings
- `scope_manager.rs`: promoted BindingId lookup (direct → promoted → name fallback)
- 5/5 promotion tests PASS, lib 958/958 PASS
40. **Phase 77-EXPANSION設計コミット済み✅ `4ab6c4e6` 2025-12-13**: Pattern2→3→4 面拡大 + legacy 依存削減(実装待ち
- **設計完了**: 3つの実装ガイド文書作成済み
- **実装スコープ** (2-3時間):
1. DigitPosPromoter/TrimLoopHelper で promoted_bindings を populate
2. Pattern3/4 へ BindingId lookup を拡張dev-only variant
3. Legacy name-based コード (~40行) を deprecate削除は Phase 78+
4. E2E verification tests 4件追加
- **詳細**:
- 設計: [phase77-expansion-completion.md](docs/development/current/main/phase77-expansion-completion.md)
- 実装ガイド: [PHASE_77_IMPLEMENTATION_GUIDE.md](docs/development/current/main/PHASE_77_IMPLEMENTATION_GUIDE.md)
- サマリ: [PHASE_77_EXECUTIVE_SUMMARY.md](docs/development/current/main/PHASE_77_EXECUTIVE_SUMMARY.md)
- **次のステップ**: 実装作業開始PHASE_77_IMPLEMENTATION_GUIDE.md に従う)
37. **Phase 77-EXPANSIONコミット済み✅ `72173c1a` 2025-12-13**: promoted_bindings populate + legacy deprecatedev-only
- DigitPosPromoter/TrimLoopHelper で promoted_bindings を populatebinding_map を thread して record
- legacy name-based promoted lookup を `#[deprecated]` 化(削除は Phase 78+
- 注: Pattern3/4 の “binding_id を必ず供給する” までの拡張と、E2E tests 4本は Phase 78 に先送り
38. **Follow-upコミット済み✅ `0aad016b` 2025-12-13**: legacy promoted lookup の deprecation warning を局所化
- `ScopeManager::lookup` 内の legacy 呼び出しを `#[allow(deprecated)]` で包み、全ビルドでの警告を抑制
---
## 🚀 次フェーズPhase 77 実装 + Phase 78+ BindingId Migration 完結
## 🚀 次フェーズ候補Phase 78+
### 【今すぐ着手】Phase 77-EXPANSION実装フェーズ
- **設計書**: [PHASE_77_IMPLEMENTATION_GUIDE.md](docs/development/current/main/PHASE_77_IMPLEMENTATION_GUIDE.md) に従うStep-by-step code changes
- **スコープ** (2-3時間):
1. DigitPosPromoter: `loop_body_digitpos_promoter.rs` で promoted_bindings を populate
2. TrimLoopHelper: `loop_body_carrier_promoter.rs` (Trim) で promoted_bindings を populate
3. Pattern3/4: Pattern lowerer で BindingId priority lookup を追加
4. Legacy deprecate: ~40行を Phase 78+ 削除予定に注釈
5. テスト追加: 4件の E2E verification tests
### 【後続】Phase 78-LEGACY-DELETION計画のみ
- Deprecated code 完全削除 (~40行)、BindingId 必須化1-2時間
- 詳細: [phase73-scope-manager-design.md](docs/development/current/main/phase73-scope-manager-design.md) **Migration Roadmap** セクション参照
### Phase 78dev-only: BindingId Migration を “完結” に寄せる
- Pattern3/4 で binding_id を供給する導線を追加し、name fallback を観測可能に縮退
- Phase 77 で先送りした E2E tests 4本を追加DigitPos/Trim/P3/P4
- 余裕があれば: legacy name-based promoted lookup の撤去計画を docs に明記(削除は Phase 79 でも可)
---