Files
hakorune/docs/development/current/main/phases/phase-278/P0-COMPLETION.md
tomoaki 960241795d feat(mir/llvm): Phase 273 P0-P1 DomainPlan→CorePlan + LLVM arg fix
Phase 273 P0-P1: Two-layer plan architecture
- DomainPlan: Pattern-specific knowledge (ScanWithInit)
- CorePlan: Fixed vocabulary (Seq, Loop, If, Effect, Exit)
- ValueId references only (String expressions forbidden)
- Pipeline: Extractor→Normalizer→Verifier→Lowerer

New plan/ module:
- mod.rs: Type definitions, SSOT spec
- normalizer.rs: DomainPlan→CorePlan + ID allocation
- verifier.rs: V1-V6 invariant checks (fail-fast)
- lowerer.rs: CorePlan→MIR (pattern-agnostic)

LLVM fix (ChatGPT):
- function_lower.py: Fix argument reference bug
- Phase 258 index_of_string now PASS on LLVM backend

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 22:42:56 +09:00

947 B

Phase 278 P0: Deprecated PHI env vars removal — completion

Status: completed (2025-12-22)

Goal:

  • Remove legacy PHI debug environment variables (previously consolidated in Phase 277 P2).
  • Enforce a single SSOT set of PHI debug knobs (fail-fast on deprecated inputs).

SSOT (kept):

  • NYASH_LLVM_DEBUG_PHI=1
  • NYASH_LLVM_DEBUG_PHI_TRACE=1
  • NYASH_LLVM_PHI_STRICT=1

Removed inputs (deprecated variables):

  • NYASH_LLVM_PHI_DEBUG
  • NYASH_PHI_TYPE_DEBUG
  • NYASH_PHI_ORDERING_DEBUG
  • NYASH_LLVM_TRACE_PHI
  • NYASH_LLVM_VMAP_TRACE

Behavior:

  • If any removed variable is set, the harness errors with a replacement hint and exits non-zero.
  • No new environment variables introduced.

Docs:

  • docs/reference/environment-variables.md updated with:
    • removed variable list
    • migration table (old → new)
    • example error message

Tests:

  • Added a dedicated smoke verifying:
    • deprecated vars fail
    • SSOT vars still work