docs(phase29ao): mark p19 done; add p20 instruction
This commit is contained in:
@ -2,12 +2,17 @@
|
||||
|
||||
## Current Focus: Phase 29ao(CorePlan composition)
|
||||
|
||||
Next: Phase 29ao P19(regression pack: Pattern1 strict shadow)
|
||||
指示書: `docs/development/current/main/phases/phase-29ao/P19-REGRESSION-PACK-ADD-PATTERN1-STRICT-SHADOW-INSTRUCTIONS.md`
|
||||
Next: Phase 29ao P20(CoreLoop ExitMap composition docs-first)
|
||||
指示書: `docs/development/current/main/phases/phase-29ao/P20-CORELOOP-EXITMAP-COMPOSITION-SSOT-INSTRUCTIONS.md`
|
||||
運用ルール: integration filter で phase143_* は回さない(JoinIR 回帰は phase29ae pack のみ)
|
||||
運用ルール: phase286_pattern9_* は legacy pack (SKIP) を使う
|
||||
移行道筋 SSOT: `docs/development/current/main/design/coreplan-migration-roadmap-ssot.md`
|
||||
|
||||
**2025-12-30: Phase 29ao P19 完了** ✅
|
||||
- 目的: regression gate に Pattern1 strict/dev shadow adopt を含め、回帰で必ず踏む(SSOT化)
|
||||
- 変更: `tools/smokes/v2/profiles/integration/joinir/phase29ao_pattern1_strict_shadow_vm.sh` / `tools/smokes/v2/profiles/integration/joinir/phase29ae_regression_pack_vm.sh` / `docs/development/current/main/phases/phase-29ae/README.md`
|
||||
- 検証: `./tools/smokes/v2/run.sh --profile quick` / `./tools/smokes/v2/profiles/integration/joinir/phase29ae_regression_pack_vm.sh`
|
||||
|
||||
**2025-12-30: Phase 29ao P0 完了** ✅
|
||||
- 目的: `CanonicalLoopFacts → CorePlan` 合成の入口(未接続)を 1 箇所に作る
|
||||
- 変更: `src/mir/builder/control_flow/plan/composer/mod.rs` / `src/mir/builder/control_flow/plan/mod.rs` / `docs/development/current/main/phases/phase-29ao/README.md`
|
||||
|
||||
@ -15,8 +15,8 @@ Related:
|
||||
|
||||
- **Phase 29ao(active): CorePlan composition from Skeleton/Feature**
|
||||
- 入口: `docs/development/current/main/phases/phase-29ao/README.md`
|
||||
- 状況: P0–P18 ✅ 完了 / Next: P19(regression pack: Pattern1 strict shadow)
|
||||
- Next 指示書: `docs/development/current/main/phases/phase-29ao/P19-REGRESSION-PACK-ADD-PATTERN1-STRICT-SHADOW-INSTRUCTIONS.md`
|
||||
- 状況: P0–P19 ✅ 完了 / Next: P20(CoreLoop ExitMap composition docs-first)
|
||||
- Next 指示書: `docs/development/current/main/phases/phase-29ao/P20-CORELOOP-EXITMAP-COMPOSITION-SSOT-INSTRUCTIONS.md`
|
||||
|
||||
- **Phase 29af(✅ COMPLETE): Boundary hygiene / regression entrypoint / carrier layout SSOT**
|
||||
- 入口: `docs/development/current/main/phases/phase-29af/README.md`
|
||||
|
||||
@ -0,0 +1,70 @@
|
||||
---
|
||||
Status: Ready
|
||||
Scope: docs-first(ExitMap 合成の SSOT 固定。仕様不変)
|
||||
Related:
|
||||
- docs/development/current/main/design/coreplan-skeleton-feature-model.md
|
||||
- docs/development/current/main/design/exitkind-cleanup-effect-contract-ssot.md
|
||||
- docs/development/current/main/design/post-phi-final-form-ssot.md
|
||||
- docs/development/current/main/design/edgecfg-fragments.md
|
||||
- docs/development/current/main/design/coreplan-migration-roadmap-ssot.md
|
||||
- docs/development/current/main/phases/phase-29ao/README.md
|
||||
---
|
||||
|
||||
# Phase 29ao P20: CoreLoop ExitMap composition(docs-first SSOT)
|
||||
|
||||
Date: 2025-12-30
|
||||
Status: Ready for execution
|
||||
Scope: docs-only。CoreLoop(Loop skeleton)に対する ExitMap/Cleanup/ValueJoin の「合成規約」を SSOT として 1 枚に固定する。
|
||||
|
||||
## 目的
|
||||
|
||||
- “Pattern2/4/5 を別patternとして増やす” ではなく、`LoopSkeleton + ExitMap + Cleanup + ValueJoin` の合成で表現できることを設計として固定する。
|
||||
- Normalizer/Composer が「どこまで合成し、どこから Freeze すべきか」を揺れない形で明文化する。
|
||||
- 既存の `exitkind-cleanup-effect-contract-ssot.md` / `post-phi-final-form-ssot.md` と衝突しない、より具体の “CoreLoop 版の規約” を定義する。
|
||||
|
||||
## 非目的
|
||||
|
||||
- Rust 実装変更(P20は docs-only)
|
||||
- 新しい Env 変数やログの追加
|
||||
- unwind/coroutine 等の新機能追加(設計として “unsupported/unstructured” に分類するだけは可)
|
||||
|
||||
## 追加する SSOT(新規)
|
||||
|
||||
- 新規ファイル: `docs/development/current/main/design/coreloop-exitmap-composition-ssot.md`
|
||||
|
||||
含める内容(最低限):
|
||||
|
||||
1. **語彙(Vocabulary)**
|
||||
- `ExitKind`(Return/Break/Continue + 将来Unwind)
|
||||
- `Frag.exits`(presence と “実際の出口エッジ” の違い)
|
||||
- `EdgeArgs`(layout と values の意味)
|
||||
- `Frag.block_params` と “join 受け口” の扱い(post-phi の最終表現)
|
||||
|
||||
2. **合成規約(Composition Rules)**
|
||||
- Loop skeleton からどの出口を “exit edges” として表すか(Return/Break/Continue)
|
||||
- Cleanup の扱い(どの ExitKind に対して、どの位置で走るか)
|
||||
- ValueJoin(join 値が必要なときの表現)と block_params の使用条件
|
||||
- “presence だけある” 状態(facts から投影された kinds_present)と、実際の join を作る責務の境界
|
||||
|
||||
3. **Fail-Fast 規約(Freeze/Verify)**
|
||||
- `Ok(None)` に落としてよいケース / `Freeze(contract|unsupported|unstructured)` にすべきケース
|
||||
- strict/dev の検証責務(どこで verify するか、どのタグで観測するか)
|
||||
|
||||
4. **既存SSOTとのリンク**
|
||||
- `exitkind-cleanup-effect-contract-ssot.md`(“越えてはいけない境界”)
|
||||
- `post-phi-final-form-ssot.md`(join 入力の最終表現)
|
||||
- `edgecfg-fragments.md`(Frag の SSOT)
|
||||
|
||||
## 参照導線(docs)
|
||||
|
||||
- `docs/development/current/main/design/planfrag-ssot-registry.md` の References に上記 SSOT を追加する(入口導線の強化)。
|
||||
|
||||
## 検証
|
||||
|
||||
- docs-only のため smoke は不要(ただし link/typo の確認は行う)
|
||||
|
||||
## コミット
|
||||
|
||||
- `git add -A`
|
||||
- `git commit -m "docs(phase29ao): add coreloop exitmap composition ssot (p20)"`
|
||||
|
||||
@ -113,7 +113,16 @@ Gate(SSOT):
|
||||
- 指示書: `docs/development/current/main/phases/phase-29ao/P18-SINGLE_PLANNER-OUTCOME-PLUMBING-INSTRUCTIONS.md`
|
||||
- ねらい: planner outcome を single_planner から受け取り、router の二重実行を撤去
|
||||
|
||||
## P19: 回帰ゲートに Pattern1 strict/dev shadow adopt を含める ✅
|
||||
|
||||
- 指示書: `docs/development/current/main/phases/phase-29ao/P19-REGRESSION-PACK-ADD-PATTERN1-STRICT-SHADOW-INSTRUCTIONS.md`
|
||||
- 変更:
|
||||
- `tools/smokes/v2/profiles/integration/joinir/phase29ao_pattern1_strict_shadow_vm.sh` を追加
|
||||
- `tools/smokes/v2/profiles/integration/joinir/phase29ae_regression_pack_vm.sh` に組み込み
|
||||
- `docs/development/current/main/phases/phase-29ae/README.md` の回帰セットに追記
|
||||
- ねらい: P17/P18 の strict/dev shadow adopt が回帰ゲートで必ず踏まれる状態を SSOT 化
|
||||
|
||||
## Next(planned)
|
||||
|
||||
- P19: 回帰ゲートに Pattern1 strict/dev shadow adopt を含める
|
||||
- 指示書: `docs/development/current/main/phases/phase-29ao/P19-REGRESSION-PACK-ADD-PATTERN1-STRICT-SHADOW-INSTRUCTIONS.md`
|
||||
- P20: CoreLoop ExitMap composition(docs-first)
|
||||
- 指示書: `docs/development/current/main/phases/phase-29ao/P20-CORELOOP-EXITMAP-COMPOSITION-SSOT-INSTRUCTIONS.md`
|
||||
|
||||
Reference in New Issue
Block a user