phase29af(p1): add boundary hygiene contract checks

This commit is contained in:
2025-12-29 05:27:14 +09:00
parent 19f2c6b7f6
commit 9bc9454726
7 changed files with 121 additions and 14 deletions

View File

@ -1,6 +1,12 @@
# Self Current Task — Now (main)
## Current Focus: Phase 29af (Pattern2 Boundary Hygiene)
## Current Focus: Phase 29afBoundary Hygiene SSOT 固定)
**2025-12-29: Phase 29af P1 完了**
- 目的: boundary hygiene を merge 入口(`contract_checks`)へ集約して再発検知を SSOT 化(仕様不変)
- 実装: `src/mir/builder/control_flow/joinir/merge/contract_checks/boundary_hygiene.rs`strict/dev のみ)
- 配線: `src/mir/builder/control_flow/joinir/merge/contract_checks/boundary_creation.rs`
- 検証: `cargo build --release` / `./tools/smokes/v2/run.sh --profile quick` / `./tools/smokes/v2/run.sh --profile integration --filter "phase29ab_pattern2_"` / `./tools/smokes/v2/run.sh --profile integration --filter "phase1883_"` PASS
**2025-12-29: Phase 29af P0 完了**
- 目的: Pattern2 の boundary 情報の歪みを SSOT 化し、exit/header/latch の責務境界を固定(仕様不変)

View File

@ -8,7 +8,7 @@ Related:
## 直近JoinIR/selfhost
- **Phase 29af P0in progress: Pattern2 Boundary HygieneSSOT固定**
- **Phase 29af P1✅ COMPLETE: Pattern2 Boundary Hygienecontract_checks 集約**
- 入口: `docs/development/current/main/phases/phase-29af/README.md`
- **Phase 29ae P1✅ COMPLETE: JoinIR Regression Pack (SSOT固定)**

View File

@ -2,6 +2,11 @@
Goal: Pattern2 の boundary 情報の歪みを SSOT で整理し、将来の回帰を防ぐ(仕様不変)。
## Status
- P0: ✅ COMPLETEcommit: `19f2c6b7f`
- P1: ✅ COMPLETEmerge `contract_checks` への集約)
## Boundary Contract (SSOT)
- Header PHI 対象:
@ -20,8 +25,14 @@ Goal: Pattern2 の boundary 情報の歪みを SSOT で整理し、将来の回
- boundary 構築: `src/mir/builder/control_flow/joinir/patterns/pattern2_steps/emit_joinir_step_box.rs`
- header PHI 事前構築: `src/mir/builder/control_flow/joinir/merge/header_phi_prebuild.rs`
- exit_bindings 収集: `src/mir/builder/control_flow/joinir/merge/exit_line/meta_collector.rs`
- latch 記録: `src/mir/builder/control_flow/joinir/merge/rewriter/{tail_call_policy,latch_incoming_recorder}.rs`
## P1: Contract Checks (merge 入口)
P0 で確定した boundary hygiene を、merge 入口の `contract_checks` に集約する(仕様不変)。
- 実装: `src/mir/builder/control_flow/joinir/merge/contract_checks/boundary_hygiene.rs`
- 配線: `src/mir/builder/control_flow/joinir/merge/contract_checks/boundary_creation.rs`
- 実行条件: `joinir_strict` または `joinir_dev` のみ Fail-Fast
## Verification