Files
hakorune/docs/development/current/main/phases/phase-127/README.md

40 lines
1.4 KiB
Markdown
Raw Normal View History

# Phase 127: unknown-read strict Fail-FastDONE
2025-12-18 06:55:29 +09:00
## 目的
- Phase 126 で `available_inputs`function params + CapturedEnvを Normalized builder に配線できた。
- 次に、`reads` に出てくるのに `writes`/`inputs` のどちらにも解決できない変数を “unknown-read” として検出し、strict では Fail-Fast にする。
## Scope
- 対象: if-only Normalizeddev-only
- 既定挙動は不変: `joinir_dev_enabled()` のときだけチェック・検証する
## 契約SSOT
- unknown-read の定義:
- `unknown_reads = reads - (writes inputs)`
- `writes`: StepTreeContract.writes
- `inputs`: reads ∩ available_inputsPhase 125/126
- strict`joinir_strict_enabled()`:
- unknown_reads が 1 つでもあれば `freeze_with_hint` で停止hint必須・1行
- non-strict/dev:
- 理由ログtag + count + 先頭数件)までで継続
## 受け入れ基準
- `cargo test --lib` が PASS
- Phase 121126 の smokes が退行しない
- 新規 fixture例: `return missing_x`)が strict で確実に Fail-Fast する
## Status
- DONE: unknown-read を strict で Fail-Fast 固定dev-only
2025-12-18 06:55:29 +09:00
## 関連
- Phase 125: EnvLayoutwrites + inputs
- `docs/development/current/main/phases/phase-125/README.md`
- Phase 126: available_inputs SSOT wiring
- `docs/development/current/main/phases/phase-126/README.md`