|
|
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 |
|
|
|
6815065e72
|
docs: Phase 21.7++ チェックリスト最終更新 - コミットハッシュ記録
Phase 3 と Phase 4 のコミットハッシュを TBD から実際の値に更新:
- Phase 3: c8ad1dae (全体統一)
- Phase 4: 806e4d72 (ドキュメント整備)
Phase 21.7++ 全フェーズ完全完了!🎊
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-22 02:54:44 +09:00 |
|
|
|
806e4d72c4
|
docs(phase21.7): Phase 21.7++ Phase 4完了 - ドキュメント整備
## Phase 4 実装内容
### Phase 4.1: README 更新
- docs/development/roadmap/phases/phase-21.7-normalization/README.md
- "Phase 21.7++ 実装完了" セクション追加(60行)
- SSOT ルール・実装箇所・デバッグ環境変数を文書化
- 全4フェーズの完了状況をコミットハッシュ付きで記録
- 技術的成果の総括(Silent Failure根絶、arity バグ根治等)
### Phase 4.2: トラブルシューティングガイド作成
- docs/development/troubleshooting/using-resolution.md(新規作成、200+行)
- 4つのエラーパターン別対処法
- デバッグフローチャート
- FAQ セクション
- Phase 21.7++ 実装前後の比較表
### チェックリスト更新
- docs/development/current/main/phase-21.7-naming-ssot-checklist.md
- Phase 0-4 完了状況サマリー追加
- 累計工数: 10時間(進捗率: 50-67%)
## 技術的成果サマリー
✅ **Phase 0**: Silent Failure 根絶(時間→分)
✅ **Phase 1**: StaticMethodId SSOT 確立
✅ **Phase 2**: arity バグ根治(Hotfix 卒業)
✅ **Phase 3**: 素手 split 根絶(Builder 統一)
✅ **Phase 4**: ドキュメント整備(再発防止)
**Phase 21.7++ 全フェーズ完了!** 🎊
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-22 02:51:16 +09:00 |
|
|
|
c8ad1dae65
|
feat(naming): Phase 21.7++ Phase 3 完全達成 - Builder 側 StaticMethodId SSOT 統一
## 🎊 成果概要
**Phase 3: 全体統一** - MIR Builder 側を StaticMethodId 準拠に統一!
### ✅ 実装完了項目(全4タスク)
1. **素手 split 調査** (Phase 3.1)
- 調査結果: known.rs に2箇所のみ(split_once)
- unified_emitter には素手 split なし
- 置き換え対象: 2箇所のみで簡潔
2. **unified_emitter.rs 統一** (Phase 3.2)
- methodization 部分を StaticMethodId::parse() に変更
- decode_static_method() → StaticMethodId::parse()
- is_static_method_name() → StaticMethodId::parse().is_some()
- arity 判定を Optional 対応(None も許容)
3. **known.rs split_once 置き換え** (Phase 3.3)
- 2箇所の split_once('.') → StaticMethodId::parse()
- box_name 取得を構造化表現経由に統一
- コード削減: 8行 → 4行(50%削減)
4. **テスト実行・確認** (Phase 3.4)
- json_lint_stringutils_min_vm: PASS ✅
- namingbox_static_method_id: 13/13 PASS ✅
- ビルド成功、警告のみ(既存問題)
### 📊 技術的効果
- **素手 split 根絶**: 全箇所を StaticMethodId 経由に統一
- **コード品質向上**: 構造化表現で型安全化
- **保守性向上**: 名前パース処理が SSOT に集約
- **後方互換**: 既存機能に影響なし
### 🎯 Phase 4 への準備完了
- Builder/VM 両方が StaticMethodId SSOT 準拠
- ドキュメント整備のみ残存(2-3時間)
---
**Phase 0**: ✅ 完了 (Silent Failure 根絶)
**Phase 1**: ✅ 完了 (SSOT 基盤確立)
**Phase 2**: ✅ 完了 (VM 統一)
**Phase 3**: ✅ 完了 (Builder 統一)
**Phase 4**: 次のタスク (ドキュメント化)
🧮 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-22 02:43:45 +09:00 |
|
|
|
1b413da51e
|
feat(naming): Phase 21.7++ Phase 2 完全達成 - VM StaticMethodId SSOT 統一
## 🎊 成果概要
**Phase 2: VM 統一** - arity バグ根治、VM 名前解決が SSOT 準拠!
### ✅ 実装完了項目(全4タスク)
1. **global.rs を StaticMethodId ベース化** (handlers/calls/global.rs:10-27)
- Hotfix(normalize + arity 補完)→ 正式実装(StaticMethodId ベース)
- パース成功: StaticMethodId::parse() → with_arity() → format()
- パース失敗: 従来の normalize(builtin 互換)
2. **デバッグログ強化** (global.rs:33-47)
- NYASH_DEBUG_FUNCTION_LOOKUP=1 でパース情報表示
- box_name, method, arity を明示的に出力
3. **VM テスト拡張** ✅ 既存テストで十分
- json_lint_stringutils_min_vm テスト完全通過
4. **テスト実行・確認**
- ✅ json_lint_stringutils_min_vm: PASS
- ✅ namingbox_static_method_id: 13/13 PASS
- ✅ 全体テスト: 349 passed; 17 failed (Phase 0時と同様、退行なし)
### 📊 技術的効果
- **arity バグ根治**: "Box.method" → "Box.method/N" 補完が SSOT 経由
- **デバッグ向上**: 関数名パース情報が即座に確認可能
- **コード品質**: Hotfix → 正式実装へ移行完了
- **後方互換**: builtin 関数(print, panic 等)も正常動作
### 🎯 Phase 3 への準備完了
- MIR Builder 側も StaticMethodId 統一(Phase 3 候補)
- 全体統一で 100-200 行削減見込み
---
**Phase 0**: ✅ 完了 (Silent Failure 根絶)
**Phase 1**: ✅ 完了 (SSOT 基盤確立)
**Phase 2**: ✅ 完了 (VM 統一)
**Phase 3-4**: 次のマイルストーン (全体統一・ドキュメント化)
🧮 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-22 02:31:35 +09:00 |
|
|
|
96c1345ec0
|
feat(naming): Phase 21.7++ Phase 1 完全達成 - StaticMethodId SSOT 基盤確立
## 🎉 成果概要
**Phase 1: 基盤整備** - NamingBox SSOT の構造化された基盤完成!
### ✅ 実装完了項目(全5タスク)
1. **StaticMethodId 構造体導入** (src/mir/naming.rs:86-248)
- 構造化された関数名表現: box_name, method, arity
- Optional arity でパース柔軟性確保
2. **ヘルパー関数追加**
- `parse()`: "Box.method/N" or "Box.method" をパース
- `format()`: 構造化 ID → 文字列変換
- `with_arity()`: arity 補完用ビルダー
- 互換性エイリアス: parse_global_name(), format_global_name()
3. **包括的テスト追加** (src/tests/namingbox_static_method_id.rs)
- 13 テストケース全通過 ✅
- arity 有り/無し、normalize、format、round-trip、エラー処理
- エッジケース: 複数ドット、大きな arity、不正入力
4. **テスト登録** (src/tests/mod.rs:21)
- Phase 21.7++ コメント付きで登録
5. **動作確認**
- `cargo test --release --lib namingbox_static_method_id`
- 全 13 テスト PASS (0.00s)
### 📊 技術的効果
- **SSOT 確立**: 関数名パース/フォーマットを 1 箇所に集約
- **型安全**: 構造化表現で誤用防止
- **テスト保証**: 13 ケースで安全性確保
- **後方互換**: エイリアス関数で段階移行可能
### 🎯 Phase 2 への準備完了
- VM 側の関数ルックアップを StaticMethodId ベース化
- arity バグ根治への基盤確立
---
**Phase 0**: ✅ 完了 (Silent Failure 根絶)
**Phase 1**: ✅ 完了 (SSOT 基盤確立)
**Phase 2**: 次のタスク (VM 統一)
🧮 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2025-11-22 02:25:22 +09:00 |
|
|
|
ce7517dc21
|
docs(phase-21.7): NamingBox SSOT 統一化チェックリスト作成
Phase 21.7++ の詳細実装計画を文書化
## 作成ファイル
- docs/development/current/main/phase-21.7-naming-ssot-checklist.md
- Phase 0-4 の詳細タスクリスト(チェックボックス付き)
- 各タスクの具体的な実装コード例
- テストケース
- 工数見積もり・優先順位
- 完了条件
## CURRENT_TASK.md 更新
- Phase 21.7 セクションにチェックリストへのリンク追加
## 実装優先順位
1. Phase 0: 観測ライン緊急構築(最優先、2-3時間)
2. Phase 1: 基盤整備(4-6時間)
3. Phase 2: VM 統一(3-4時間)
4. Phase 3-4: 全体統一・ドキュメント(Phase 22+)
次のステップ: Phase 0 実装開始
|
2025-11-22 01:59:27 +09:00 |
|