docs: add loop canonicalizer SSOT + MirBuilder entrypoint
This commit is contained in:
@ -27,7 +27,7 @@
|
||||
- **Phase 133 完了**: Promoted carrier の `join_id` 解決(Trim)を SSOT に寄せて根治(smoke は compile-only)。
|
||||
- **Phase 134 完了**: Plugin loader best-effort loading(決定的順序 + failure 集約 + 継続)を導入。
|
||||
- **Phase 135 完了**: ConditionLoweringBox allocator SSOT(P0: 根治修正 + P1: contract_checks Fail-Fast 強化)。
|
||||
- **Phase 136 完了**: ValueId allocator SSOT 徹底(関数内経路から `value_gen.next()` 掃討完了)。
|
||||
- **Phase 136 完了**: MirBuilder Context SSOT 化(+ ValueId allocator 掃討)。
|
||||
- **Phase 88 完了**: continue + 可変ステップ(i=i+const 差分)を dev-only fixture で固定、StepCalculator Box 抽出。
|
||||
- **Phase 89 完了**: P0(ContinueReturn detector)+ P1(lowering 実装)完了。
|
||||
- **Phase 90 完了**: ParseStringComposite + `Null` literal + ContinueReturn(同一値の複数 return-if)を dev-only fixture で固定。
|
||||
@ -52,49 +52,23 @@
|
||||
|
||||
## 次の指示書(優先順位)
|
||||
|
||||
### P0: Phase 135 検証(Trim fixture の `--verify` を緑に固定)
|
||||
|
||||
目的:
|
||||
- `apps/tests/phase133_json_skip_whitespace_min.hako` で発生していた MIR SSA 破綻(ValueId 重複)を後戻りしない形で固定する。
|
||||
|
||||
やること:
|
||||
1. `./target/release/hakorune --verify apps/tests/phase133_json_skip_whitespace_min.hako` が PASS することを確認
|
||||
2. 必要なら integration smoke を追加(quick は増やさない)
|
||||
3. Phase 文書を更新: `docs/development/current/main/phases/phase-135/README.md`
|
||||
|
||||
受け入れ基準:
|
||||
- `--verify` が PASS
|
||||
- 既存の Phase 132/133/134 の integration smoke が退行しない
|
||||
|
||||
### P1: Docs 整備(数の増殖を止める)
|
||||
|
||||
**目的**: SSOT への集約と導線整備(Phase 86–90 の情報が散らばらない状態にする)
|
||||
|
||||
やること:
|
||||
1. Phase 86–90 の要約を 1 ファイルに集約(SSOT)
|
||||
- `docs/development/current/main/phase86-90-loop-frontends-summary.md`
|
||||
2. INDEX から要約へ導線を追加(迷子対策)
|
||||
- `docs/development/current/main/01-JoinIR-Selfhost-INDEX.md`
|
||||
3. `10-Now.md` / `CURRENT_TASK.md` の断定・重複を “要約へのリンク” に寄せる
|
||||
|
||||
**受け入れ基準**:
|
||||
- 読み始め導線が `01-JoinIR-Selfhost-INDEX.md` から辿れる
|
||||
- `10-Now.md` と `CURRENT_TASK.md` は “最新の入口” として機能する(詳細は要約へ)
|
||||
|
||||
### P1: Loop Canonicalizer の設計(設計待ち - 外部検討中)
|
||||
### P0: Loop Canonicalizer の設計(設計待ち - 外部検討中)
|
||||
|
||||
**状態**: 🔶 設計中(ChatGPT Pro と詰めている)
|
||||
|
||||
**目的**: ループ形状の組み合わせ爆発を抑えるための "前処理パス" を設計し、SSOT を定める
|
||||
|
||||
**次に触るSSO**:
|
||||
SSOT:
|
||||
- `docs/development/current/main/design/loop-canonicalizer.md`
|
||||
|
||||
**次に触るSSOT**:
|
||||
- Loop系の設計: `docs/development/current/main/joinir-architecture-overview.md`
|
||||
|
||||
注意:
|
||||
- 実装は急がず、設計(SSOT)を先に固める
|
||||
- 既定挙動は変えない(dev-only で段階投入する)
|
||||
|
||||
### P2: JoinIR / Selfhost depth-2 の前進(実装可能 - Phase 91 候補)
|
||||
### P1: JoinIR / Selfhost depth-2 の前進(実装可能 - Phase 91 候補)
|
||||
|
||||
**状態**: ✅ 実装可能
|
||||
|
||||
@ -114,7 +88,7 @@
|
||||
受け入れ基準:
|
||||
- 代表ケースが 1 コマンドで再現可能(CI は増やさない、quick を重くしない)。
|
||||
|
||||
### P3: Ownership/Relay runtime 対応の再開(Phase 92 候補)
|
||||
### P2: Ownership/Relay runtime 対応の再開(Phase 92 候補)
|
||||
|
||||
目的:
|
||||
- multihop/merge relay を “runtime でも” 受理できるところまで契約を伸ばす(Fail-Fast の段階解除)。
|
||||
@ -125,6 +99,7 @@
|
||||
### Done: Phase 86–90(Loop frontends)
|
||||
|
||||
- まとめ(SSOT): `docs/development/current/main/phase86-90-loop-frontends-summary.md`
|
||||
- MirBuilder の入口(Context 分割): `src/mir/builder/README.md` + `docs/development/current/main/01-JoinIR-Selfhost-INDEX.md`
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user